Budując mikrokontroler od podstaw można się wiele nauczyć i mieć przy tym dużo zabawy. W tym opisie zostanie zbudowany od podstaw tani klon Arduino UNO oparty na takim samym układzie ATMEGA 328P-PU co oryginał.

Potrzebne części:
- układ scalony ATMEGA 328P-PU
- regulator napięcia 5V 7805
- 2 x kondensator elektrolityczny 100uF
- 2 x kondensator ceramiczny 22pf
- 2 x dioda led czerwona 2V 20mA
- 1 x rezystor 560 Ohm
- 1 x rezystor 220 Ohm
- 1 x oscylator kwarcowy 16 MHZ
- 1 x tact switch
- przewody/zworki
- konwerter przejściówka USB-UART RS232 PL2303HX
- kabel przedłużacz USB A męsko-żeński
- zasilacz 9V/12V 1A/2A + ewentualnie gniazdo zasilające do płytek stykowych
I. Podłączenie:
Bardzo ważne jest szczegółowe zapoznanie się ze schematem układu ATMEGA 328P-PU przed przystąpieniem do podłączania zworek/przewodów/kondensatorów itp.
1.Sekcja zasilania
- zgodnie ze schematem po prawo , podłączamy napięcie 7-12V do lewej nóżki regulatora poprzez kondensator (+ dłuższa nóżka)
- do środkowej GND zasilania oraz drugi kondensator
- do prawej nóżki regulatora diodę oraz wyjście zasilania dla ATMEGA 328P-PU
- krótszą nóżką diody (-) poprzez rezystor do szyny GND
2.Sekcja programowania
- koniecznie należy podłączyć tact switch do nóżki 1 (RESET) ATMEGA
- RX układu ATMEGA do TX konwertera
- TX układu ATMEGA do RX konwertera
- zasilanie i GND konwertera do szyny VCC i GND na płytce
3.Sekcja mikrokontrolera
- pin 8,22 ATMEGA GND do GND płytki
- pin 7, 20 AVCC ATMEGA do VCC płytki
- oscylator kwarcowy 16 MHZ poprzez 2 kondensatory do szyny GND płytki
II. Wgrywanie bootloadera :
- Podłączenie bezpośrednie przewodów z płytki stykowej z układem ATMEGA 328P-PU do Arduino UNO. Jest to metoda najprostsza ale wymagająca posiadania normalnego Arduino UNO. Ja jednak wybrałem tę metodę ze względu na to, że dobrze jest mieć w razie czego pełnoprawny i w pełni sprawny mikrokontroler testowy. W naszym budowanym samodzielnie mikrokontrolerze brakuje bowiem najdroższej części czyli programator AVR USBasp ISP z taśmą KANDA 10pin.
Nowy sketch File-> Examples -> ArduinoISP należy wczytać do podstawowego Arduino UNO a następnie ustawić board,port,programmer i wypalić bootloader - Zakup programatora AVR USBasp ISP z taśmą KANDA 10pin i bezpośrednie programowanie oraz wgrywanie bootloadera w razie potrzeby
III. Przygotowanie środowiska pracy:
- Ściągnięcie i zainstalowanie środowiska Arduino (edytor/kompilator/sterowniki do Arduino)
http://arduino.cc/en/Main/Software - Ściągniecie i zainstalowanie sterowników do konwerter przejściówka USB-UART RS232 PL2303HX
http://www.prolific.com.tw/US/ShowProduct.aspx?p_id=225&pcid=41 - Podłączamy konwerter przez przedłużacz do komputera
- Jeśli mamy Windows 8/8.1 32/64 bit należy ściągnąć i zainstalować sterowniki stąd:
https://malinowo.secu.com.pl/wp-content/uploads/pl2303hxa_windows-8_driver.zip
IV. Programowanie naszego klona Arduino
- Po uruchomieniu programu Arduino ustawiamy:
– File -> Editor language-> English
– File -> Preferences -> Display line numbers
– Tools -> Port -> np. COM4
– Tools -> Board -> Arduino UNO - Otwieramy przykład z miganiem diody:
– File ->Examples -> 01.Basics -> Blink - Klikamy na upload (strzałka w prawo)
- Gdy pasek kompilacji dojdzie do końca wciskamy na ułamek sekundy przycisk reset
- Potwierdzeniem poprawnego wgrania programy jest komunikat
Warto zobaczyć:
http://www.makeuseof.com/tag/dont-spend-money-on-an-arduino-build-your-own-for-much-less/
http://blog.dulare.com/rozmnazanie-arduino-czyli-jak-zjesc-ciastko-i-miec-ciastko/
http://www.mikrokontroler.pl/content/wgranie-bootloadera-do-arduino-uno-z-wykorzystaniem-programatora-avrisp-mkii
Potrzebne części do kupienia w:
http://botland.com.pl/avr-tht-dip/1264-mikrokontroler-avr-atmega328p-pu-dip.html