آردوینو Arduinoآموزش AVR

برنامه نویسی ATtiny85 با آردوینو و USB مستقیم

خانواده ATtiny مجموعه ای از کوچکترین میکروکنترلر های AVR هستند. این میکروکنترلرها قادر به استفاده از بسیاری از کتابخانه های موجود در بستر آردوینو هستند. تراشه میکروکنترلر ATtiny85 میکروکنترلر 8 پین ، 8 بیتی و از خانواده AVR است. اندازه کوچک و مصرف کم آن باعث شده است که برای پروژه های قابل حمل، محدودیت فضا و نیاز به انرژی کم مناسب باشد. اما قرار دادن کد روی تراشه تاینی 85 (ATtine85) می تواند کمی چالش برانگیز باشد زیرا هیچ رابط USB مستقیمی ندارد.

پدر این آموزش ، ما می خواهیم یک برد برنامه نویسی ATtiny85 بسازیم ، به طوری که می توانیم آن را مانند برد های آردوینو به صورت مستقیم برنامه نویسی کنیم.

برای برنامه نویسی ATtiny85 با USB

قطعات مورد نیاز برای برنامه نویسی ATtiny85 با USB

  1. Arduino UNO (فقط برای اولین بار هنگام بارگذاری بوت لودر)
  2. آیسی ATtiny85
  3. کابل USB نر نوع A (معمولی)
  4. 3 مقاومت (2 × 47Ω و 1 × 1kΩ)
  5. 2 × دیود زنر
  6. 1 × IN5819 دیود

میکروکنترلر ATtiny85 چیست؟

ATtiny85 یک میکروکنترلر 8 بیتی با کارایی بالا ، کم مصرف و مبتنی بر معماری پیشرفته RISC است. این تراشه میکروکنترلر امکانات و ویژگی های مناسبی است. تاینی 85 دارای تایمر/کانتر، وقفه، مبدل آنالوگ به دیجیتال و … است.

برای یادگیری آردوینو (برنامه نویسی، ساخت ربات، ارتباط با اندروید) روی دوره آموزش آردوینو کلیک کنید.
برای یادگیری کامل الکترونیک روی دوره آموزش الکترونیک کلیک کنید.

میکروکنترلر ATtiny85

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

نصب بوت لودر در ATtiny85 با Arduino Uno

برای برنامه نویسی ATtiny85 بدون برد Arduino ، ابتدا باید بوت لودر را با استفاده از برد Arduino UNO در آن بارگذاری کنیم. این یک فرآیند یکباره است و پس از انجام این کار دیگر نیازی به برد UNO نخواهیم داشت. Boot-loader یک برنامه ویژه است که در میکروکنترلر اجرا می شود که باید برنامه ریزی شود. یکی از راحت ترین راه ها برای بارگذاری داده های برنامه خود بر روی میکروکنترلر ، استفاده از طریق بوت لودر است. Boot-loader روی میکروکنترلر قرار می گیرد و دستورالعمل های ورودی را انجام می دهد ، و سپس اطلاعات جدید برنامه را در حافظه میکروکنترلر می نویسد.

فلش کردن یک بوت لودر روی میکروکنترلر ، نیاز به سخت افزار خارجی ویژه (Programmer Boards) را برای برنامه ریزی میکروکنترلر برطرف می کند و شما می توانید مستقیماً با استفاده از اتصال USB آن را برنامه ریزی کنید. برد Digispark ATtiny85 بوت لودر “micronucleus tiny85” را اجرا می کند ، که در اصل توسط Bluebie نوشته شده است. boot-loader کدی است که از قبل در Digispark برنامه ریزی شده است و به آن اجازه می دهد مانند یک دستگاه USB عمل کند تا بتواند توسط Arduino IDE برنامه ریزی شود. ما همچنین می خواهیم همان bootloader digispark attiny85 را در ATtiny85 فلش کنیم.

راهنمای گام به گام فلش بوت لودر بر روی ATtiny85 با استفاده از Arduino Uno و Arduino IDE در زیر آورده شده است:

مرحله 1: پیکربندی Arduino Uno به عنوان ISP

از آنجا که ATtiny85 فقط یک میکروکنترلر است ، برای برنامه نویسی به ISP (برنامه ریزی درون سیستم) نیاز دارد. بنابراین برای برنامه نویسی ATtiny85 ، ابتدا باید Arduino Uno را به عنوان ISP پیکربندی کنیم تا به عنوان یک برنامه نویس برای ATtiny85 عمل کند. برای این منظور ، Arduino Uno را به Laptop متصل کرده و Arduino IDE را باز کنید. پس از آن ، به  File > Example > ArduinoISP بروید و کد Arduino ISP را بارگذاری کنید.

پیکربندی Arduino Uno به عنوان ISP

مرحله 2: مدار برای فلش کردن Boot-loader در ATtiny85

شماتیک کامل برای فلش کردن Boot-loader در ATtiny85 در زیر آورده شده است:

مدار برای فلش کردن Boot-loader در ATtiny85

همچنین اگر در مورد این مطلب سوالی داشتید در انتهای صفحه در قسمت نظرات بپرسید

یک خازن 10 میکروگرم بین پایه RESET و GND آردوینو متصل است. اتصالات کامل در جدول زیر آورده شده است:

