آموزش توسعه نرم افزار جاسازی شده با استفاده از C++

Embedded Software Development using C++

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: طراحی شی گرا و برنامه نویسی برنامه HAL در STM32، ARM Cortex-M دانشجویان قادر خواهند بود کتابخانه هایی را با استفاده از C++ برای ارتباط STM32 با دستگاه های خارجی طراحی و توسعه دهند. دانش‌آموزان می‌توانند با استفاده از درایورهای STM32Cube HAL و C++، نرم‌افزارهای تعبیه‌شده را توسعه دهند. دانش‌آموزان تیک تاک می‌توانند با استفاده از میکروکنترلر STM32 ماشین‌های روباتی دستی و خودران طراحی و توسعه دهند. برای توسعه برنامه های کاربردی C++ جاسازی شده دانش آموزان قادر خواهند بود از STM32CubeIDE برای توسعه برنامه های کاربردی C++ جاسازی شده استفاده کنند. یک تخته نان بدون لحیم سیم های اتصال دهنده موتور L298N 4 شاسی ماشین چرخ دار HC05 ماژول بلوتوث SG90 موتور سروو 4 چرخ 4 TT موتور دنده DC 3 سنسور اولتراسونیک HC-SR04 باتری 12 ولت دانش برنامه نویسی اولیه (جاسازی شده C برنامه نویسی H3ALM مفید خواهد بود) درایورهای GPIO)

دوره توسعه نرم افزار جاسازی شده با استفاده از C++ کاربرد برنامه نویسی شی گرا (OOP) را در سیستم های جاسازی شده نشان می دهد. C++ زبان منتخب است زیرا دارای امکاناتی است که پیاده سازی OOP را آسان می کند و همچنین امکان برنامه نویسی در سطح سخت افزار را فراهم می کند. همانطور که C++ از ویژگی های غنی و خارق العاده ای برخوردار است، استفاده نادرست از آن آسان است و این ممکن است باعث نفخ کد شود. در این دوره، ویژگی های خاصی از زبان انتخاب شده است تا اطمینان حاصل شود که برنامه های توسعه یافته از موارد زیر پیروی می کنند:

  • سادگی

  • خوانایی

  • قابلیت نگهداری

مفاهیم اصلی OOP مانند انتزاع، کپسولاسیون و چندشکلی پوشش داده شده است. هدف این دوره ارائه این سبک از برنامه نویسی تا حد امکان ساده و دوستانه است، بنابراین وراثت پوشش داده نمی شود. به منظور ایجاد کتابخانه و توسعه برنامه نسبتاً سریعتر، از APIهای STM32Cube HAL استفاده می شود و برنامه نویسی در سطح ثبت مستقیم به حداقل کاهش می یابد. از برد STM32F401RE Nucleo در طول این دوره و Keil uVision5 MDK و STM32CubeIDE برای توسعه نرم افزار و اشکال زدایی استفاده می شود. از آنجایی که این دوره عمدتاً از HAL استفاده می‌کند، پس هرکسی که این دوره را می‌گذراند، می‌تواند از یک میکروکنترلر STM32 متفاوت استفاده کند و به دلیل قابل حمل بودن HAL، همان کد را اجرا کند (با کمی تغییرات).

بیشتر نرم افزارهای تعبیه شده به زبان C و با رویکرد رویه ای برای برنامه نویسی نوشته شده اند. C++ جایگزینی برای C و OOP نیز جایگزینی برای برنامه نویسی رویه ای نیست. اما C++ برخی از ویژگی‌هایی را ارائه می‌کند که نرم‌افزار تعبیه‌شده ما می‌تواند از آن‌ها بهره‌مند شود و در صورت استفاده عاقلانه، برای توسعه برنامه مفید خواهد بود. در پایان، این یک اولویت و مورد استفاده است و این دوره تضمین می کند که کاربرد زبان و پارادایم برنامه نویسی (OOP) منعکس و قدردانی می شود.

