En avancerad metod för Arduino & AVR programmering (3 / 7 steg)

Steg 3: Programmera Arduino UNO rev3 från WinAVR miljö



För att programmera arduino via WinAVR, måste du först ladda ner det från här.

Innan du går vidare, måste du ha en titt på pin mappningen av kärna Atmega328 chip som Arduino UNO. Ta bara en titt på min bifogade bild. De är alla ordnade i den nödvändiga ordningen. Även om chipet är markerad som Atmega168 men Atmega328 har också samma pin mappningen.

Här kommer vi blinkar den inbyggda LED med WinAVR.The LED(marked 'L' on board) är ansluten sĺ som visas i den tredje bilden.

Om vi drar endast LED kretsen utvinns ur styrelsen (med undantag av alla andra komponenter), då kretsen kommer att ses som det i tredje pic. Op-förstärkaren används här är konfigurerad som en buffert dvs vad det kommer att få i pin #5(0/1), det ger exakt samma produktion till pin #7.The främsta orsaken bakom detta är att tillhandahålla tillräcklig ström för att driva LED.

Så du kan se att atmega328p pin #19 driver LED via op-förstärkaren. Som ni kan se att det är märkt digital13 i arduino pinut och PB5 i AVR pinut. Ha bara det i åtanke, kommer vi att diskutera om det inom kort.

Nu går vi tillbaka där vi var. Efter dataöverföring WinAVR, installera den. Innan du går vidare, skapa en mapp med namnet "Blink" på skrivbordet. Det är där vi kommer att hålla alla filerna när det gäller vårt WinAVR blink projekt. Nu gå till Start > alla program > WinAVR-20100110.Click på den och köra programmerarens anteckningar. Nu Klicka på File > New > C/C++ och du kommer se något samma som pic4. Nu spara det genom att klicka på Arkiv > Spara som och meddela sökvägen till Blink mapp på skrivbordet och ge det filnamn som main.c.Now har vi vår "c"-fil. Titta bara under Arkivmenyn, namnet borde ändras till main.c.

Nu här kommer den största delen, programmet kommer att enligt nedan. Som jag inte ger någon tutorial om AVR arkitekturen/AVR programmering handledning, ger jag endast kort förklaring för varje rad. Om du vill veta mer om

visst AVR familily arkitektur/programmering, då jag kommer nämna några bra böcker/länk i slutet av detta avvaras.

OK, för nu, låt oss börja vår blink program i WinAVR.

#include //This vad gäller alla nödvändig hårdvara definitioner för AVR.

#include / / denna är om dröjsmål funktioner.

int main(void) //starting av huvudsakligt

{

DDRB | = (1 << 5); Konfigurera PB5 som produktionen av Writting 1 till Data riktning register(DDR).

While(1) //entering till oändlig loop

{

PORTB ^ = (1 << 5), //Toggle statligt av PB5.

_delay_ms (1000); //Delay 1s

}

}

Nu minimera programmerarens anteckningar.

Klicka på Start.in sökning, skriv "Mfile" och tryck enter. Nu öppnas en ny Makefile. Nu var uppmärksam när det gäller denna del, eftersom detta är förmodligen den mest cruicial delen för Arduino programmering från WinAVR IDE.

I princip innehåller Makefile alla inställningar för att bränna att chipet. Nu Följ stegen som beskrivs.

1) Klicka på fliken "Makefile" och klicka på sist alternativet dvs "Aktivera redigering av Makefile". Nu kommer du att kunna ändra parametrarna för Makefile.Check Pic #5

2) nu Klicka igen på "Makefile" fliken och klicka på "MCU typ > ATmega > och välj MCU som Atmega328P från listan. Klicka på fil > Spara.

3) nu kan du se, att MCU kommer att markeras med gul färg i filen gör som på bild #6.

4) Just under MCU = atmega328p, man #processor frekvens. På den sista raden i #processor frekvens dvs F_CPU = 8000000 (som standard), ändra det till 16000000 noggrant (bara utelämna 8 och skriv 16. akta er för 0s. Det blir 6 0s.) Kolla Pic #7.This är eftersom arduino körs på 16MHz.Click på fil > Spara.

5) nu Klicka på Makefile fliken och välj programmerare > stk500v2. Nu inne i Makefile, kommer detta att Visa"

AVRDUDE_PROGRAMMER = stk500v2 "i gula höjdpunkt. Utelämna stk500v2 och skriv "arduino". Kolla pic #8.Click på fil > Spara.

