دوره ویدیویی میکروکنترلرهای AVR

دوره AVR
  • پیش نیاز فیلم های زبان C ساخته شده در سایت LPCARM.ir
  • آموزش از سطح صفر تا سطح حرفه ای
  • روش آموزش فیلم ضبط شده به صورت

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

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

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

  • تدریس به صورت رجیستری
  • بررسی دیتاشیت میکروکنترلر
  • بررسی معماری داخلی میکروکنترلر
  • بررسی سخت افزار لازم برای میکروکنترلر
  • چگونگی دیباگ میکروکنترلر
  • معرفی زبان اسمبلی برای
  • کار با واحد GPIO
    • پروژه راه اندازی کلید و LED
    • پروژه تشخیص تایم کلید و پالس
    • پروژه کاربا ال سی دی کاراکتری
    • پروژه سون سگمنت و دات ماتریس
    • راه اندازی موتور سروو، استپر و DC
    • راه اندازی رله
    • راه اندازی صفحه کلید و پروژه قفل رمزی
  • معماری وقفه های میکروکنترلر
    • راه اندازی پایه یا به صورت وقفه ای
    • مدیریت وقفه ها
  • راه اندازی واحد تایمر و PWM
    • ساخت تاخیر با واحد تایمر
    • پروژه کنترل نور LED با PWM
  • راه اندازی واحد UART
    • پروژه ارتباط با کامپیوتر
  • کار با مبدل های ADC و DAC میکروکنترلر
    • پروژه راه اندازی سنسور دما
    • پروژه ولت متر
  • راه اندازی واحد SPI
    • پروژه افزایش پایه ها با شیفت رجیستر
    • پروژه ارتباط با دیگر میکروکنترلرها
  • راه اندازی واحد I2C
    • پروژه ساعت با آی سی DS1307
    • پروژه EEPROM با آی سی AT24Cxx
    • پروژه ارتباط با دیگر میکروکنترلرها
  • کار با تایمر سگ نگهبان (Watchdog)

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

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

خرید دوره از فروشگاه به نشانی http://lpcarm.ir/shop

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

در این دوره ما با تمامی بخش های میکروکنترلر AVR کار خواهیم کرد و از نرم افزارهای مختلفی برای کار استفاده می نماییم از کامپایلر CodeVisionAVR و Microchip Studio (نسخه قدیمی تز Atmel Studio بود) و Avr Studio و Arduino IDE استفاده می نماییم. برنامه ها را روی برد ریخته و به کمک پروتئوس شبیه سازی می کنیم و برنامه ها به زبان سی و اسمبلی نوشته شده اند

جلسه اول کار عملی!

دانلود دیتاشیت AVR و بررسی آن

دانلود و نصب نرم افزار شبیه ساز Proteus

رسم یک مدار Blink LED با میکروکنترلر در پروتئوس

بررسی مقاومت لازم برای LED و مقاومت سری E12 و …

بررسی شماتیک برد آردینو uno و شرح پایه های AVR

جلسه دوم کار عملی!

بررسی آردینو نانو و اتصالات آن

دانلود و نصب برنامه Arduino

نصب درایور CH340

اجرای برنامه avrdudess برای برنامه ریزی آردینو

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

بستن عملی مدار blink LED بر روی برد برد به کمک آردینو uno

جلسه چهارم برنامه ریزی آردینو با USBASP

نصب درایور پروگرمر usbasp

انتقال بوت لودر آردینو به برد آردینو

برنامه ریزی یک فایل HEX بر روی AVR با کمک avrdudess

جلسه پنجم برنامه ریزی AVR با USBASP

اتصالات لازم جهت برنامه ریزی AVR

بستن عملی AVR روی برد برد و برنامه ریزی آن به کمک usbasp

معرفی برنامه khazama و prog isp جهت برنامه ریزی AVR

جلسه ششم برنامه نویسی LED Blink

دانلود و نصب CodeVisionAVR

ساخت پروژه با کامپایلیر CodeVision

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

ساخت LED چشمک زن و برنامه نویسی صفر تا 100

جلسه هفتم بررسی دیتاشیت AVR

دانلود دیتاشیت AVR

بررسی بخش های اول دیتاشیت

بررسی روشهای برنامه ریزی و فیوز بیت های AVR

بررسی مشخصات الکتریکی AVR

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

بررسی عمیق تر GPIO و رجیسترهای آن

دسترسی بیتی به رجیستر

استفاده از AND و OR جهت دسترسی بیتی

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

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

تبدیل مبنای 2 و 16

کاربرد دستور شیفت

ماکرو نویسی در AVR

اتصال کلید به AVR و مفهوم مقاومت پول آپ و پول داون

جلسه دهم نمایشگر LCD کاراکتری

معرفی پایه های LCD کاراکتری و بستن عملی آن بر روی برد برد

معرفی توابع محتلف کار با LCD کاراکتری

معرفی کتابخانه stdio.h و تابع sprintf

برنامه نویسی شمارنده و نمایش آن بر روی LCD

جلسه یازدهم نمایشگر LCD کاراکتری

معرفی کدهای ASCII

بررسی عمیق تر تابع sprintf

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

برنامه نویسی تابلو روان بر روی LCD

جلسه دوازدهم پروتکل سریال (UART)

معرفی سیگنالینگ پروتکل و اتصالات لازم

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

برنامه نویسی صفر تا 100 راه اندازی UART

معرفی مبدل های USB به سریال

جلسه سیزدهم پروتکل UART بخش دوم

معرفی Code Wizard جهت تسریع در محاسبات UART

ارتباط AVR با کامپیوتر از طریق پورت سریال و استفاده از نرم افزار hercules

انجام پروژه کنترل LED با کامپیوتر

حل تمرین تابلو روان

جلسه چهاردهم وقفه (Interrupt)

توضیح وقفه و کاربرد آن

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

نوشتن کد کنترل LED از طریق PC با وقفه

چگونگی دیباگ با پروتئوس و قرار دادن break point

جلسه پانزدهم سون سگمنت

معرفی انواع سون شگمنت و ولتاژ لارم برای روشن شدن آن

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

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

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

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

کاربرد های تایمر

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

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

حل تمرین نمایش سون سگمنت 4 رقمی با تایمر

جلسه هفدهم بخش PWM از تایمر

مفهوم PWM (Pulse Width Modulation) یا همان مدولاسیون عرض پالس

تنظیم رجیسترهای تایمر جهت تولید PWM

بررسی روند رسیدگی به وقفه در میکروکنترلر و مفهوم پشته (stack)

برنامه نویسی پروژه تولید ولتاژ با PWM و فعال سازی حالت CTC

جلسه هجدهم بخش کپچر و RTC تایمر

مفهوم capture در میکروکنترلر

بررسی عمیق رجیسترها و بیت های مرتبط با کپچر در دیتاشیت

برنامه نویسی تشخیص عرض پالسهای ورودی با AVR

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

جلسه نوزدهم بخش RTC تایمر

معرفی تایمر 2 و رجیسترهای آن و چگونگی تنظیم تایمر 2 در مد RTC

بررسی مدهای کم کننده مصرف توان (مدهای sleep)

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

معرفی دستور اسمبلی sleep

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

شرح ویژگی های ADC و طریقه تبدیل ولتاژ به عدد

بررسی رجیسترهای بخش ADC در AVR

مفهوم ولتاژ مرجع و برنامه نویسی خواندن مقدار ولوم به کمک ADC

معرفی سنسور دما و خواندن دماهای منفی با LM35

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

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

شرج کاربرد و اتصالات و سیگنالینگ پروتکل SPI

بررسی رجیسترهای SPI در دیتاشیت AVR

معرفی آی سی شیفت رجیستر 74595

برنامه نویسی و کنترل LED با آی سی شیفت رجیستر

تمرین کنترل سون سگمنت با دو آی سی 74595

جلسه بیست و دوم پروتکل I2C (IIC)

بررسی کاربرد های پروتکل I2C

شرح سیگنالینگ و اتصالات پروتکل I2C و مفهوم ACK و NAK

استفاده از کتابخانه i2c.h و برنامه نویسی با کمک آن

نوشتن برنامه برقراری ارتباط با EEPROM خارجی

جلسه بیست و سوم پروتکل IIC بخش دوم

تکمیل کد EEPROM از جلسه قبل

معرفی رجیسترهای i2c سخت افزاری و بررسی انواع status آن

برنامه نویسی i2c سخت افزاری با کمک رجیسترها

معرفی آی سی ساعت DS1307 و شرح عملکرد آن

جلسه بیست و چهارم مقایسه گر آنالوگ

بررسی رجیسترهای مرتبط با مقایسه گر آنالوگ

شرح چگونگی عملکرد مقایسه گر آنالوگ

بررسی کاربردهای مقایسه گر آنالوگ

برنامه نویسی ربات مسیریاب با کمک مقایسه گر آنالوگ

جلسه بیست و پنجم زبان اسمبلی بخش اول

شرح کامل ارتباط CPU AVR با حافظه Program و Data

بررسی بخش های مختلف حافظه Data مانند cache و SFR و SRAM

بررسی آدرس های موجود برای رجیسترهای SFR و Data Memory

معرفی SREG و کاربرد تک تک بیتهای آن

بررسی دستورات اسمبلی AVR

جلسه بیست و ششم زبان اسمبلی بخش دوم

بررسی دستور اسمبلی LDI و RJMP و تاثیر آن در رجیسترها

ساخت پروژه با برنامه Microchip Studio

شبیه سازی برنامه اسمبلی به کمک Microchip studio

بررسی دستورات اسمبلی JMP و SET و CLR و OUT

چگونگی ذخیره متغیر در رم یا کش در زبان C

جلسه بیست و هفتم زبان اسمبلی بخش سوم

فعال سازی وقفه و تنظیم بردارهای وقفه به زبان اسمبلی

تنظیم اشاره گر پشته (stack pointer) برای عملکرد صحیح AVR

نوشتن تابع Delay_ms با زبان اسمبلی

برنامه نویسی کنترل LED چشمک زن به زبان اسمبلی

جلسه بیست و هشتم زبان اسمبلی بخش چهارم

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

فعال سازی تایمر به زبان اسمبلی

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

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

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

جلسه بیست و نهم زبان اسمبلی بخش پنجم

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

حل تمرین مبدل پارالل به سریال و برنامه نویسی از صفر تا 100

نوشتن پورت سریال UART به شکل نرم افزاری

در این جلسه تمرین جدیدی تحت عنوان مبدل پارالل به سریال برنامه نویسی می شود و برای تمرین و کار با زبان اسمبلی می تواند به تسلط بیشتر به این زبان کمک نماید و نیز پروتکل UART به شکل نرم افزاری پیاده سازی شده است

جلسه سی ام زبان اسمبلی بخش ششم

حل تمرین مبدل باینری به BCD و نمایش روی دو سون سگمنت انجام می شود

حل تمرین صفحه کلید ماتریسی به AVR متصل شده است و عدد وارد شده در صفحه کلید بعد از زدن 8 یا # بر روی یک سون سگمنت 4 رقمی به شکل هگز نمایش داده می شود

قرار داده اطلاعات سون سگمنت ها در حافظه Flash و خواندن آنها با دستور LPM

نوشتن دستور switch case به زبان اسمبلی

اسکن صفحه کلید و تازه سازی سون سگمنت به زبان اسمبلی

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

بررسی بوت لودر در AVR و رجیسترهای مرتبط با آن

بررسی بخش RWW و PcPage و PCWord

بررسی رجیستر اشاره گر X و Y و Z

پاک کردن یک سکتور از فلش AVR و نوشتن داده جدید روی آن

جلسه سی و دوم نکات پایانی دیتاشیت AVR

