این دوره بخشی از دوره جامع میکروکنترلر می باشد

زمان آموزشی آن حدود 55 ساعت است

کد نویسی با روش رجیستری و توابع آماده HAL

استفاده از کامپایلر Keil و STM32CubeIDE

استفاده از برد STM32 BluePill و STM32 DISCOVERY F746G

شبیه سازی درصد زیادی از کدها با نرم افزار پروتئوس

انجام پروژه برای هر کدام از بخش های میکروکنترلر (پروژه محور)

بررسی دیتاشیت و شماتیک های میکروکنترلرها

کار با چند مدل مختلف از سری STM32

پیش نیاز فیلم های زبان C ساخته شده در سایت LPCARM.ir

  • روش آموزش فیلم ضبط شده به صورت

دیدن چند فیلم، انجام تمرین و مجدد فیلمهای بعدی

  • پشتیبانی و بررسی تمرینها در حین دوره
  • تمرین ها و پروژه های متعدد تا پایان دوره
  • برآورد تقریبی دوره حدود 50 ساعت آموزش
  • امکان گرفتن مدرک هم وجود ندارد
  • نیاز به تهیه برد آموزشی از بازار هم دارد

سرفصل های تدریس شده

  • تدریس هم صورت رجیستری و هم با CubeMX
  • بررسی دیتاشیت مربوط به هر قسمت میکروکنترلر
  • بررسی معماری داخلی میکروکنترلر STM32
  • بررسی سخت افزار لازم برای میکروکنترلر
  • مروری بر زبان برنامه نویسی C
  • چگونگی دیباگ میکروکنترلر
  • کامپایلر مورد استفاده Keil u Vision 5
  • کار با واحد GPIO
    • پروژه راه اندازی کلید و LED
    • پروژه تشخیص تایم کلید و پالس
    • پروژه سنسور دمای DS18B20
    • پروژه کاربا ال سی دی کاراکتری
    • پروژه  LCDگرافیکی و رنگی و تعریف فونت
    • پروژه سون سگمنت و دات ماتریس
    • راه اندازی موتور سروو، استپر و DC
    • راه اندازی رله و استفاده از اپتوکوپلر
    • ساخت PWM نرم افزاری
    • راه اندازی صفحه کلید و پروژه قفل رمزی
  • معماری وقفه های میکروکنترلر
    • راه اندازی پایه یا به صورت وقفه ای
    • مدیریت وقفه ها
  • راه اندازی واحد تایمر و PWM
    • ساخت تاخیر با واحد تایمر
    • پروژه کنترل نور LED با PWM
    • پخش صوت به صورت مستقیم با میکروکنترلر
    • و معرفی مفهوم نمونه برداری
    • پروژه فاصله سنج آلتراسونیک
    • پروژه سنسور مادون قرمز
  • معرفی DMA و کاربرد آن
  • راه اندازی واحد UART (RS485 و مدباس)
    • پروژه ماژول GSM
    • پروژه کارت خوان RFID
    • پروژه ارتباط با کامپیوتر
    • ساخت UART نرم افزاری
  • کار با مبدل های ADC و DAC میکروکنترلر
    • پروژه راه اندازی سنسور دما
    • پروژه فانکشن ژنراتور DDS
    • پروژه ولت متر، خازن سنج و اهم سنج
    • پروژه ساخت فتوسل
    • پروژه دیتالاگر
  • راه اندازی واحد SPI
    • پروژه افزایش پایه ها با شیفت رجیستر
    • پروژه ارتباط با تراشه ADC
    • پروژه ارتباط با دیگر میکروکنترلرها
    • پروژه کارت حافظه uSD
    • ساخت SPI نرم افزاری
  • راه اندازی واحد I2C
    • پروژه ساعت با آی سی DS1307
    • پروژه EEPROM با آی سی AT24Cxx
    • پروژه ارتباط با دیگر میکروکنترلرها
    • پروژه درایور سون سگمنت
  • کار با پروتکل CAN
    • پروژه ارتباط دو میکروکنترلر با ارتباط CAN
  • کار با تایمر سگ نگهبان (Watchdog)
  • معرفی امکانات پیشرفته میکروکنترلر
    • واحد کنترلر LCD (LTDC)
    • اتصال حافظه RAM خارجی (FSMC)
    • واحد کارت حافظه (SDMMC)
    • واحد شبکه (LAN)
    • واحد USB
    • واحد HASH و CRC

