Arduino Leonardo Bilang ISP: 7 Mga Hakbang

Arduino Leonardo Bilang ISP: 7 Mga Hakbang

Talaan ng mga Nilalaman:

Anonim

Ang Leonardo ang aking unang Arduino, binili ko ito dahil ito ay katutubong kakayahan ng USB. Pagkatapos ng pag-eksperimento sa Arduino, nagpasya akong mag-migrate mula sa aking Arduino Leonardo sa isang standalone na Atmega328p o, para sa mas maliit na mga proyekto, sa isang microcontroller mula sa pamilya Attiny.

Pagkatapos ng ilang pananaliksik natagpuan ko ang gabay na ito ni PeterVH:

Matapos ang ilang mga nabigong pagtatangka, nasunog ko ang bootloader at matagumpay na nag-upload ng mga sketch at gustong ibahagi iyon sa Instructable na ito.

Disclaimer

Hindi ako mananagot sa anumang pinsala na maaaring mangyari sa iyo o sa iyong kagamitan habang sumusunod sa mga pamamaraan na naroroon sa pahinang ito. Gayundin, nagbibigay ako ng ganap na walang garantiya sa katumpakan at kakayahang magamit ng impormasyon tungkol sa Instructable na ito. Mangyaring tandaan, gayunpaman, na ang mga pamamaraan na ito ay nagtrabaho sa aking kaso nang walang anumang pinsala o problema.

Mga Kagamitan:

Hakbang 1: Materyales

- Arduino Leonardo (may USB cable)

- Isang computer (lahat ng mga hakbang ay batay sa computer na tumatakbo sa Windows)

- Mga Wires

- Target Atmel microcontroller

Hakbang 2: Paghahanda ng Leonardo

