لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش اصول برنامهنویسی C برای سیستمهای نهفته (Embedded C)
- آخرین آپدیت
دانلود Embedded C Programming Essentials
نکته:
ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:
به دوره جامع ما برای تسلط بر STM32CubeIDE و برنامهنویسی C جهت توسعه سیستمهای نهفته خوش آمدید! در این مسیر، شما به پیچیدگیهای STM32CubeIDE و مبانی برنامهنویسی C خواهید پرداخت و توانایی کار با این محیط توسعه را به صورت بهینه کسب خواهید کرد.
با شروع از مبانی برنامهنویسی C، مفاهیمی مانند انواع دادهها، متغیرها و کلاسهای ذخیرهسازی (Storage Classes) را فرا گرفته و سپس به مباحث پیچیدهتر خواهید پرداخت. در این دوره، جنبههای بنیادین توسعه سیستمهای نهفته، از جمله فرآیندهای Build و مدیریت حافظه که برای برنامهنویسی بهینه حیاتی هستند را بررسی میکنیم.
یکی از ویژگیهای منحصر به فرد این دوره، تأکید بر کاربرد عملی است. شما یاد میگیرید که چگونه از میکروکنترلرها به طور مؤثر استفاده کنید و مهارتهای خود را در تکنیکهای دیباگ (عیبیابی) و تحلیل ارتقا دهید. در پایان دوره، شما با درکی عمیق از توسعه سیستمهای نهفته، مهارتهای لازم برای خلق سیستمهای کارآمد و قابل اعتماد را به دست خواهید آورد.
از تجربیات عملی و راهنماییهای تخصصی بهرهمند شوید و سفری را به سوی تبدیل شدن به یک توسعهدهنده حرفهای سیستمهای نهفته آغاز کنید. به ما بپیوندید و پتانسیلهای خود را در دنیای هیجانانگیز سیستمهای نهفته آزاد کنید!
مخاطبان هدف:
این دوره برای مبتدیان و یادگیرندگان سطح متوسطی که مشتاق تسلط بر توسعه سیستمهای نهفته هستند، ایدهآل است و برای گروههای زیر مناسب است:
1) دانشجویان رشتههای علوم کامپیوتر، مهندسی برق یا رشتههای مرتبط که به دنبال ایجاد یک پایه قوی در سیستمهای نهفته هستند.
2) متخصصانی که در حال انتقال به حوزه توسعه سیستمهای نهفته هستند یا قصد ارتقای مهارتهای خود را در این زمینه دارند.
3) علاقهمندان و آماتورهایی که به یادگیری برنامهنویسی میکروکنترلر و طراحی سیستمهای نهفته علاقه دارند.
پیشنیازها:
برای بهرهمندی کامل از این دوره، یادگیرندگان باید موارد زیر را داشته باشند:
1) دانش پایه برنامهنویسی: آشنایی با مفاهیمی مانند متغیرها، حلقهها، توابع و دستورات شرطی توصیه میشود.
2) درک زبان برنامهنویسی C: اگرچه اجباری نیست، اما داشتن تجربه یا دانش قبلی در زبان C، روند یادگیری را تسهیل میکند.
3) درک پایه از الکترونیک: آشنایی ابتدایی با قطعات الکترونیکی و مدارها در درک مفاهیم مرتبط با توسعه سیستمهای نهفته مفید خواهد بود.
نیازمندیهای سختافزاری و نرمافزاری:
سختافزار:
1) برد STM32F407G-DISC1 DISCOVERY: این برد اصلی توسعه است که درایورها برای آن نوشته میشوند.
نرمافزار:
1) STM32CUBEIDE: محیط توسعه مبتنی بر Eclipse که توسط شرکت ST ارائه شده و از سیستمعاملهای مختلف (ویندوز / لینوکس / مک) پشتیبانی میکند و به صورت رایگان در دسترس است.
سرفصل ها و درس ها
توسعه سیستمهای نهفته با STM32CubeIDE و برنامهنویسی C
Embedded Systems Development with STM32CubeIDE and C Programming
معرفی دوره
Course Introduction
دانلود IDE
Downloading IDE
ویژگیهای کلیدی STM32CubeIDE
Key features of the STM32CubeIDE
نصب STM32CubeIDE
Installing STM32CubeIDE
آشنایی با سختافزار هدف این دوره
Meet the embedded target of this course
نصب کامپایلر (GCC) برای سیستم میزبان (ویندوز)
Installing compiler (GCC) for host (WINDOWS)
وارد کردن پروژههای دوره به محیط کاری - بخش اول
Importing course projects into workspace Part 1
وارد کردن پروژههای دوره به محیط کاری - بخش دوم
Importing course projects into workspace Part 2
ایجاد پروژه برای سیستم میزبان (HOST)
Creating a project for the HOST
ایجاد پروژه برای سختافزار هدف (Target)
Creating a project for the Target
رفع خطای FPU warning
FPU warning fix
ابزار وب OnlineGDB
OnlineGDB web tool
تابع Printf و برنامه Hello World
Printf and Hello World
پاسخ تمرین اول Printf
Printf exercise 1 solution
توالیهای Escape در زبان C
Escape sequences in 'C'
پاسخ تمرین دوم Printf
Printf exercise 2 solution
پاسخ تمرین سوم Printf
Printf exercise 3 solution
نحوه کامنتگذاری در زبان C
Commenting in 'C'
مبانی برنامهنویسی C: انواع دادهها و متغیرها
Foundations of C Programming: Data Types and Variables
انواع دادهها در زبان C
Data types in 'C'
انواع دادههای عدد صحیح و بازه مقادیر در C
'C' Integer data types and value ranges
نوع داده Char و تعریف متغیر
Char data type and variable definition
تمرین تعریف متغیر
Variable definition exercise
محاسبه بازه برای نوع داده char
Range calculation for 'char' data type
عملگر Sizeof
Sizeof
قوانین نامگذاری متغیرها و تفاوت تعریف و اعلان (Definition vs Declaration)
Variables naming rules and definition vs declaration
توضیح تصویری تفاوت اعلان و تعریف
Declaration vs definition : An illustration
محدوده متغیرها (Scope) و مثالهای کاربردی
Variables scope and illustration
آدرس متغیرها
Address of variables
ضروریات برنامهنویسی C: کلاسهای ذخیرهسازی، توابع و مفاهیم پیشرفته
C Programming Essentials: Storage Classes, Functions, and Advanced Concepts
توصیفکنندههای کلاس ذخیرهسازی در C
Storage class specifiers in 'C'
موارد استفاده از static برای متغیرها
Use cases of 'static' with variables
موارد استفاده از static برای توابع
Use cases of 'static' with functions
توصیفکننده کلاس ذخیرهسازی Extern
'Extern' storage class specifier
آشنایی با توابع در زبان C - بخش اول
Introduction to functions in 'C' Part 1
آشنایی با توابع در زبان C - بخش دوم
Introduction to functions in 'C' Part 2
پروتوتایپهای تابع (Function Prototypes)
Function prototypes
بازگرداندن دادهها از تابع
Returning data from a function
تمرین توابع - بخش اول
Function exercise part 1
تمرین توابع - بخش دوم
Function exercise part 2
کدهای ASCII
ASCII codes
تغییر نوع داده (Typecasting) در C - بخش اول
Typecasting in 'C' Part 1
تغییر نوع داده (Typecasting) در C - بخش دوم
Typecasting in 'C' Part 2
اصول توسعه سیستمهای نهفته
Embedded Systems Development Fundamentals
برنامه Hello World در سیستم نهفته - بخش اول
Embedded - 'Hello World' Part 1
برنامه Hello World در سیستم نهفته - بخش دوم
Embedded - 'Hello World' Part 2
تست تابع printf بر روی ARM - بخش اول
Testing printf over ARM Part 1
تست تابع printf بر روی ARM - بخش دوم
Testing printf over ARM Part 2
بررسی مشکلات احتمالی IDE
Issues with IDE
تنظیمات کامپایلر در STM32CubeIDE
Compiler settings on STM32CubeIDE
فرآیند Build پروژه نهفته - بخش اول
Embedded project build process Part 1
فرآیند Build پروژه نهفته - بخش دوم
Embedded project build process Part 2
اجرای Sizeof بر روی سختافزار هدف
Run Sizeof on Embedded Target
تست Sizeof
Sizeof testing
میکروکنترلر چیست؟ - بخش اول
What is a Microcontroller? Part 1
میکروکنترلر چیست؟ - بخش دوم
What is a Microcontroller? Part 2
حافظه کد در میکروکنترلر
Code memory of the microcontroller
بررسی کد و دادههای برنامه با Memory Browser - بخش اول
Code and Data of the program using memory browser Part 1
بررسی کد و دادههای برنامه با Memory Browser - بخش دوم
Code and Data of the program using memory browser Part 2
تحلیل فایل ELF با استفاده از ابزارهای GNU - بخش اول
Analyzing ELF file using GNU tools Part 1
تحلیل فایل ELF با استفاده از ابزارهای GNU - بخش دوم
Analyzing ELF file using GNU tools Part 2
دیاسِمبلی (Disassembly) - بخش اول
Disassembly Part 1
دیاسِمبلی (Disassembly) - بخش دوم
Disassembly Part 2
تنظیمات IDE برای دیباگ در سطح دستورالعمل (Instruction level)
IDE option for Instruction level debugging
نمایش نظرات