ATtiny85 Pin Arduino Uno Pin
Vcc 5V
GND GND
Pin 2 13
Pin 1 12
Pin 0 11
Reset 10

اکنون Arduino Uno را به لپ تاپ متصل کرده و Arduino IDE را باز کنید. پورت صحیح COM را انتخاب کنید. در صورتی که در این مرحله مشکلی دارید، مقاله آپلود کد در آردوینو را مشاهده کنید.

پس از این ، فایلهای ATtiny85 Boot-loader را از اینجا بارگیری کنید. “Burn_AT85_bootloader.bat” را باز کنید و شماره پورت COM را برابر با شماره پورت COM آردوینو اونو قرار دهید.

اکنون پرونده های ویرایش شده “Burn_AT85_bootloader.bat” و “ATtiny85.hex” را به داخل پوشه (C:\Program Files (x86)\Arduino) منتقل کنید.

پس از آن ، بر روی “Burn_AT85_bootloader.bat” راست کلیک کرده و “Run as Admin” را انتخاب کنید. تقریباً 5 تا 6 ثانیه طول می کشد تا بوت لودر را فلش کنید. اگر همه چیز خوب پیش رفت ، باید این پیام را دریافت کنید “AVRdude done. Thank you. Press any key to continue…”

نصب بوت لودر در ATtiny85

با این کار ، بوت لودر با موفقیت روی تراشه ATtiny85 نصب می شود. اکنون وقت آن است که USB را مستقیما به ATtiny85 متصل کنیم تا بتوانیم آن را برنامه ریزی کنیم.

مدار پروگرامر USB میکروکنترلر ATtiny

در مدار زیر ما یک USB نری را به میکروکنترلر ATtine85 متصل میکنیم.

مدار پروگرامر USB میکروکنترلر ATtiny

R3 یک مقاومت پول آپ است که بین پایه های Vcc و PB3 متصل می شود. دیود های زنر (D1-D2) برای محافظت کامل از رابط USB اضافه می شوند. پس از لحیم کاری تمام اجزای سازنده برد پروگرامر ATtiny من مشابه زیر است:

ساخت پروگرامر USB برای تاینی 85

نصب درایورهای Digispark

برای برنامه نویسی ATtiny85 با استفاده از USB ، باید درایورهای Digispark را بر روی لپ تاپ خود نصب کنید. اگر آنها را ندارید ، می توانید آن را با استفاده از این لینک بارگیری کنید. سپس ، فایل zip را اکسترکت کرده و بر روی برنامه “DPinst64.exe” دوبار کلیک کنید تا درایورها نصب شود.

نصب درایور های دیجی اسپارک

پس از نصب موفقیت آمیز درایورها ، برد ATtiny85 خود را به لپ تاپ متصل کنید. اکنون به Device Manager بروید و دستگاه ATtiny85 در لیست “libusb-win32 devices” به عنوان “Digispark Bootloader” مشاهده می کنید. اگر نمی توانید “libusb-win32 devices” را در Device Manager پیدا کنید ، به View بروید و روی “Show hidden Devices” کلیک کنید.

تنظیم Arduino IDE برای برنامه نویسی ATtine85

برای برنامه ریزی برد ATtiny85 با Arduino IDE ، ابتدا باید برد Digispark را به Arduino IDE اضافه کنیم. برای این منظور ، به File> Preferences بروید و پیوند زیر را در Additional Boards Manager URLs اضافه کنید و “OK” را کلیک کنید.

http://digistump.com/package_digistump_index.json

تنظیم Arduino IDE برای برنامه نویسی ATtine85

پس از آن ، به Tools> Board> Board Manager بروید و ‘Digistump AVR’ را جستجو کنید و آخرین نسخه را نصب کنید.

نصب Digistump در آردوینو IDE

پس از نصب آن ، اکنون می توانید برد جدیدی را در فهرست Board با عنوان ‘Digispark’ مشاهده کنید.

سپس به مسیر File> Examples> Basics رفته و Blink را باز کنید.

شماره پین ​​موجود در آنجا را از LED_BUILTIN به 0 تغییر دهید.

کدنویسی ATtine85 با آردوینو IDE

اکنون به Tools -> Board برگردید و برد “Digispark (Default – 16mhz)” را انتخاب کنید. سپس بر روی دکمه آپلود در Arduino IDE کلیک کنید.

توجه: فقط وقتی که Arduino IDE پیامی را با عنوان “Plugin device now” نمایش داد، برد ATtiny85 را به رایانه وصل کنید.

پس از بارگذاری کد ، LED متصل به ATtiny85 باید شروع به چشمک زدن کند.

به این ترتیب می توانید برد برنامه نویسی ATtiny85 با Arduino IDE خود را بسازید.

میخواهید برنامه نویسی STM32 را یاد بگیرید؟

دوره آموزش STM32

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

دوره آموزش الکترونیک
دوره آموزش آردوینو

میخواهید آردوینو را به صورت پروژه محور یاد بگیرید؟ برای مشاهده توضیحات روی دوره مورد نظر کلیک کنید

برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام آیرنکس عضو شوید.

محمد رحیمی

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید را قرار دهم. (در خصوص سوال در مورد این مطلب از قسمت نظرات همین مطلب اقدام کنید) سعی میکنم تمام نظرات را پاسخ دهم.

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

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