آموزش جامع میکروکنترلر AVR جلسه8 : در این جلسه میخوام در مورد فیوز بیت های میکرو کنترلر AVR کمی توضیح بدم ؛ این مطلب تقریبا کامل هستش(برای تازه کار ها) و انشاالله کم کم کاملش میکنم و نکات جزئی تر رو هم قرار میدم.(اینم از جلسه 8 ام از سلسله مطالب آموزش جامع avr )
آموزش جامع میکروکنترلر AVR جلسه8
اگه در کدویژن روی دکمه ی زیر ( Chip Programmer ) کلیک کنید.
صفحه ی زیر باز میشه که در این مطلب میخوام تمام موارد شکل زیر رو توضیح بدم.
در زیر میخوام به ترتیب شماره ای که در عکس بالا گزاشتم….تمام مواردش رو توضیح بدم.
(توضیح اون 16 تا مورد که تو عکس بالا داخل اون مستطیل آبی میبینید)
توجه : فیوزبیت ها با 1 غیر فعال و با 0 فعال میشوند.
عمل کرد : با این 4 تا فیوز بیت ما فرکانس کاری میکرو رو تعیین میکنیم…..که هر چی عدد بزرگتری رو انتخاب کنید ….پروژتون سریع تر عمل میکنه.
توجه1 :
توجه 2 : مقدار فرکانس پیش فرض 1Mhz میباشد.(در حالتی که فیوز بیت ها رو تغییر ندید ، مقدار فرکانس پیش فرض 1Mhz هستش)
به نظر من : بهتره که رو 8Mhz تنظیم کنید.
منبع فرکانس و اندازش | CKDEL3..0 |
1Mhz – داخلی | 0001 |
2Mhz – داخلی | 0010 |
4Mhz – داخلی | 0011 |
8Mhz – داخلی | 0100 |
عملکرد : زمان شروع به کار میکروکنترلر بعد از اتصال به منبع تغزیه.تو حالت پیشفرض SUT0 فعال و STU1 غیر فعال هستش.
به نظر من : بهتره که تو حالت عادی دست بهش نزنید و بزارید رو حالت پیش فرض بمونه
Delay | SUT1..0 | CKSEL0 |
4.1ms | 00 | 0 |
65ms | 01 | 0 |
– | 10 | 0 |
4.1ms | 11 | 0 |
65ms | 00 | 1 |
– | 01 | 1 |
4.1ms | 10 | 1 |
65ms | 11 | 1 |
عملکرد : با فعال کردن و غیر فعال کردن این دو فیوز بیت تعیین میکنیم که اگه ولتاژ تغزیه میکرو از چه حدی پایین تر اومد اون وقت میکرو ریست بشه.
به طور پیش فرض فیوز بیت BDEN فعال و BODLEVEL غیر فعال هستش.
عملکرد | BODLEVEL | BODEN |
اگه VCC کمتر از 4v بشه ، میکرو ریست میشه | 0 | 0 |
غیر فعال | 1 | 1 |
اگه VCC کمتر از 2.7v بشه ، میکرو ریست میشه | 1 | 0 |
این فیوز بیت برا انتخاب بردار RESET هستش.تو حالت عادی اگه میکروکنترلر AVR ریست بشه بردار RESET از 0X0000 شروع میشه (زمانی که این فیوز بیت غیر فعال هستش) ولی اگه این فیوز بیت رو فعال کنیم بردار RESET از جایی شروع میشه که توسط 2 فیوز بیت BOOTSZ1 و BOOTSZ0 تعیین کردیم.(یعنی اگه زمانی میکرو ریست شد ؛ بردار ریست از 0X0000 دیگه شروع نمیشه و مثلا از 0X00FF شروع میشه.)>>>>اگه نفهمیدید بگید تا بیشتر توضیح بدم.
توجه : تو ( بعضی از ) میکروکنترلر ها حافظه فلش به دو قسمت کاربردی(جایی که اطلاعات ما موقع پروگرام کردن اطلاعاتمون درش قرار میگیره) و BOOT تقسیم میشود.
توضیح : این فیوز بیت میزان حافظه اختصاص داده شده به BOOT رو تعیین میکنند.
Boot Loader چیست
(تو حالت عادی هر دو فیوز بیت فعال هستند…یعنی هر دو صفر هستن)
(×_×) اینم از جدول مقدار دهی این دو فیوز بیت.
دانلود آموزش کار با BOOT LOADER + نرم افزار
منبع فایلی که برا دانلود گزاشتم
وقتی میکرو رو اطلاعاتش رو پاک میکنی هم اطلاعات توی FLASH پاک میشه و هم اطلاعات روی EEPROM
حالا اگه بخوایم کاری کنیم که موقه پاک کردن میکرو کنترلر حافظه EEPROM اطلاعاتش پاک نشه باید این فیوز بیت رو فعال کنید
(تو حالت عادی این فیوز بیت غیر فعال هستش)
با فعال شدن این فیوزبیت مقدار توان مصرفی افزایش یافته ولی در عوض سطح نوسان توسط آمپلی فایر افزایش می یابد و باعث بهبود عملکرد در محیط نویزی خواهد شد.(در حالت پیش فرض این فیوز بیت غیر فعال هستش)
این فیوز بیت به طور پیش فرض فعال هستش و پایه های PC2 تا PC5 غیر فعال هستند (MEGA16) و نمیتونید ازشون به عنوان ورودی/خروجی (I/O) استفاده کنید.
این فیوز بیت برا پروگرام کردن میکرو در حالت JTAG هستن.
لذا اگه میخواین از PORTC در پروژتون استفاده کنید ، حتما این فیوز بیت رو غیر فعال کنید.
لپ کلوم : این فیوز بیت برا پیدا کردن عین برنامه به صورت آنلاین هستش.
اگه JTAGEN فعال باشه برنامه میکرو هم قفل نشده باشه ، با فعال کردن این فیوز بیت میشه پروژه مون رو به صورت آنلاین از طریق نرم افزار AVR STDIO مشاهده کرد.
در شکل زیر قسمت فیوز بیت ها (مستطیل آبی رنگ) رو توضیح دادم و بقیه قسمت هاش هم بمونه برا بعد (الان حسش نیست که بگم. ×_×)
در آخر اگه چیزی رو کم گفتم یا نگفتم یا بد گفتم لطفا اعلام کنید.