تسلط به سیستمهای تعبیه شده با C و ARM Cortex (STM32)
✅ سرفصل و جزئیات آموزش
آنچه یاد خواهید گرفت:
- اصول اولیه سیستمهای تعبیه شده و برنامهنویسی C
- کنترل جریان، حلقهها، توابع، آرایهها، اشارهگرها و رشتهها در C
- راهاندازی STM32CubeIDE و توسعه پروژههای تعبیه شده
- تمرین عملی با میکروکنترلرهای ARM Cortex STM32
- عملیاتهای بیتی، نگاشت حافظه و کدنویسی در سطح رجیستر
- مفاهیم پیشرفته - استفاده از volatile و const qualifiers، ساختارها، union و bit-fields
پیشنیازهای دوره
- درک اولیه از منطق برنامهنویسی
- علاقهمندی به سختافزار و توسعه سیستمهای تعبیه شده
- یک کامپیوتر ویندوزی با دسترسی به اینترنت
- اختیاری - بورد توسعه STM32 برای تمرین عملی
توضیحات دوره
مقدمه - شما وارد دنیای قدرتمند سیستمهای تعبیه شده میشوید، جایی که نرمافزار با سختافزار تلفیق میشود. این دوره جامع شما را با اصول اولیه سیستمهای تعبیه شده با زبان برنامهنویسی C آشنا میکند و به تدریج به سمت برنامهنویسی پیشرفته با میکروکنترلرهای STM32 مبتنی بر ARM Cortex حرکت میکند. چه مبتدی باشید و چه مهندس تازهکار، این دوره پلی بین تئوری و توسعه عملی اپلیکیشنهای تعبیه شده است.
بخش 1 - برنامهنویسی C برای سیستمهای تعبیه شده
این بخش با معرفی عمیق به سیستمهای تعبیه شده آغاز میشود که شامل معماری، کامپوننتها و تفاوتهای بین MCUs و MPUs میشود. سپس پایهای قوی در زبان برنامهنویسی C از مفاهیمی مانند متغیرها و عملگرها تا حلقهها، کنترل جریان، توابع، آرایهها، اشارهگرها و رشتهها ساخته میشود. در انتها، چرخه کامل یک پروژه تعبیه شده از کدنویسی تا استقرار توضیح داده میشود، تا دانشجویان بتوانند کارکرد C در محیطهای تعبیه شده را درک کنند.
بخش 2 - اصول اولیه برنامهنویسی Embedded C
شما یاد میگیرید چگونه وارد دنیای توسعه سیستمهای تعبیه شده شوید. این بخش بر نصب و استفاده از STM32CubeIDE، ایجاد پروژههای میزبان و هدف، راهاندازی کامپایلر و شیوههای کلیدی اشکالزدایی تمرکز دارد. شما همچنین مهارتهای خود را در سینتکس C، تایپهای داده، توابع، اسکوپ و آدرسدهی حافظه از طریق دموهای خاص سیستمهای تعبیه شده و تمرینهای ابزار محور تقویت میکنید.
بخش 3 - اصول اولیه ARM Cortex (STM32) - ساخت سیستمهای تعبیه شده
شما وارد دامنه ARM Cortex (STM32) میشوید و از دانش C برای کنترل ورودی و خروجی، کنترل رجیسترهای حافظه-نگاشت و پیادهسازی تصمیمگیری با سختافزار واقعی استفاده کنید. شما مفاهیم اصلی برنامهنویسی تعبیه شده مانند عملیاتهای بیتی، کنترل LED، تاخیرهای نرمافزاری، دسترسی به رجیستر لوازم جانبی و اشکالزدایی در سطح دستورالعمل را میآموزید و سیستمهای تعبیه شده عملی را توسعه میدهید.
بخش 4 - بررسی عمیق ARM Cortex (STM32) — تسلط به سیستمهای تعبیه شده
شما مهارتهای سیستمهای تعبیه شده خود را به سطح کارشناسی میرسانید. این بخش پیشرفته سطوح بالاتر با بهینهسازیهای کامپایلر، کاربرد const و volatile، قرارگیری حافظه و مدیریت گسترده ساختارها و union را معرفی میکند. در نهایت، کاربردهای پیشرفته مانند دستکاری رجیسترهای GPIO با استفاده از ساختارها و طراحی سیستمهای عملی با bit-fields، آرایهها و رشتهها ارائه میشود.
جمعبندی
در پایان دوره، شما به طور مطمئن اپلیکیشنهای تعبیه شده را مینویسید، رجیسترهای سختافزار را دستکاری میکنید و پروژههای بلادرنگ را با استفاده از C و STM32 میسازید. این دوره شما را از مفاهیم اولیه C به سمت پروژههای پیچیده تعبیه شده سوق میدهد که شما را برای چالشهای صنعتی آماده میکند.
این دوره برای چه کسانی مناسب است؟
- دانشجویان مهندسی و علاقهمندان به الکترونیک
- علاقهمندان به سیستمهای تعبیه شده و برنامهنویسان
- حرفهایهایی که به توسعه سیستمهای تعبیه شده روی میآورند.
- کسانی که به دنبال آموزش عملی و اصول فنی در سیستمهای تعبیه شده هستند.
تسلط به سیستمهای تعبیه شده با C و ARM Cortex (STM32)
-
آشنایی با دوره 06:23
-
سیستمهای تعبیه شده - بررسی 08:01
-
کامپوننت و ساختار 06:27
-
معماری سیستم تعبیه شده 01:45
-
MCU در مقابل MPU 04:39
-
دستگاهها در سیستم تعبیه شده 01:56
-
راهاندازی محیط برای سیستم تعبیه شده 03:04
-
آشنایی با C 02:46
-
C در مقابل Embedded C 02:57
-
برنامهنویسی C چگونه کار میکند؟ 03:38
-
برنامه اولیه در C 02:11
-
متغیرها در C 08:05
-
مقدمه عملگرها 02:15
-
عملگر حسابی و عملگر تخصیص - بخش 1 06:01
-
عملگر حسابی و عملگر تخصیص - بخش 2 05:58
-
عملگرهای رابطهای و منطقی - بخش 1 07:08
-
عملگرهای رابطهای و منطقی - بخش 2 07:06
-
عملگرهای رابطهای و منطقی - بخش 3 07:26
-
عملگر بیتی و عملگر Size of - بخش 1 07:19
-
عملگر بیتی و عملگر Size of - بخش 2 07:12
-
عملگر بیتی و عملگر Size of - بخش 3 04:15
-
عملگرهای شرطی 03:41
-
عملگرهای ویرگول (کاما) 05:24
-
تایپها و کلاسهای ذخیرهسازی در C 02:37
-
آشنایی با کنترلهای جریان و تایپهای آن 03:27
-
شرطی if و تایپ آن 07:27
-
شرطیهای if تودرتو 03:50
-
چندین دستور if-else 05:42
-
دستور switch - بخش 1 01:14
-
دستور switch - بخش 2 06:07
-
حلقهها و تایپهای آنها 04:18
-
حلقه for 07:01
-
حلقه while 05:36
-
حلقه do-while 03:13
-
حلقههای تودرتو 06:36
-
دستور break و continue 06:44
-
دستور Go to و Return 06:06
-
تابع در C چیست و انواع آن؟ 03:20
-
نمایش برنامهنویسی تابع - بخش 1 04:13
-
نمایش برنامهنویسی تابع - بخش 2 05:52
-
آرایه چیست؟ 02:39
-
آرایه تک بعدی و تکرار آن - بخش 1 02:03
-
آرایه تک بعدی و تکرار آن - بخش 2 07:00
-
آرایه دوبعدی و تکرار آن 05:39
-
آرایه سهبعدی و تکرار آن - بخش 1 05:55
-
آرایه سهبعدی و تکرار آن - بخش 2 04:12
-
آرایهها و توابع 04:59
-
اشارهگر چیست؟ 03:02
-
دمو - اشارهگرها 04:23
-
اشارهگر به اشارهگر 03:54
-
رشته چیست؟ 03:01
-
نمایش برنامهنویسی رشته 05:07
-
اشارهگر و رشتهها 02:37
-
آرایهها و رشتهها 03:40
-
ایجاد پروژه ساده 03:38
-
نمایش برنامهنویسی و بیلد 08:05
-
استقرار برنامه - بخش 1 06:26
-
استقرار برنامه - بخش 2 05:55
-
مقدمه دوره 03:08
-
دانلود IDE 03:36
-
ویژگیهای کلیدی STM32CubeIDE 02:15
-
نصب STM32CubeIDE 00:48
-
آشنایی با هدف تعبیه شده این دوره 03:20
-
نصب کامپایلر GCC برای میزبان (ویندوز) 05:25
-
ایمپورت پروژههای دوره به فضای کاری - بخش 1 07:00
-
ایمپورت پروژههای دوره به فضای کاری - بخش 2 07:17
-
ایجاد پروژه برای میزبان 05:58
-
ایجاد پروژه برای هدف 03:55
-
فیکس کردن هشدار FPU 02:25
-
ابزار وب Onlinegdb 01:16
-
printf و Hello World 10:03
-
راهحل تمرین printf - بخش 1 03:40
-
توالی گریز در C 05:07
-
راهحل تمرین printf - بخش 2 02:48
-
راهحل تمرین printf - بخش 3 03:13
-
کامنتگذاری در C 02:26
-
تایپهای داده در C 06:49
-
تایپهای داده عدد صحیح و محدوده مقادیر در C 07:50
-
تایپ داده کاراکتر و تعریف متغیر 07:39
-
تمرین تعریف متغیر 09:21
-
محاسبه محدوده برای تایپ داده کاراکتر 08:20
-
عملگر sizeof 08:20
-
قوانین نامگذاری متغیرها و تعریف در مقابل اعلان 07:07
-
اعلان در مقابل تعریف - تصویرسازی 04:16
-
محدوده متغیرها و تصویرسازی 06:37
-
آدرس متغیرها 05:52
-
Specifiers کلاس ذخیرهسازی در C 07:19
-
یوزکیسهای استاتیک با متغیرها 08:09
-
یوزکیسهای استاتیک با توابع 05:22
-
Specifier کلاس ذخیرهسازی خارجی 01:44
-
آشنایی با توابع در C - بخش 1 04:10
-
آشنایی با توابع در C - بخش 2 06:36
-
نمونههای اولیه تابع 05:15
-
بازگردانی داده از یک تابع 03:58
-
تمرین تابع - بخش 1 06:25
-
تمرین تابع - بخش 2 07:09
-
کدهای Ascii 08:48
-
Typecasting در C - بخش 1 04:40
-
Typecasting در C - بخش 2 05:50
-
تعبیه شده - Hello World - بخش 1 06:19
-
تعبیه شده - Hello World - بخش 2 08:49
-
تست printf در ARM - بخش 1 04:02
-
تست printf در ARM - بخش 2 03:50
-
مشکلات Ide 05:11
-
تنظیمات کامپایلر در STM32CubeIDE 04:42
-
فرآیند بیلد پروژه تعبیه شده - بخش 1 06:16
-
فرآیند بیلد پروژه تعبیه شده - بخش 2 04:45
-
اجرای sizeof روی هدف تعبیه شده 02:23
-
تست sizeof 06:20
-
میکروکنترلر چیست؟ - بخش 1 02:07
-
میکروکنترلر چیست؟ - بخش 2 06:39
-
حافظه کد میکروکنترلر 04:17
-
کد و داده برنامه با استفاده از مرورگر حافظه - بخش 1 05:05
-
کد و داده برنامه با استفاده از مرورگر حافظه - بخش 2 06:19
-
تحلیل فایل ELF با ابزارهای GNU - بخش 1 08:22
-
تحلیل فایل ELF با ابزارهای GNU - بخش 2 05:36
-
Disassembly - بخش 1 06:09
-
Disassembly - بخش 2 06:49
-
Ide Option برای اشکالزدایی سطح دستورالعمل 02:11
-
بخش 1 و بخش 2 None
-
معقدمه دوره 05:20
-
دستکاری اعداد اعشاری در C 02:27
-
دقت Single در مقابل دوبل 05:20
-
کار با متغیرهای شناور و دوبل - بخش 1 06:13
-
کار با متغیرهای شناور و دوبل - بخش 2 04:16
-
مقدمه scanf 04:53
-
پیادهسازی تمرین scanf - بخش 1 08:33
-
پیادهسازی تمرین scanf - بخش 2 07:26
-
تمرین scanf - بخش 1 02:04
-
تمرین scanf - بخش 2 04:14
-
اشارهگرها در C 02:40
-
متغیرهای اشارهگر و مقداردهی اولیه 04:44
-
متغیرهای اشارهگر و تایپهای داده اشارهگر 04:44
-
عملیات خواندن و نوشتن روی اشارهگرها 05:31
-
تمرین اشارهگر 1 و تمرین 2 - درک 02:06
-
پیادهسازی اشارهگر - تمرین 1 07:39
-
پیادهسازی اشارهگر - تمرین 2 - بخش 1 04:07
-
پیادهسازی اشارهگر - تمرین 2 - بخش 2 05:01
-
فایل هدر stdint چیست؟ 06:36
-
درک فایل هدر stdint 06:18
-
عملگرها در C 10:56
-
عملگر یکانی در C 07:20
-
عملگرهای یکانی با اشارهگرها 03:06
-
عملگرهای رابطهای در C 04:40
-
عملگرهای منطقی در C 05:56
-
دستور if 07:54
-
تمرین دستور if 05:22
-
if و else 05:06
-
پیادهسازی تمرین if و else 13:46
-
دستورات If -Else-If Ladder 04:01
-
راهحل تمرین If -Else-If Ladder 07:55
-
عملگر شرطی 05:41
-
دستور switch-case در C 05:29
-
تمرین switch-case 02:51
-
راهحل تمرین switch case - بخش 1 06:05
-
راهحل تمرین switch case - بخش 2 07:26
-
عملگرهای بیتی در C 08:15
-
عملگر بیتی و عملگر بیتی OR 03:31
-
کاربرد عملگرهای بیتی برای تست بیتها 05:53
-
یافتن عدد زوج یا فرد با استفاده از تست بیتها 03:00
-
کاربرد عملگرهای بیتی برای پاکسازی بیتها 05:42
-
کاربرد عملگرهای بیتی - XOR 03:05
-
کاربرد عملگرهای بیتی - تنظیم بیتها 05:07
-
کدنویسی برای روشن کردن Led 08:27
-
کنترل پین Io با استفاده از نرمافزار 01:55
-
پردازش یا نواحی حافظه قابل آدرسدهی 05:50
-
نقشه حافظه STM32 06:11
-
رجیسترهای جانبی حافظه نگاشت شده و دسترسی IO 06:41
-
رویه روشن کردن Led 04:59
-
فعالسازی Peripheral Clock 08:41
-
محاسبه آدرسهای رجیستر لوازم جانبی 06:53
-
Led در تمرین کدنویسی - بخش 1 06:17
-
Led در تمرین کدنویسی - بخش 2 05:31
-
Led در تمرین کدنویسی - بخش 3 06:11
-
Led در تمرین کدنویسی - بخش 4 07:22
-
عملگر بیتی Right Shift 03:31
-
عملگر بیتی Left Shift 02:14
-
کاربرد عملگرهای بیتی Shift 03:57
-
اصلاح Led در تمرین با استفاده از عملگرهای بیتی Shift 04:50
-
استخراج بیت 05:34
-
حلقهزنی در C 04:38
-
تمرین حلقه while - بخش 1 06:02
-
تمرین حلقه while - بخش 2 06:25
-
حلقه do-while 05:07
-
تمرین حلقه for - بخش 1 05:15
-
تمرین حلقه for - بخش 2 03:36
-
تمرین حلقه for - بخش 3 04:58
-
اصلاح Led با تاخیر نرمافزاری 02:16
-
تاگل Led با استفاده از تاخیر نرمافزاری - بخش 1 06:18
-
تاگل Led با استفاده از تاخیر نرمافزاری - بخش 2 03:58
-
نتیجهگیری دوره 01:31
-
Const Type Qualifier - بخش 1 06:02
-
Const Type Qualifier - بخش 2 04:58
-
جایگذاری متغیرهای const در حافظه 03:46
-
بهینهسازیهای کامپایلر و پرچمها 04:10
-
سطوح بهینهسازی مختلف کامپایلر 05:41
-
volatile و تأثیر بهینهسازیها 08:13
-
چه زمانی از Volatile Qualifier استفاده کنیم؟ 03:13
-
آشنایی با ساختارها 04:26
-
دسترسی به عناصر عضو ساختار - بخش 1 06:20
-
دسترسی به عناصر عضو ساختار - بخش 2 06:34
-
اندازه ساختار 03:55
-
Typedef و ساختار 06:30
-
ساختارها و اشارهگرها - بخش 1 05:31
-
ساختارها و اشارهگرها - بخش 2 06:35
-
ساختارها و اشارهگرها - بخش 3 04:58
-
Unions - بخش 1 05:28
-
Unions - بخش 2 04:08
-
کاربرد Unions - بخش 1 05:17
-
کاربرد Unions - بخش 2 05:20
-
کاربرد Unions - بخش 3 06:06
-
تمرین Bit-Field - بخش 1 04:15
-
تمرین Bit-Field - بخش 2 05:48
-
ساختار Bit-Field برای RCC AHB1ENR 03:28
-
ساختار Bit-Field برای GPIOx ODR 03:03
-
اصلاح تمرین تاگل LED با ساختارها - بخش 1 06:23
-
اصلاح تمرین تاگل LED با ساختارها - بخش 2 06:18
-
آرایهها در C 07:28
-
عملیات خواندن و نوشتن در آرایه 08:24
-
ارسال آرایه به تابع 05:08
-
رشتهها در C 06:06
-
لیترال رشته 06:06
-
بخش 3 و بخش 4 None
مشخصات آموزش
تسلط به سیستمهای تعبیه شده با C و ARM Cortex (STM32)
- تاریخ به روز رسانی: 1404/06/21
- سطح دوره:همه سطوح
- تعداد درس:223
- مدت زمان :19:21:47
- حجم :10.13GB
- زبان:دوبله زبان فارسی
- دوره آموزشی:AI Academy