به عنوان دانشجوی این دوره، با موارد زیر مواجه خواهید شد:

  • برنامه نویسی شی گرا در یک سیستم تعبیه شده و موارد زیر اعمال خواهد شد:

    • کلاس، کپسولاسیون، انتزاع، چند شکلی

    • کلید واژه های خصوصی و عمومی

    • نشانگرها و مراجع

    • ایمنی را تایپ کنید

  • توسعه کتابخانه‌ها با استفاده از درایورهای C++، STM32Cube HAL و اطلاعاتی از اسناد برای رابط میکروکنترلر STM32 با اجزای خارجی مانند:

    • LCD 20x4

    • صفحه کلید 4x4

    • SG90 Servo

    • ماژول بلوتوث HC05

    • حسگر اولتراسونیک HC-SR04

    • درایور موتور L298N

  • تولید کد با استفاده از STM32CubeMx و همچنین اصلاح و سفارشی‌سازی کد تولید شده CubeMx متناسب با برنامه در حال توسعه.

  • برنامه نویسی HAL GPIO، UART و تایمر در STM32

  • استفاده از تایمر برای تولید سیگنال PWM و همچنین جذب ورودی PWM برای تعیین چرخه وظیفه سیگنال ورودی

  • طراحی نرم افزار قبل از توسعه کتابخانه یا کد برنامه

  • تست کد و اشکال زدایی در Keil uVision 5 و STM32CubeIDE

از آنجایی که این دوره مبتنی بر پروژه است، دانشجویان حداقل دو پروژه خواهند ساخت که برخی از آنها عبارتند از:

  • یک کنسول بازی Tic-tac-toe

  • یک ماشین خودران

من می‌توانم تضمین کنم که هرکسی که در این دوره ثبت‌نام می‌کند، پس از اتمام این دوره، می‌تواند نرم‌افزار تعبیه‌شده برای پروژه‌ها را بدون نظارت و یا بدون نظارت بسازد. همچنین، به‌عنوان فارغ‌التحصیل این دوره، می‌توانید نرم‌افزار تعبیه‌شده ساده، خوانا و قابل نگهداری را برای چندین پروژه با الزامات تعریف‌شده با استفاده از C++ طراحی و توسعه دهید.

برای به دست آوردن بهترین نتیجه از دوره، دانش آموزان ملزم به خرید قطعات سخت افزاری و نصب نرم افزار هستند تا سخنرانی ها، تمرین ها و پروژه ها را به راحتی دنبال کنند.

نیازهای نرم افزار:

  • Keil uVision5 MDK

  • محیط زمان اجرا جاوا (برای STM32CubeMx لازم است)

  • STM32CubeMx

  • STM32CubeIDE (برای بردهای بدون پشتیبانی HAL در Keil uVision)

همچنین انتظار می‌رود که دانش‌آموزان با برنامه‌نویسی STM32 در سطح پایه آشنا باشند، یعنی درک لوازم جانبی اولیه و رجیسترهای آنها (GPIO، UART و تایمرها در حالت شمارش عادی). دانستن C تعبیه شده نیز مفید خواهد بود. می توان از Keil uVision 5 یا STM32CubeIDE استفاده کرد. برای بردهای بدون پشتیبانی HAL در زنجیره ابزار Keil uVision (به عنوان مثال STM32 bluepill)، می توان از STM32CubeIDE استفاده کرد.

فرآیند آموزش و یادگیری در این دوره فراتر از سخنرانی ها و تمرین ها است. دانش آموزان همیشه می توانند از طریق بخش پرسش و پاسخ با مربی ارتباط برقرار کنند. این بخش بسیار فعال است زیرا در عرض 24 ساعت به سوالات پاسخ داده می شود.


سرفصل ها و درس ها

نمایش نظرات

آموزش توسعه نرم افزار جاسازی شده با استفاده از C++
جزییات دوره
7 hours
90
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
1,126
4.5 از 5
دارد
دارد
دارد
Olaoluwa Raji
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Olaoluwa Raji Olaoluwa Raji

سیستم های جاسازی شده || میکروکنترلر || مدارها