6) nu koppla din arduino Uno Rev3 till din PC. Minimera Makefile och rätt klick på min computern ikonen. Klicka hantera på och klicka sedan på Enhetshanteraren. Notera inte för arduino uno. Kolla varierar pic #9.This från min till ditt. Min var 22.

7) nu återuppta Makefile.Just nästa där du skrivit "arduino", blir det port # definition för avrdude. Detta kommer att Visa som "AVRDUDE_PORT = com1". Nu utelämna '1' och skriv din arduino port #. Jag skrev "22". Klicka på fil > Spara. Kolla pic #10.

8) nu efter några rader av port definitionen, kommer det att finnas en linje "#AVRDUDE_VERBOSE = - v - v". Nu strax efter denna linje, typ "AVRDUDE_BAUD = 115200". Klicka på fil > Spara. Kolla pic #10.

Genom att lägga till denna linje, definierar vi vilket baudvärde för den seriella kommunikationen mellan ombord Atmega328P och ombord USB till seriell omvandlare av arduino uno. Detta kan vara olika för olika Arduinos.

9) nästa raden "AVRDUDE_FLAGS = -p $(MCU) -P $(AVRDUDE_PORT) - c $(AVRDUDE_PROGRAMMER)".

Lägg till "-b $(AVRDUDE_BAUD)" i slutet av föregående rad föregås av en "utrymme". Den sista raden kommer att ser ut som nedan:

AVRDUDE_FLAGS = -p $(MCU) -P $(AVRDUDE_PORT) - c $(AVRDUDE_PROGRAMMER) -b $(AVRDUDE_BAUD)

Kolla bild #11.

Nu är du redo att rocka. Klicka på fil > Spara som av Makefile och navigera till insidan "Blink" mappen och ge filnamn som "Makefile" och spara den. Glöm inte att ge de filnamn som "Makefile". Kontrollera pic #12.Now nära Makefile.

10) nu återuppta programmerarens anteckningar och första Klicka på "Verktyg > [WinAVR] göra alla". Om du gjorde allt exakt som min beskrivning, sedan göra processen bör vara utan fel och programmerarens anteckningar sida bör se ut som på bild #12.

11) om gör processen slutförts, då det är dags att bränna programmet. Klicka nu på "Verktyg > [WinAVR] programmet". Fönstret bör Visa läsprocessen. Då visar det AVR blixten skrivprocessen. Efter det, bör den Visa flash verifiering läsa process. Kolla bild #13.

Om allt är rätt, kommer den Arduino lampan börja blinka i 1 SEK intervall.

Bingo... nu är du expert AVR.

En annan sak, spara Makefile på en säker plats. Eftersom du kan helt enkelt kopiera och klistra in denna makefile (utan så mycket redigering) för alla dina olika framtida Arduino-WinAVR programmering projekt.

Se Steg
Relaterade Ämnen

Arduino AVR programmering sköld

Behöver du ett snabbt och enkelt sätt att programmet AVR marker. Visste du att du kan använda din Arduino och Arduino IDE? Denna Arduino shield gör processen mycket enklare.Du kan:Bränn en bootloader på en ersättare Atmega328 för din UNO.Göra ett fri...

AVRSH: Ett kommando tolken skal för Arduino/AVR.

Någonsin velat "logga in" till din AVR microcontroller? Någonsin trodde det skulle vara häftigt att "katt" ett register att se dess innehåll? Har du alltid velat ha ett sätt att driva upp och stänga enskilda perifera sub system din AVR...

Setup AVR programmering på OS X använder Eclipse

En tid lyckades tillbaka jag setup Eclipse för AVR programmering på både Windows 8 och Ubuntu. Att inte vara en expert i programmering eller i elektronik, måste jag erkänna jag fann det utmanande.Nu ville jag setup Eclipse för AVR återigen på OS X Yo...

Telnet till din Arduino/AVR!

Häromdagen var jag vill kolla på en av min AVR: s men jag var på övervåningen och Gud vet det var för mycket jobbigt att gå ner till där mikrokontroller var. Men det fanns två inaktiv datorer sitter på övervåningen bredvid min lata rumpa, så jag hade...

Arduino Bluetooth programmering sköld (trådlöst ladda upp koden)

Detta projekt kommer att visa dig hur man gör en trådlös uppladdning Arduino kod från din dator via Bluetooth.Steg 1: Steg #1: Breadboard Bluetooth modul setup kretsen. •Den Bluetooth-modul används i detta projekt är HC-05. Det är billigt och en av d...

AVR programmering med Arduino, AVRdude och AVR-gcc

