Stap 2: opstellen van de code met gcc-avr
Ik zal met behulp van een c code van deze website:
http://www.nongnu.org/avr-libc/User-Manual/group__demo__project.html
haar onder een licentie van de bier-ware dus ik denk ik ben goed dat te nemen hier.
ook nodig is iocompat.h die net ervoor dat de code zorgt is compatibel met de microcontroller die we gaan gebruiken. (een ATMEGA8-16PU, hoewel ik denk dat de meeste van het atmega8 bereik moet worden ok)
dus ga je gang en download de code hieronder en de flash.c en de iocompat.h in dezelfde map zetten.
nu voor het compileren!
Open een terminal en ga naar waar de code ook is gedownload. Voer de volgende opdrachten:
1.) avr-gcc - g -Os - mmcu = atmega8 - c flash.c
Dit produceert een object bestand met de naam flash.o die vervolgens moet worden gekoppeld met behulp van:
2.) avr-gcc - g - mmcu = atmega8 -o flash.elf flash.o
Dit heeft nu een binair bestand met de naam flash.elf, die een uitvoerbaar bestand van GNU is. We gotta knoeien met het een beetje meer en grijpen sommige bits uit te maken van het hex bestand
3.) kunnen worden avr-objcopy-j .text -j .data - O ihex flash.elf flash.hex
We hebben nu een hex bestand, die geschikt is voor het aanbrengen op de atmega8, wij kom terug om dit in een beetje.
(voor een meer beschrijving van wat elk van de opdrachten gedetailleerde en opties Zie hier:
http://www.nongnu.org/avr-libc/user-manual/group__demo__project.html )
Laat de hardware gesorteerd op!