دیگر مزایای دوره، برخورداری از آپدیت دوره در آینده

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

در صورت بروز مشکل با ادمین تماس بگیرید شماره تماس 09361666294 و آی دی تلگرام t.me/lpcarmAdmin

  • جلسه اول دانلود و نصب نرم افزارها

دانلود نرم افزار stm32cube

دانلود و نصب نرم افزار keil

در این قسمت از سایت های مربوطه نرم افزارها دانلود و نصب می شوند و تک تک مراحل نصب ضبط شده اند البته برای دانلود راحت تر نرم افزارها لینک های دانلود آنها در بخش آموزش و دانلود قرار داده شده اند

  • جلسه دوم اجرای عملی

طریقه ساخت پروژه به کمک cubeMx و keil

معرفی برد bluePill

اتصال پروگرمر st-link به برد و برنامه ریزی برد با آن

نصب برنامه st-link utility و کار با آن

نوشتن برنامه Blink Led و دیباگ آن با keil

  • جلسه سوم بررسی عمیق تر کد نویسی

طریقه دیدن مقدار متغیرها در محیط دیباگ keil

کلیدهای میانبر برای اجرای خط به خط کد در محیط دیباگ

تنظیمات پروژه برای دیباگ کد

مفهوم break point

  • جلسه چهارم شبیه سازی در پروتئوس

دانلود و نصب پروتئوس

شبیه سازی برنامه نوشته شده با پروتئوس

روشهای اتصال کلید به میکروکنترلر

نوشتن برنامه خواندن کلید

  • جلسه پنجم پروتکل UART

حل تمرین کلید صندوق پران خودرو

معرفی پروتکل و اتصالات آن

تنظیم cubeMX برای فعال سازی UART

انجام ارتباط برقرار کردن با میکروکنترلری که پایه های برنامه ریزی آن به شکل GPIO تبدیل شده است و دیگر پروگرمر میکروکنترلر را شناسایی نمی کند

انجام تمرین ارسال Hello با UART و دریافت اطلاعات با برنامه hercules در ویندوز (استفاده از مبدل سریال به USB)

  • جلسه ششم بررسی عمیق تر UART

دریافت داده ها از UART به روش polling

فعال کردن وقفه دریافت داده ها

مفهموم تابع UART_IRQ_HALNDLER و نوشتن تابع وقفه در آن

و نوشتن تابع وقفه با کمک تابع uart_rx_compelete_callback

انجام پروژه روشن و خاموش کردن LED با کمک UART

  • جلسه هفتم راه اندازی LCD کاراکتری

بررسی دقیق دیتاشیت LCD کاراکتری

نوشتن توابعی جهت ارتباط با LCD کاراکتری از صفر

  • جلسه هشتم تابع نویسی LCD کاراکتری

تکمیل توابع نوشته شده در جلسه قبل

انجام پروژه دریافت اطلاعات از UART و نمایش روی LCD

  • جلسه هشتم بخش دوم اجرای عملی LCD کاراکتری

طریقه بستن LCD روی برد برد و نمایش روی آن و دیباگ خط به خط آن

  • جلسه نهم ال سی دی گرافیکی

بررسی دیتاشیت و پایه های LCD گرافیکی مدل ks0108

نوشتن برخی از توابع لازم جهت کنترل GLCD از صفر

  • جلسه دهم طراحی فونت برای ال سی دی گرافیکی

بررسی نرم افزارهایی جهت طراحی فونت

طراحی فونت برای GLCD

تکمیل توابع لازم برای GLCD

نمایش فونت درشت بر روی GLCD

  • جلسه یازدهم رسم اشکال بر روی ال سی دی گرافیکی

نوشتن تابع خواندن از LCD و نمایش پیکسل

نوشتن تابع بررسی مشغول بودن LCD

نمایش تصویر بر روی GLCD

معرفی نرم افزار 010Editor

ساخت تصویر سیاه و سفید با فتوشاپ

بررسی دقیق فایل BMP 1Bit

  • جلسه دوازدهم حل تمرین

حل تمرین پورت سریال (دریافت رشته و پردازش آن با کمک strcmp)

نوشتن توابعی جهت رسم bargraph روی GLCD

  • جلسه سیزدهم تایمرها

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

بررسی انواع تایمرها

تنظیم تایمر و تابع نویسی آن و دیباگ با برنامه keil

فعال سازی تایع وقفه تایمر و نوشتن برنامه تایمر نیم ثانیه

  • جلسه چهاردهم بخش PWM تایمر

معرفی PWM و مفهوم آن

بررسی چگونگی تولید PWM

نوشتن برنامه کنترل نور LED با PWM

معرفی کپچر و چیستی آن

  • جلسه پانزدهم مبدل ADC

معرفی ADC و طریقه فعال سازی آن

معرفی سنسور دمای LM35

برنامه نویسی برای خواندن از ADC

  • جلسه شانزدهم مبدل DAC

راه اندازی مبدل دیجیتال به آنالوگ

برنامه نویسی کد DAC برای تولید ولتاژ

  • جلسه هفدهم پروتکل SPI

تشریح پروتکل SPI و کاربردهای آن

اتصالات پروتکل SPI

انجام پروژه سون سگمنت با SPI به کمک شیفت رجیستر (74595)

  • جلسه هجدهم سون سگمنت و SPI عملی

بستن عملی پروژه سون سگمنت روی برد برد

راه اندازی آی سی MAX7219 و بررسی دیتاشیت و برنامه نویسی آن

راه اندازی دات ماتریس و اجرای عملی آن

  • جلسه نوزدهم حل تمرین SPI

برنامه نویسی LCD نوکیا 5110

راه اندازی نمایشگر OLED در مد SPI

  • جلسه بیستم حل تمرین SPI

بررسی ماژول ژایروسکوپ (6050-9250) و بررسی کدهای نوشته شده برای آنها در گوگل

معرفی کارت حافظه SD Card و راه اندازی آن به کمک کتابخانه Fatfs

  • جلسه بیست و یکم پروتکل I2C

بررسی کاربردها و تشریح کامل پروتکل (سیگنالینگ اتصالات و …)

بررسی دیتاشیت آی سی ساعت DS1307

  • جلسه بیست و دوم برنامه نویسی پروتکل I2C

برنامه نویسی آی سی ساعت و دیباگ آن

  • جلسه بیست و سوم برنامه نویسی رجیستری

بررسی دقیق دیتاشیت بخش GPIO

ساخت پروژه و نوشتن یک برنامه به روش رجیستری برای کنترل پایه ها

نوشتن کد خواندن GPIO و مقدار دی به آن

  • جلسه بیست و چهارم رجیسترهای وقفه و UART

طریقه فعال سازی رجیسترهای وقفه

بررسی فایل استارت آپ و چگونگی نوشتن تابع وقفه

برنامه نویسی وقفه خارجی

  • جلسه بیست و پنجم رجیسترهای UART

بررسی دیتاشیت بخش UART

برنامه نویسی و مقدار دهی رجیسترها برای ارسال و دریافت داده

  • جلسه بیست و ششم راه اندازی ماژول GSM

بررسی دیتاشیت ماژول

بررسی سخت افزار لازم برای ماژول

بررسی AT Command ها

  • جلسه بیست و هفتم برنامه نویسی ماژول GSM

معرفی نرم افزار Hercules

نوشتن دستورات مختلف ماژول برای ارسال و دریافت SMS

فعال کردن بلوتوث ماژول SIM800C

  • جلسه بیست و هشتم برد دیسکاوری STM32F746G

بررسی دیتاشیت و مستندات برد

نوشتن کد blink led

فعال کردن صفحه تاچ خازنی برد دیسکاوری

  • جلسه بیست و نهم راه اندازی واحد LTDC (ال سی دی رنگی)

بررسی پروتکل CRT برای نمایش تصاویر

برنامه نویسی و فعال سازی LCD رنگی برد دیسکاوری به کمک توابع HAL

چگونگی تنظیم RAM خارجی برای اینکه متغیرهای میکروکنترلر در آنجا قرار بگیرد (ال سی دی جهت نمایش تصویر 480 در 272 پیکسل نیاز به حدود 128 کیلیو بایت رم دارد)

  • جلسه سی ام فونت و عکس با LTDC

ساخت تصویر مناسب با فوتشاپ

بررسی کامل عکس با فرمت BMP رنگی

نوشتن کد نمایش عکس روی LCD و بررسی مفهوم RGB888 و ARGB888

  • جلسه سی و یکم کار با شبکه TCP/IP

بررسی اتصالات بین لایه فیزیکی و میکروکنترلر ARM

بررسی فریم شبکه

بررسی پروتکل IP و انواع کلاس

کار با نرم افزار wireshark برای مشاهده پکت های شبکه

ارتباط دو سیستم یکی سرور یکی کلاینت در ویندوز و بررسی پکت های بین آنها

بررسی پکت های یک سیستم وب سرور بین مرورگر و کامپیوتر

  • جلسه سی و دوم برنامه نویسی TCP/IP

بررسی توابع موجود در کتابخانه LWIP

تشریح توابع LWIP و بررسی مفهوم تابع اشاره گر

برنامه نویسی اتصال شبکه از صفر (ساخت کانکشن TCP و ارسال و دریافت اطلاعات)

  • جلسه سی و سوم برنامه نویسی سرور LAN

برنامه نویسی سرور TCP و ارسال و دریافت

برنامه نویسی تبادل داده از طریق UDP

  • جلسه سی و چهارم کار با QSPI-SDMMC

تنظیم پروژه برای حافظه خارجی

بررسی آی سی N25Q128

استفاده از کتابخانه Fatfs برای ارتباط با کارت حافظه

  • جلسه سی و پنجم راه اندازی کدک صوتی (پخش صدا)

بررسی پارامترهای فایل صوتی

معرفی آی سی WM8994

کار با برنامه adobe audition جهت ویرایش صدا

طریقه ساخت فایل صوتی برای اننتقال به حافظه میکروکنترلر

  • جلسه سی و ششم ارتباط صوتی با WM8994

بررسی DMA و چگونگی عملکرد آن (مد circular)

پخش صدا به کمک آی سی WM8994

  • جلسه سی و هفتم وب سرور با LWIP

راه اندازی و برنامه نویسی یک سرور وب با مییکروکنترلر ARM که مرورگر ویندوز بتواند آن را باز کند و داده های html را نمایش بدهد

  • جلسه سی و هشتم پروتکل CAN

بررسی سیگنالینگ CAN

بررسی پروتکل CAN

برنامه نویسی جهت ارسال و دریافت CAN

بررسی رجیسترها

  • جلسه سی و نهم محاسبه CRC

فرمول دقیق محاسبه CRC

نوشتن فرمول CRC به شکل پارامتری در نرم افزار MATLAB

نوشتن کد محاسبه هر نوع CRC به زبان C

  • جلسه چهلم سنسور دما با ds18b20

بررسی پروتکل ارتباطی یک سیمه (one wire)

بررسی دیتاشیت سنسور ds18b20

برنامه نویسی و راه اندازی سنسور ds18b20

  • جلسه چهل و یکم فانکشن ژنراتور

تولید یک دوره تناوب موج سینوسی به کمک نرم افزار متلب

چگونگی ساخت یک DAC پسیو با مقاومت

برنامه نویسی پروژه تولید فرکانس های مختلف با میکروکنترلر

  • جلسه چهل و دوم صفحه کلید و قفل رمزی

طریقه اتصال صفحه کلید ماتریسی به میکروکنترلر

نوشتن برتامه قفل رمزی و چگونگی دریافت اعداد با صفحه کلید

  • جلسه چهل و سوم وقفه GPIO

چگونگی تنظیم وقفه خارجی

بررسی کامل برنامه st-link utility

فیلتر نویسی برای debouncing پایه وقفه خارجی

  • جلسه چهل و چهارم GPIO نرم افزاری

نوشتن کد UART نرم افزاری

برنامه نویسی PWM نرم افزاری

  • جلسه چهل و پنجم بررسی شماتیک STM32

بررسی شماتیک برد Blue pill

بررسی شماتیک برد STM32F407

بررسی شماتیک برد دیسکاوری F746

  • جلسه چهل و ششم

به زودی اضافه می شود..

توجه:

تمامی آپدیتها و جلسات جدید برای نفرات قبلی رایگان به پنل اسپات پلیرشون به شکل اتوماتیک اضافه میشه