AVR är en gemensam, billig typ av mikro-controller som kan verka skrämmande att arbeta med, men oroa dig inte! När du har Ställ in grundläggande kunskap och kan de bli inte bara nyttigt, men viktigt att nya projektidéer som du drömmer upp!Denna handl...

Att lägga till ICSP header till din Arduino/AVR styrelse

så du kanske har spelat med Arduino's, eller snarare Hackduino. Om du gjort din egen Hackduino eller liknande projekt, kanske du undrar hur du lägger till i ICSP huvudet. I grund och botten gör med ICSP-huvudet att du kan använda en extern programmer...

Hur du gör din egen AVR programmering station för under 8 dollar

Hej igen!Det senaste året har jag tränat med AVR microcontrollers och Arduinos.Jag köpte först en * klassiska * Attiny85 och programmeras det genom min arduino Leonardo. Det var häftigt att se en kala marker göra programmerade saker (i en bråkdel av...

Parallella AVR programmering styrelsen

några veckor sedan bestämde jag mig för att göra en enkel webserver baserat på vissa AVR chip (en instructable som beskriver projektet kommer att följa snart :-) ). Tanken var att hålla kretsen så enkla som möjligt och att återanvända de befintliga t...

Driva din Arduino/AVR med ett Hand-Cranked batteri

om du någonsin velat driva din Arduino eller AVR från ett batteri för utveckling testning (batterierna har olika makt leverans kvaliteter än, säg, transformerad AC eller ens en reglerad vägg vårta i DC) testning men var trötta för att gå igenom batte...

Arduino ATtiny2313 programmering sköld

idag, jag gjorde en liten 3 x 3 x 3 LED cube med en ATtiny2313 som jag hade från ca 2 veckor sedan. När jag hade att programmera om LED kuben när jag tänkte på mer awesome mönster, jag var tvungen att få ut min skärbräda och sedan tråd upp allt igen...

PIC/AVR programmering adapter/chip hållare.

Detta är en hemmagjord adapter som jag gjorde för programmering SOIC/integrerad krets storlek mikrochips som jag använder i min micro flygplan (http://maxoffsky.com/tech-blog/rc-micro-spitfire-airplane-build-log/).Jag hade problem med att ansluta mar...

Arduino UNO - programmering Atiny85

Vi kan berätta att Arduino är ganska stora i storlek och inte så mycket portabel. När du skala ner designa bärbara tech en Arduino UNO det är ganska stor, faktiskt även atmega328 är ganska stor i vissa fall en enkel lösning vore att använda en ATtiny...

Baserade Arduino enkel programmering tutorials: 1 med LED

detta är bara början på en helt fantastisk serie! fortfarande awesome saker framöver!Steg 1: Bara några enkla steg... Detta är i princip helt enkel programmering;int ledde = 13. deklarerade ledde på stift 13;void setup() {pinMode(led,OUTPUT); deklare...

Arduino IDE programmering

Här är de steg att följa för programmering ombord chipKit p32 använder Arduino IDE.Steg 1: Se till att du installerar MPLAB X IDE och X32 kompilator innan du tycker om programmering i Arduino IDE.Steg 2: Installera Arduino IDE 1.6.7 (eller senaste)Kl...

Arduino Attiny programmering sköld

En Attiny är ett bra alternativ till atmega328, det är för de projekt som behöver några GPIO stift och behöva vara portabel. Men till skillnad från atmgea328 attiny kan inte ansluta till en Arduino ombord och programmeras. Ett annat sätt är att använ...

Nybörjarguide - AVR programmering

du kommer att få detta gjort i 30 min.Steg 1: delar1. 1 x någon typ av kretskort2. 1 x Atmel AVR Atmega16 mikrokontroller3. 8 x 330 ohm motstånd4. 8 X lysdioder5. 1 X AVR programmerare (Använd bara data överför koden, jag använde en STK500)Steg 2: By...

Vattennivån Sensormodul för Arduino AVR ARM STM32 STM8

Grattis till ICStation -teamet! De har utvecklat denna underbara vattennivån Sensormodul av stora ansträngningar. Denna modul med liten storlek och hög kostnadseffektiva är lätt att använda. I denna artikel, kommer att vi använda digital lagring osci...

Rover 5 Tank, Arduino Outdoor programmering utmaning

Hej killar/tjejerDetta projekt startade ursprungligen att se om vi kunde program ut egna avlägsen kontrollerade rover men förvandlas till mer sedan att vi beställde 3 Rover 5 enheter eftersom de verkar ha en mycket lätt att använda drivrutinen styrel...