Ipagpalagay ko na na-install na at naisaayos mo ang IDE, at na-upload mo ang mga sketch bago (Kung wala ka: http: //arduino.cc/en/Guide/HomePage).

1- Buksan ang Arduino IDE

2- Buksan ang sketch ArduinoISP (File / Mga Halimbawa / ArduinoISP)

3- Baguhin ang mga sumusunod na linya (tingnan ang larawan 1):

#define RESET SS TO #define RESET 10

#define LED_HB 9 TO #define LED_HB 13

(gusto naming gamitin ang digital pin 10 upang i-reset ang target at itinatakda namin ang puso beating na humantong sa pin 13)

4- I-save ang sketch bilang LeonardoISP (kaya maaari mo itong gamitin sa ibang pagkakataon)

- Pinipili namin ang Arduino Leonardo (Tools / Boards / Arduino Leonardo) at ang naaangkop na Serial Port (Mga Tool / Serial Port / COM **)

- Mag-upload

Kung tama ang pag-upload ng sketch, makikita mo ang on-board na humantong (ang isa na minarkahan bilang L) na gumagawa ng pagkakasunud-sunod ng tibok ng puso.

Ngayon, sa iyong folder ng Arduino IDE:

1- Gumawa ng bagong folder sa "hardware" na may pangalan ng leofix

2- Buksan ang isang text editor at i-paste ang code na ito (larawan 2):

arduinoispleo.name = Arduino bilang ISP (Leonardo)

arduinoispleo.communication = serial

arduinoispleo.protocol = arduino

arduinoispleo.speed = 19200

I-save ang file bilang programmers.txt (tingnan ang larawan 3)

Susunod ikinonekta namin ang ilang mga wires sa aming Leonardo (larawan 4):

Digital Pin 10,1 (TX), 0 (RX)

ICSP MISO, 5V, SCK, MOSI, GND (tingnan ang 6pin pinout sa larawan 5)


Hakbang 3: Target Atmel Microcontroller 1: Atmega328p (materyales)

Ang mga hakbang na nagtatampok ng Atmega328 ay maaaring magamit para sa Atmega168 at ang Atmega8 (hindi sinusuri)

Kelangan mo to:

(Pinagmulan:

Para sa panlabas na configuration ng 16Mhz kristal:

-Atmega328p

-10k Ohm risistor (ginamit ko 22K) x1

-16 MHz orasan kristal x1

- 22 pF capacitors x2

(o maaari mo lamang bilhin ang alinman sa mga kit na ito, tulad ng ginawa ko:

Virtuabotix Bareduino - Walang kinakailangang 16 MHz Arduino Kit

Virtuabotix Bareduino Plus- Arduino Mga katugmang Microcontroller na may Power Regulator

Ang parehong ay bootloaded bilang Duemilanove, kaya mong i-save ang isang hakbang)

Para sa Minimal Circuit (Pag-aalis ng Panlabas na Orasan) pagsasaayos:

-Atmega328p x1

Hakbang 4: Target Atmel Microcontroller 1: Atmega328p (magtipun-tipon)

Para sa panlabas na configuration ng 16Mhz kristal:

Tingnan ang larawan 1

Maaari mo ring sundin ang gabay na ito:

www.virtuabotix.com/product-bareduino328-barebones-microcontroller-guide/

Para sa Minimal Circuit (Pag-aalis ng Panlabas na Orasan) pagsasaayos:

Ilagay lamang ang Atmega sa iyong board (larawan 2)

Larawan 3 at 4 --- Atmega328 may panlabas na 16Mhz kristal

Larawan 5 Atmega328 minimal circuit

Hakbang 5: Target Atmel Microcontroller 1: Atmega328p (nasusunog na Bootloader at Pag-upload ng Sketch)

Para sa mga panlabas na 16Mhz kristal at Minimal circuit configuration:

1- Connect ang mga wires mula sa Leonardo sa atmega328 (pakitingnan ang mga atmega328 pinouts na ito ay pareho sa atmega168 -picture 1):

Atmega328 Arduino Leonardo

(sa larawan 1 pin sa itim) (larawan 2-6pin ICSP)

RX pin 2 ------------------------------------- digital pin 0

TX pin 3 ------------------------------------- digital pin 1

MISO pin 18 ----------------------------------- ICSP pin MISO

MOSI pin 17 ----------------------------------- ICSP pin MOSI

SCK pin 19 ----------------------------------- ICSP pin SCK

I-reset ang pin1 ------------------------------------- digital pin 10

At kapangyarihan pins 5v at lupa.

Sumangguni sa mga larawan 3 at 4 para sa huling resulta

Nagsunog ng Bootloader (kung binili mo ang Bareduino o gumagamit ka ng isang bootloaded na Atmega328 laktawan ang hakbang na ito)

********* MAHALAGA: karagdagang hakbang para sa Minimal circuit configuration *********

1- Pumunta sa http://arduino.cc/en/Tutorial/ArduinoToBreadboard at i-download ang Breadboard.zip

2- Gumawa ng isang "hardware" na sub-folder sa iyong Arduino sketchbook folder (na ang lokasyon mo ay matatagpuan sa dialog ng mga kagustuhan ng Arduino). Kung dati kang naka-install na suporta para sa karagdagang configuration ng hardware, maaaring mayroon ka ng folder na "hardware" sa iyong sketchbook.

3-Ilipat ang "breadboard" na folder mula sa zip archive sa "hardware" sub-folder ng iyong Arduino sketchbook.

4-I-restart ang Arduino software.

5-Dapat mong makita ang "ATmega328 sa isang breadboard (8 MHz panloob na orasan)" sa Tools> Board menu.

****************** Karagdagang hakbang matapos dito ******************

1- Suriin muli ang mga koneksyon

2- Piliin ang iyong board:

Atmega328 may panlabas na 16mhz kristal ----> Arduino Duemilanove w / ATmega328

Atmega minimal circuit na walang panlabas na kristal -----> ATmega328 sa isang breadboard (8 MHz panloob na orasan)

3- Ang Serial Port ay dapat na katulad ng Arduino Leonardo

4- Piliin Arduino bilang ISP (Leonardo) sa Programmer

5- Piliin Isulat ang Bootloader sa Mga Tool sa Menu

6- Kung makuha mo ang mensaheng ito: Tapos na ang pagsunog ng bootloader, Tagumpay! (tingnan ang mga larawan 6 at 8)

Kung nakatanggap ka ng isang mensahe ng error, suriin ang iyong mga koneksyon nang isa-isa at ulitin ang proseso.

Mag-upload ng sketch

1 - Huwag ilipat ang iyong mga koneksyon

2- Pumili ng sketch (tingnan ang larawan 1, Arduino pin configuration sa red)

3- Gamitin Mag-upload gamit ang programmer mula sa menu ng File, Tapos na! (larawan 9-classic na blink)

Kung nakatanggap ka ng isang mensahe ng error, suriin ang iyong mga koneksyon nang isa-isa at ulitin ang proseso.

Hakbang 6: Target Atmel Microcontroller 2: ATtiny84

Ang mga tagubilin na ito ay hindi lamang para sa ATiny84, dapat silang magtrabaho para sa Attiny45, Attiny85, Attiny44 at Attiny84 gamit ang High-Low Tech Core, at para sa ATtiny84 (84/44/24), ATtiny85 (85/45/25), at ATtiny2313 (4313) gamit ang Arduino-Tiny Core, ngunit sa wakas, ang proseso ay pareho.

1- I-install ang suporta ng software para sa Arduino IDE mula sa core na pinili mo.

2 - Plug wires sa pagitan ng (RX, TX, kung magagamit) MISO, MOSI, SCK, RESET, 5V at GND ng ATtiny (paghahanap para sa pinout mula sa datasheet Atmel) at ang iyong Arduino Leonardo.

Tandaan: ang pag-reset ng pin para sa Leonardo ay digital pin 10

3- Buksan ang sketch

4-Piliin ang katumbas na board. Sa aking kaso, gamit ang High-Low Tech Core, pinipili ko Attiny84 (panloob na 8Mhz na orasan).

5- Piliin Arduino bilang ISP (Leonardo) sa Programmer.

6 Gamitin Mag-upload gamit ang programmer mula sa menu ng File.

Mahalaga: Ang ilang mga chips ay kailangang bootloaded kapag ginagamit ang Arduino-Tiny Core. Sa ganitong paggamit ng kaso I-burn ang bootloader bago ka mag-upload ng sketch.

Mahalaga rin: Ang mga Cores ay gumagamit ng iba't ibang pagsasaayos ng pin, kailangan mong sumangguni sa kanilang dokumentasyon kapag nagsusulat ng sketch.

Halimbawa: Ang Larawan 2 ay pagsasaayos ng Pin para sa ATtiny84 mula sa High-Low Tech Core at larawan 3, mula sa Arduino-Tiny Core.

Hakbang 7: Salamat!

Ito ang aking unang Instructable kaya ang anumang mga komento, mungkahi, panunuri ay maligayang pagdating.