Innholdsfortegnelse:

Programmering av brikker med din Arduino - AVR ISP som dekker ATTiny85, ATTiny2313 og ATMega328: 3 trinn
Programmering av brikker med din Arduino - AVR ISP som dekker ATTiny85, ATTiny2313 og ATMega328: 3 trinn

Video: Programmering av brikker med din Arduino - AVR ISP som dekker ATTiny85, ATTiny2313 og ATMega328: 3 trinn

Video: Programmering av brikker med din Arduino - AVR ISP som dekker ATTiny85, ATTiny2313 og ATMega328: 3 trinn
Video: Lesson 2: Getting Arduino Software and using Documentation for SunFounder Arduino Kit | SunFounder 2024, November
Anonim
Programmering av brikker med din Arduino - AVR ISP som dekker ATTiny85, ATTiny2313 og ATMega328
Programmering av brikker med din Arduino - AVR ISP som dekker ATTiny85, ATTiny2313 og ATMega328
Programmering av brikker med din Arduino - AVR ISP som dekker ATTiny85, ATTiny2313 og ATMega328
Programmering av brikker med din Arduino - AVR ISP som dekker ATTiny85, ATTiny2313 og ATMega328

Jeg fant dette som et utkast fra mange år siden. Det er fremdeles nyttig for meg, så jeg skal publisere det!

Denne instruksjonsboken er en samling av kunnskap samlet fra "nettet" og "nstructables". Den dekker programmeringen av AVR -mikrokontrollere, ved å bruke eksemplene på ATTiny85, ATTiny2313 og ATMega328, med en Arduino. Jeg har brukt denne teknikken til å bygge en rekke gizmos gjennom årene, og har nylig brukt den til å gjenvinne Arduinos som har gått tapt i prosjekter, og erstattet dem med en "bootloaded" ATMega328 og en håndfull komponenter. Denne instruerbare, som mange, er bygget på skuldrene til giganter. Det er mange kilder, og jeg håper å inkludere dem alle. Noen av de største bidragsyterne er: Arduino til BreadboardHigh Low Tech BlogLady Adas AVR Dude TutorialRandal Bohns Arduino Sketch Hvis du virkelig vil lære om prosessen, er det verdt å sjekke alle kildene oppført som de inneholder nyttige triks og tips for når ting slutter å fungere. Ok, så er vi klare? La oss samle verktøyene våre. Etter det vil vi se på koden som gjør alt arbeidet siden noen eksempler med Arduino IDE, og vi tar til og med en kort tur til den mørke siden med AVRDude!

Trinn 1: Samle verktøyene dine

Dette er et ganske enkelt oppsett. Jeg har aldri funnet kondensatorer som et problem når jeg bruker en offisiell Arduino uno som base, så dette kan se litt blott ut for noen som har erfaring med AVR -programmering. Du kommer til å trenge:

  • En Arduino Uno
  • Brødbrett
  • Hoppekabler
  • Tre lysdioder og tre motstander for 5V

og ditt valg av AVR Chip

  • ATTiny85
  • ATTiny2313
  • ATMega328

Du trenger faktisk ikke lysdiodene, men de er veldig praktiske for å vite at programmereren din fungerer eller om du har en feil. Når det gjelder AVR -brikken, kan du programmere de fleste AVR -er med denne metoden så lenge du vet hvor RST, MISO, MOSI og SCK er plassert. Unntaket (som dukker opp i tankene) er ATTiny10 og lignende, de bruker en annen metode.

Trinn 2: Sett opp programmereren

Sett opp programmereren din
Sett opp programmereren din