بررسی فیوزبیت های AVR

بررسی روشهای برنامه ریزی AVR

معرفی تایمر سگ نگهبان (watchdog timer) و تنظیم آن

معرفی رجیسترهای EEPROM داخلی AVR

جلسه سی و سوم برنامه ریزی AVR معیوب

گاهی اوقات به دلیل عدم برنامه ریزی صحیح AVR باعث می شویم که AVR به مد کلاک خارجی برود که در این حالت تا هنگامی که کلاک خارجی به آن متصل نشود، کار نمی کند.

در این جلسه به ریکاوری کردن یک AVR معیوب پرداخته می شود و با کمک پروگرمر USBASP این مشکل حل می شود

جلسه سی و چهارم کار با Microchip Studio

ساخت پروژه زبان C به کمک Microchip studio

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

اتصال LCD کاراکتری به AVR و برنامه نویسی از صفر آن با Microchip Studio

تست و عیب یابی کد LCD کاراکتری

جلسه سی و پنجم وقفه در Microchip Studio

طریقه نوشتن تابع وقفه در Microchip studio و راه اندازی وقفه خارجی

اتصال پروگرمر JTAG ICE به AVR و دیباگ خط به حط AVR با نرم افزار AVR Studio و کامپایلر Win AVR (این مدل پروگرمر فقط در AVR Studio کار می کند)

اتصال پروگرمر AVR JTAGICE MKII و دیباگ خط به خط AVR با Microchip Studio

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

حل تمرین نمایش روی سون سگمنت با دو آی سی 74595

اتصال صفحه کلید ماترسی به AVR

اتصال EEPROM و آی سی ساعت به AVR

اتصال سنسور دما LM35 و مقاومت LDR (فتوسل) به AVR

جلسه سی و هفتم پروژه بخش دوم

نوشتن کد خواندن اطلاعات از صفحه کلید ماتریسی

نوشتن کد برقراری ارتباط با آی سی DS1307

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

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

خواندن سنسور دما و نمایش روی ال سی دی

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

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

تنظیم پارامترهای منوها با کمک صفحه کلید

این جلسه برنامه نویسی به شکل حرفه ای انجام می شود و نیاز است که چند با آن را ببینید و خودتان تمرین انجام بدهید تا برای شما ملکه بشود

جلسه چهلم پروژه بخش پنجم

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

در این جلسه تنظیم زمان از طریق پورت سریال را برنامه نویسی می کنیم و با کامندهای دریافت شده از پورت سریال کار می کنیم

جلسه چهل و یکم برنامه نویسی به زبان آردینو

این جلسه دستورات مختلف آردینو بررسی شده اند و چگونگی شبیه سازی و استفاده از توابع مختلف در آردینو همه بررسی شده اند و در نهایت کد یک LCD رنگی TFT برای آردینو نوشته شده است

ساخت پروژه با آردینو و شبیه سازی با پروتئوس

دانلود کتابخانه های مختلف در آردینو و بررسی چند کتابخانه مانند Ada Fruint و MCU Friend

آپدیت دوره پروژه صفحه کلید موبایل بخش اول

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

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

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

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

آپدیت دوره پروژه صفحه کلید موبایل بخش دوم

نمایش حروف مختلف روی LCD با هر بار زدن کلید ها

در این جلسه هربار که کلید های صفحه کلید را فشار می دهیم باید حرف تغییر نماید مثلا با زدن کلید 4 باید حرف g-h-i-4 نشان داده بشود و اگر تا تایمی صبر کردیم و مجدد همین کلید را زدیم حرف دوم را به همین شکل بپذیرد

آپدیت دوره پروژه صفحه کلید موبایل بخش سوم

در این جلسه مجدد تمامی برنامه نوشته شده به شکل خط به خط توضیح داده می شود و بررسی شده است

جلسه میکروکنترلر Xmega

در انتهای دوره میکروکنترلر xmega هم کار می کنیم

به زودی….

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *