دلایل زیادی برای ساخت مدار آردوینو خود بر روی یک پروتوبرد یا یک برد مدار چاپی سفارشی وجود دارد. در قلب پلتفرم آردوینو یک میکروکنترلر AVR قرار دارد، به طور معمول برای برنامهریزی تراشه Atmel AVR به یک برنامهنویس سختافزاری خاص و فایلهای هگز مناسب نیاز دارید. خوشبختانه، آردوینو یک پلتفرم مبتدی پسند است زیرا یک بوت لودر در تراشه AVR گنجانده شده است که به شما اجازه می دهد تا برد را روی پورت سریال بدون برنامه نویس اختصاصی AVR برنامه ریزی کنید.
بوت لودر اساسا یک فایل هگز کوچک است که با روشن کردن برد آردوینو اجرا می شود. در ابتدا به اطراف نگاه می کند تا ببیند آیا کامپیوتر (در پورت سریال) سعی در برنامه ریزی آن دارد یا خیر. در این صورت، کد برنامه را از رایانه جذب می کند و آن را در یک مکان خاص به تراشه AVR منتقل می کند تا بوت لودر بازنویسی نشود. اگر رایانه سعی در آپلود هیچ کدی نداشته باشد، به میکروکنترلر دستور می دهد تا کدی را که قبلاً در داخل ذخیره شده است اجرا کند.
اکنون، به آردوینو UNO مورد علاقه ما نگاهی بیندازید تا تراشه AVR داخل آن را بیابید. این ATMega328P-PU، یک نسخه کم مصرف از ATMega328-PU سنتی است. P نشاندهنده pico برای pico-power است که فناوری ATMEL است که به میکروکنترلر اجازه میدهد با توان کمتری کار کند. این تراشه ATMega328 دارای یک بوت لودر از پیش سوزانده شده است و به شما امکان می دهد بدون استفاده از هیچ سخت افزار اضافی کد را آپلود کنید. بنابراین اگر قصد دارید پلتفرم میکروکنترلر منبع باز خود را بسازید - آردوینو، بدون شک به یک تراشه AVR با بوت لودر از قبل شارژ شده نیاز دارید!
این قسمت از آموزش AVR به شما یاد می دهد که چگونه با آردوینو بوت لودر چیپ آردوینو یعنی Atmega328P خود را بسازید. ابتدا به یک میکروکنترلر Atmega328P-PU خالی با چند جزء پشتیبانی کننده نیاز داریم:
- Atmega328-PU/ Atmega328P-PU – 1
- 16 مگاهرتز Xstal - 1
- خازن سرامیکی 22 pF - 2
- برد برد کوچک / پروتوبرد و سوکت آی سی 28 پین (PDIP) - 1
- برد آردوینو UNO شما (در اینجا به عنوان برنامه نویس استفاده می شود)
برای جزئیات بیشتر: آردوینو خود را بسازید و یک میکروکنترلر ATmega را بوت کنید - قسمت 1
در ادامه، متن انگلیسی این مطلب را میتوانید مشاهده نمایید:
There are many reasons to build your own Arduino circuit on a protoboard or a custom-designed printed circuit board. At the heart of the Arduino platform is an AVR microcontroller, in usual way you need a special hardware programmer and suitable hex files to program the Atmel AVR chip. Fortunately, Arduino is a beginner-friendly platform because a bootloader is included in the AVR chip which allows you to program the board over the serial port without any dedicated AVR programmer.
The bootloader is basically a small hex file that runs when you turn on the Arduino board. At first looks around to see if the computer (at the serial port) is trying to program it. If so, it absorbs the program code from the computer and transfers it into the AVR chip, in a specific location so as not to overwrite the bootloader. If the computer isn’t trying to upload any code, it instructs the microcontroller to run the code that’s already stored inside.
Now, have a look at our favorite Arduino UNO to find out the AVR chip inside. It is ATMega328P-PU, a low-power version of the traditional ATMega328-PU. The P indicates pico for pico-power which is a technology ATMEL has developed that allows the microcontroller to run with less power. This ATMega328 chip holds a pre-burned bootloader, allows you to upload code without using any additional hardware. So if you are in a plan to make your own open source microcontroller platform – Arduino, no doubt, you need an AVR chip with pre-charged bootloader!
This part of AVR tutorial will teach you how to make your own Arduino chip, ie Atmega328P with Arduino Bootloader. First we need one blank Atmega328P-PU microcontroller with a few supproting components:
- Atmega328-PU/ Atmega328P-PU – 1
- 16Mhz Xstal – 1
- 22pF Ceramic Capacitor – 2
- Small Breadboard / Protoboard & 28-Pin (PDIP) IC socket – 1
- Your Arduino UNO board (here used as a programmer)
For more detail: Build Your Own Arduino & Bootload an ATmega Microcontroller – part 1