Arduino Leonardo Som ISP: 7 trinn

Arduino Leonardo Som ISP: 7 trinn

Innholdsfortegnelse:

Anonim

Leonardo var min første Arduino, jeg kjøpte den fordi den er innfødt USB-funksjoner. Etter å ha eksperimentert med Arduino bestemte jeg meg for å migrere fra min Arduino Leonardo til en frittstående Atmega328p eller, for mindre prosjekter, til en mikrokontroller fra Attiny-familien.

Etter noen undersøkelser fant jeg denne veiledningen av PeterVH:

Etter flere mislykkede forsøk var jeg i stand til å brenne opplasteren og laste opp skisser med hell, og ønsket å dele det med denne Instruksjonsboksen.

Ansvarsfraskrivelse

Jeg kan ikke holdes ansvarlig for eventuelle skader som kan oppstå for deg eller ditt utstyr mens du følger fremgangsmåten som er tilstede på denne siden. Også, jeg gir absolutt ingen garanti for korrekthet og brukbarhet av informasjonen på denne Instruksjonsboksen. Vær imidlertid oppmerksom på at disse prosedyrene har virket i mitt tilfelle uten noen skade eller problemer.

forsyninger:

Trinn 1: Materialer

- Arduino Leonardo (med USB-kabel)

- En datamaskin (alle trinn er basert på datamaskinen som kjører Windows)

- Ledninger

- Mål Atmel mikrokontroller

Trinn 2: Klargjøre Leonardo

Jeg antar at du allerede har installert og konfigurert IDE, og du har kunnet laste opp skisser før (Hvis du ikke: http: //arduino.cc/en/Guide/HomePage).

1- Åpne Arduino IDE

2- Åpne ArduinoISP-skissen (Fil / Eksempler / ArduinoISP)

3- Endre følgende linjer (se bilde 1):

#define RESET SS TO #define RESET 10

#define LED_HB 9 TO #define LED_HB 13

(vi vil bruke digital pin 10 for å tilbakestille målet og vi setter hjerteslag som ledes på pin 13)

4- Lagre skissen som LeonardoISP (slik at du kan bruke det senere)

5- Vi velger Arduino Leonardo (Verktøy / Boards / Arduino Leonardo) og riktig seriell port (Verktøy / Serial Port / COM **)

5- Last opp

Hvis skissen ble lastet opp riktig, vil du se den ledede ledningen (den som er merket som L) gjør en hjerteslags-sekvens.

Nå, på din Arduino IDE-mappe:

1- Opprett en ny mappe i "maskinvare" med navnet på leofix

2- Åpne en tekstredigerer og lim inn denne koden (bilde 2):

arduinoispleo.name = Arduino som ISP (Leonardo)

arduinoispleo.communication = serie

arduinoispleo.protocol = arduino

arduinoispleo.speed = 19200

Lagre filen som programmers.txt (se bilde 3)

Deretter kobler vi noen ledninger til vår Leonardo (bilde 4):

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

ICSP MISO, 5V, SCK, MOSI, GND (se 6pin pinout på bilde 5)

Trinn 3: Mål Atmel Microcontroller 1: Atmega328p (materialer)

Trinnene som inneholder Atmega328 kan brukes til Atmega168 og Atmega8 (ikke testet)

Du trenger dette:

(Kilde:

For ekstern 16Mhz krystallkonfigurasjon:

-Atmega328p

-10k ohm motstand (jeg brukte 22K) x1

-16 MHz klokke krystall x1

- 22 pF kondensatorer x2

(eller du kan bare kjøpe noen av disse kittene, som jeg gjorde:

Virtuabotix Bareduino - Bare minimum 16 MHz Arduino Kit

Virtuabotix Bareduino Plus-Arduino Kompatibel mikrokontroller med strømregulator

Begge er bootloaded som Duemilanove, så du sparer et skritt)

For Minimal krets (Eliminerer Ekstern Klokke) -konfigurasjon:

-Atmega328p x1

Trinn 4: Mål Atmel Microcontroller 1: Atmega328p (monterer)

For ekstern 16Mhz krystallkonfigurasjon:

Se bilde 1

Du kan også følge denne veiledningen:

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

For Minimal krets (Eliminerer Ekstern Klokke) -konfigurasjon:

Bare plasser Atmega på bordet ditt (bilde 2)

Bilde 3 og 4 --- Atmega328 med ekstern 16Mhz krystall

Bilde 5 Atmega328 minimal krets

Trinn 5: Mål Atmel Microcontroller 1: Atmega328p (brennende Bootloader og Uploading Sketches)

For ekstern 16Mhz krystall og Minimal krets konfigurasjon:

1- Koble ledningene fra Leonardo til atmega328 (vennligst ta en titt på atmega328 pinouts disse er de samme med atmega168-bilde 1):

Atmega328 Arduino Leonardo

(i bildet 1 pins på svart) (bilde 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

RESET pin1 ------------------------------------- digital pin 10

Og kraftpinner 5v og bakken.

Se bildene 3 og 4 for sluttresultatet

Burning Bootloader (hvis du kjøpte Bareduino eller du bruker en opplastet Atmega328, hopp over dette trinnet)

********* VIKTIG: Ytterligere trinn for Minimal krets konfigurasjon *********

1- Gå til http://arduino.cc/no/Tutorial/ArduinoToBreadboard og last ned Breadboard.zip

2- Opprett en "maskinvare" -undermappe i Arduino Sketchbook-mappen (hvis plassering du finner i dialogboksen Arduino-preferanser). Hvis du tidligere har installert støtte for ytterligere maskinvarekonfigurasjon, har du kanskje allerede en "maskinvare" -mappe i skisseboken.

3-Flytt "breadboard" -mappen fra zip-arkivet til undermappen "Hardware" i din Arduino skissebok.

4 - Start Arduino-programvaren på nytt.

5-Du bør se "ATmega328 på et brettbrett (8 MHz intern klokke)" i Verktøy> Brettmeny.

****************** Ytterligere trinn ferdig her ******************

1- Kontroller tilkoblingene igjen

2- Velg bordet ditt:

Atmega328 med ekstern 16mhz krystall ----> Arduino Duemilanove m / ATmega328

Atmega minimal krets uten ekstern krystall -----> ATmega328 på et brettbrett (8 MHz intern klokke)

3- Seriellporten bør være den samme som Arduino Leonardo

4- Velg Arduino som ISP (Leonardo) i programmerer

5- Velg Brenn Bootloader på Verktøy-menyen

6- Hvis du får denne meldingen: Ferdig brennende bootloader, Suksess! (se bilder 6 og 8)

Hvis du får en feilmelding, må du kontrollere tilkoblingene en etter én og gjenta prosessen.

Last opp en skisse

1- Ikke flytt dine tilkoblinger

2- Velg en skisse (se bilde 1, Arduino pin konfigurasjon i rød)

3- Bruk Last opp med programmerer fra Fil-menyen, Ferdig! (bilde 9-klassisk blink)

Hvis du får en feilmelding, må du kontrollere tilkoblingene en etter én og gjenta prosessen.

Trinn 6: Mål Atmel Microcontroller 2: ATtiny84

Disse instruksjonene er ikke bare for ATiny84, de skal fungere for Attiny45, Attiny85, Attiny44 og Attiny84 ved hjelp av High Low Tech Core, og for ATtiny84 (84/44/24), ATtiny85 (85/45/25) og ATtiny2313 (4313) ved hjelp av Arduino-Tiny Core, men til slutt er prosessen den samme.

1- Installer programvarestøtten for Arduino IDE fra kjernen du valgte.

2- Plugg ledninger mellom (RX, TX, hvis tilgjengelig) MISO, MOSI, SCK, RESET, 5V og GND av ATtiny (søk etter pinout fra Atmel databladet) og din Arduino Leonardo.

HUSK: RESET pin for Leonardo er digital pin 10

3- Åpne en skisse

4 - Velg det tilsvarende kortet. I mitt tilfelle bruker jeg High-Low Tech Core, velger jeg Attiny84 (intern 8Mhz klokke).

5- Velg Arduino som ISP (Leonardo) i programmerer.

6- Bruk Last opp med programmerer fra Fil-menyen.

Viktig: Noen chips må startes opp når du bruker Arduino-Tiny Core. I så fall bruk Brenn oppstartslaster før du laster opp en skisse.

Viktig, også: Kjerner bruker annen stiftkonfigurasjon, du må henvise til dokumentasjonen når du skriver en skisse.

Eksempel: Bilde 2 er Pin-konfigurasjon for ATtiny84 fra High-Low Tech Core og bilde 3, fra Arduino-Tiny Core.

Trinn 7: Takk!

Dette er min første instruksjon, så noen kommentarer, forslag, kritikk er velkomne.