طراحی کنترلر، مدارت دلخواه، پروژه ها و تمرینات درس میکروکنترلرها
این پروژه یک ساعت آنالوگ، تاریخ شمسی و روزه هفته به زبان فارسی به همراه ساعت دیجیتال می باشد. قابلیت تنظیم ساعت و تاریخ توسط سه عدد میکروسوئچاندازه گیری ضربان قلب توسط تمامی انگشتان دست. نمایش بر روی سون سگمنت سه رقمی LED. ذخیره ضربان های اندازه گیری شده تا 250 مورد. نمایش اندازه گیری های ثبت شده توسط کلید های Up و downبا استفاده از میکروکنترلر ATMEGA8 و کیبورد 3×4 می توان حروف و اعداد را تایپ کرد و درون یک متغییر ذخیره نمود و محتوای این متغییر بر روی نمایشگر LCD نمایش داده می شود. در صورتی که فضای LCD پر شود کاراکترها به سمت چپ شیفت داده می شوند. تمامی حروف و اعداد کوچک و بزرگ انگلیسی قابل تایپ می باشند.کنترل نور یک لامپ 12 الی 24 ولتی DC توسط دو عدد کلید در بازه روشنایی 1 تا 99 درصد. به همراه نمایشگر جهت نمایش درصد روشنایی.با استفاده از میکروکنترلر Atmega8‌، سنسور دیجیتال دما DS18B20 و LCD‌ متنی شما به راحتی می توانید کولر خانه تان را توسط کنترل تلویزیون و کلید های تعبیه شده، در مد های مختلفی برنامه ریزی کنید، از ویژگی آن می توان به کاهش مصرف انرژی در کولرها آبی اشاره نمود.
ساعت آنالوگ با AVR و lcd گرافیکی به زبان c

MCP-36

ساعت آنالوگ با AVR و lcd گرافیکی به زبان c
پروژه اندازه گیری ضربان قلب با نوک انگشتان و avr

MCP-17

پروژه اندازه گیری ضربان قلب با نوک انگشتان و avr
پروژه تایپ حروف و اعداد با کیبورد 3.4 به زبان سی با avr

MCP-3

پروژه تایپ حروف و اعداد با کیبورد 3.4 به زبان سی با avr
دیمر دیجیتال با AVR به زبان سی

MCP-38

دیمر دیجیتال با AVR به زبان سی
پروژه کنترل اتوماتیک کولرهای آبی با ریموت کنترل و avr

MCP-4

پروژه کنترل اتوماتیک کولرهای آبی با ریموت کنترل و avr
برنامه نویسی میکروکنترلرها FAQ (سوالات رایج کاربران)


شاخه: اصلی -> سوال در مورد میکرو کنترلر AVR

سوال/تابع
  فرکانس میکرو را چگونه انتخاب کنیم؟
  چگونه پورت ها را ورودی و خروجی کنیم؟
  چگونه روی پورت ها بخوانیم یا بنویسیم؟
  AVR چه حافظه هایی دارد؟

جواب/عملکرد
  فرکانس میکرو را چگونه انتخاب کنیم؟

فرکانس های داخلی:
CKSEL0 = 1
CKSEL1 = 0
CKSEL2 = 0
CKSEL3 = 0
==> F=1MHZ

CKSEL0 = 0
CKSEL1 = 1
CKSEL2 = 0
CKSEL3 = 0
==> F=2MHZ

CKSEL0 = 1
CKSEL1 = 1
CKSEL2 = 0
CKSEL3 = 0
==> F=4MHZ

CKSEL0 = 0
CKSEL1 = 0
CKSEL2 = 1
CKSEL3 = 0
==> F=8MHZ


فرکانس های خارجی:
CKSEL0 = 0
CKSEL1 = 0
CKSEL2 = 0
CKSEL3 = 0
با تنظیم فیوز بیت ها به این صورت شما می توانید از نوسان ساز کریستال خارجی 1-16 مگاهرتز و یا تا 24 مگاهرتز استفاده نمائید.

بالای صفحه
  چگونه پورت ها را ورودی و خروجی کنیم؟

خروجی کردن:
برای اینکار کافیست در رجیستر DDRx پورت مربوطه 1 بنویسیم تا پورت به عنوان خروجی تعریف شود.
ورودی کردن:
در این حالت باید در رجیستر مربوطه 0 صفر بنویسیم که با استفاده از دستور PORTx می توان دو حالت ایجاد کرد یکی فعال کردن مقاومت Pull up داخلی و دیگری غیر فعال کردن آن.

مثالی برای پورت C
PC7 PC6 PC5 PC4 PC3 PC2 PC1 PC0
1 1 0 0 0 1 1 0
1 0 1 1 0 1 0 1
خروجی با مقدار اولیه 1 خروجی با مقدار اولیه 0 ورودی با فعال بودن Pull-up ورودی با فعال بودن Pull-up ورودی با غیر فعال بودن Pull-up خروجی با مقدار اولیه 1 خروجی با مقدار اولیه 0 ورودی با فعال بودن Pull-up

بالای صفحه
  چگونه روی پورت ها بخوانیم یا بنویسیم؟

برای خواندن از پورت ها از دستورات زیر استفاده می کنیم:
PINx خواندن کل پورت
PINx.y مثال: PIND.5 خواندن بیت 5 از پورت D
برای نوشتن روی پورت ها از دستورات زیر استفاده می کنیم:
PORTx نوشتن روی پورتx
PORTx.y نوشتن روی پورت x و بیت y
PORTD=0x55
PORTD.7=1
a=PIND
a=PIND.3

بالای صفحه
  AVR چه حافظه هایی دارد؟

1- رجیستر های عمومی (R0-R31) این جیستر ها از 0000H تا 001FH می باشد. در بین این 32 رجیستر R26-R31 رجیستر های ویژه برای آدرس دهی غیر مستقیم می باشند که با X,Y,Z شناخته می شوند و برای آدرس دهی غیر مستقیم بکار می روند.
2- رجیستر های I/O که از آدرس 0020H تا 005FH ادامه دارد و در جمع 64 بایت می باشند.
3-رجیستر های I/O توسعه یافته که از آدرس 005FH تا 00FFH ادامه دارد (160 بایت) در بعضی از میکرو کنترلرها به علت امکانات اضافه تری که دارند تعداد 64 رجیستر کافی نبود به همین دلیل این 160 بایت به آنها اضافه شد.
4-حافظه داده داخلی (SRAM) از این حافظه برای نگهداری محتوای متغیر ها استفاده می شود که مثلا در ATMEGA32 این حافظه 2048 بایت می باشد.
5-حافظه EEPROM از این حافظه برای نگهداری محتوای متغیرهایی استفاده می شود که با قطع جریان برق میکرو این اطلاعات از بین نروند استفاده می شود. مثلا نگهداری پسورد
6- و حافظه داده خارجی

بالای صفحه


[ برگشت به صفحه اول ]