La oss sette opp maskinvaren først. Vi skal koble til lysdiodene slik at vi kan se når brettet kommer til liv. Sjekk diagrammet nedenfor. Sett det kortere benet på lysdiodene inn i -ve eller jordlinjen på brødbrettet, det er den med den svarte ledningen som går inn i den. Beklager hvis noen av tingene jeg sier virker nedlatende på noen måte, men jeg husker virkelig hvordan det er å komme i gang med elektronikk, så mye ble antatt kunnskap og små ting holdt meg virkelig oppe en stund! Hvis du ikke allerede har det, kan du laste ned den nyeste versjonen av Arduino IDE fra de kjekke menneskene på Arduino. Hvis du ikke bruker en offisiell Arduino, kan det hende du støter på noen problemer med denne metoden, eller kanskje ikke - det kan være lurt å sende dem noen ølpenger da de virkelig rocker, og som et fellesskap skylder vi dem mye! Så har du IDE? (det er programvaren du nettopp lastet ned - IDE står for Integrated Development Environment btw) Installer det og koble til Arduino, du kan bruke driverne som følger med IDE hvis datamaskinen ikke plukker opp Uno med en gang. Slå nå av IDE. Arduino IDE kommer med en AVRISP -skisse som alle er klare i> Eksemplene, men den er virkelig gammel. Gå over til Github via denne lenken, klikk på skjermen med all teksten, hold nede Ctrl, trykk A for å velge alle. Hold nå kontrollen og trykk C for å kopiere hele teksten. Naviger tilbake til Arduino IDE og Control V for å lime den inn. Sørg for at den riktige COM -porten er valgt (hvis du ikke vet hvilken som er riktig, kan du høyreklikke på datamaskinen i Windows -startmenyen (beklager at jeg ikke støtter annet operativsystem for øyeblikket!), Klikk deretter på enhetsbehandling og venstre klikk for å utvid Ports (COM & LPT) -menyen, og den skal vise Arduino som COM uansett). Last nå opp skissen. Alt er bra, og alle lysdiodene dine skal flimre i rekkefølge, så begynner en (jeg valgte blått) å pulsere. Prøv å ikke bli hypnotisert. Virket ikke? Kommenter nedenfor, så ser vi hvordan vi kan hjelpe deg! Når du har fått det til å fungere, lagrer du skissen i skisseboken din ved å bruke lagre som. Du vil beholde dette praktisk for fremtidig referanse.

Trinn 3: Opplasting av en ATMega328 - Lag en Arduino -klon

Bootloading a ATMega328 - Making an Arduino Clone!
Bootloading a ATMega328 - Making an Arduino Clone!

Nå begynner jeg med ATMega328, da det er det enkleste av mye å gjøre "out of the box", og det er en umiddelbar applikasjon. Brenner en oppstartslaster for å lage ditt eget brødbrett Arduino eller reker. Sjekk bildet nedenfor. Ikke bekymre deg for at det nå ser eksponensielt mer komplekst ut enn det siste trinnet - det er bare hjernen som lurer deg, ro deg ned og se på det igjen. De blå ledningene til lysdiodene er de samme, du har gjort det, så vi trenger ikke bekymre deg for dem. De svarte og røde ledningene fra Arduino er på samme måte, de er strømledningene dine, vi ønsker å få strøm til brikken. Så legg til de. Nå er det bare 4 ledninger igjen. Disse kommer til å koble til Pins 10 til 13, og for de nysgjerrige er disse:

  • Digital 10 - RST (Tilbakestill)
  • Digital 11 - MOSI (Master Out - Slave In)
  • Digital 12 - MISO (Master In - Slave Out)
  • Digital 13 - SCK (seriell klokke)

Så det vi faktisk gjør er å programmere brikken med SPI Serial Peripheral Interface. Som er dekket i denne flotte opplæringen av den mektige Sparkfun. Av den grunn så vi først på denne. Gå til> Verktøy på IDE, nå> Programmerer> Arduino som ISP. Med det merket kan vi gå tilbake til> Verktøy> Brenn oppstartslaster. Nå skal vi se noen blinkende lysdioder og vente en stund. Meldingen nederst på IDE -en din skulle til slutt gå til oppstartslading fullført. Hei presto, den brikken på brødbrettet kan nå gjøres om til en Arduino uten barbein!

Anbefalt: