ریختن بوت لودر آردوینو روی AVR با استفاده از آردوینو

نوشته شده توسط admin_irasa 2019/06/22 10:33:58 3 نظرات آردوینو,
  • بوت لودر چیست؟

میکروکنترلرهای avr یک آیسی کوچک هستند که قابلیت های فراوانی دارند. ولی برای پروگرم کردنشون یک سری دردسرها وجود داره. مثلا به یک پروگرمر خاص نیاز داریم و سخت افزار مرتبط با خودش رو باید قرار بدیم و … که این موضوعات برای کسی که میخواد تازه کار با avr رو شروع کنه ، ممکنه خیلی دوست داشتنی نباشه. برد آردوینو اومده همه این مشکلات رو یه جا حل کرده و یک فایل hex. میریزه روی برد و با این کار ، اون موقع تنها چیزی که برای پروگرم نیاز داریم ، یک کابل usb هست. به زبان ساده تر میکروکنترلرها از طریق پروگرمرها ، پروگرم میشن مگه این که در میکروکنترلر یه فرمور (firmware) رو داشته باشید که بتونید این فرمور رو عوض کنید و یک فرمور جدید بریزید و دیگه نیازی به پروگرمر نداشته باشید. به این فرمور میگن بوت لودر.

 

  • چرا باید بوت لودر نصب کنیم ؟

اگه بخواید که برد آردوینو مخصوص خودتون رو داشته باشید و یا میکروکنترلر بردتون رو عوض کنید ، لازم هست که بر روی میکروکنترلر بوت لودر بریزید. حالت دیگه ای هم که ممکنه ایجاد بشه اینه که بر روی میکروکنترلرتون یک بوت لودر بد نصب شده باشه ( البته این حالت کم اتفاق میفته) و در اینجا هم لازم هست که بوت لودر رو مجددا بر روی میکروکنترلر بریزید. مورد دیگه هم این که ممکنه تنظیمات عجیب و غریبی روی برد انجام داده باشیم و ساده ترین راه اینه که بوت لودر جدید رو روی برد بریزیم و اون رو به تنظیمات کارخانه ای برگردونیم. گاهی اوقات هم مشاهده شده که افراد مختلف ، پورت سریال برد رو خاموش میکنند و دیگه راهی برای ریختن کد روی برد وجود نداره. در این هنگام هم ریختن مجدد بوت لودر میتونه ساده ترین و سریعترین راه باشه.

همونطور که گفتیم این که بوت لودر بدی روی برد ریخته شده باشه خیلی خیلی نادر هست و در %99.9 که برای اول برد رو میخریم و نمیتونیم کد رو روش بریزیم ، مشکل از بوت لودر اون نیست و تنها %0.1 احتمال داره که بوت لودراون مشکل داشته باشه.

 

  • قطعات مورد نیاز :
  1. یک عدد برد آردوینو uno
  2. یک عدد میکروکنترلر atmega328
  3. یک عدد مقاومت 10 کیلواهم
  4. یک کریستال 16 مگاهرتز

 

  • شناخت بهتر atmega328 :

شاید بهتر باشه یک بار دیگه به پایه های میکروکنترلر atmega328P نگاه کنیم. هر چند که ممکنه قبلا این پایه ها رو دیده باشید. ( توجه داشته باشید که بهتره از میکروکنترلر atmega328P استفاده کنیم تا میکروکنترلر atmega328 ) . در شکل زیر پایه های خروجی میکروکنترلر ، از نگاه برد آردوینو آورده شده است :

 

  • ریختن بوت لودر arduino روی میکروکنترلر avr :

حالا که نگاهی به پایه های میکروکنترلر انداختیم وقتش هست که بوت لودر آردوینو رو روی یک میکروکنترلر خام atmega328P بریزیم. در ابتدا مداری مطابق شکل زیر ببندید:

 

حال در نرم افزار آردوینو ، از منوی File ، گزینه Example را انتخاب کنید و از بین گزینه Example ، مثال ArduinoISP را مطابق شکل زیر باز کنید :

 

سپس با زدن گزینه آپلود ، این مثال را بر روی برد آردوینو خود بریزید.حال از منوی Tools ، بخش Programmer گزینه arduino as ISP را مطابق شکل زیر انتخاب کنید:

 

پس از این کار از منوی Tools ، گزینه Burn bootloader را بزنید و بوت لودر آردوینو را روی میکروکنترلر avr خود بریزید. پس از این کار باید  عبارت Done burning bootloader برای شما ( از پایین نرم افزار)نشان داده شود. کار شما تمام شده است و حال دیگر میتوانید بر روی میکروکنترلر خود ، کدهای آردوینو بریزید. برای تست این کار هم تنها کافی است میکروکنترلری که جدیدا روی اون بوت لودر آردوینو رو ریختید با میکروکنترلر خود برد آردوینو عوض کنید و یک نمونه کد رو روش بریزید.

3 نظرات

امیر تاریخی:
2019/11/03 03:38:29, 03:38:29 AM
پاسخ

سلام مطلب بالا خیلی خوبی بود

علی گرامی:
2019/11/14 12:08:37, 12:08:37 PM
پاسخ

بسیار عالی بود

مهدی:
2019/12/24 13:48:07, 01:48:07 PM
پاسخ

سلام این چه نوع کریستالی هست که سه پایه دارد ؟ ممنون میشم نوع کریستال را ذکر کنید .

ایران آسا الکترونیک:
2019/12/30 20:49:09, 08:49:09 PM

سلام از کریستال های دو پایه معمولی استفاده کنید.

ارسال نظر

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