AVR programmering med Arduino, AVRdude och AVR-gcc (4 / 7 steg)
Steg 4: Makefile
Gör används för att automatisera processen med att bygga ett program. du kanna setup en makefile så att hela processen för att vara ett kommando, "gör programmet".
Med hjälp av make skapar makron för att enkelt köra en uppsättning kommandon som avser bygga ett projekt.
Det första kommandot är den kallas som standard, så det kan vara bra att ha ett hjälp makro först.
Hjälp:
' Hjälpa Detaljer:'
"hex: kompilera hex filen"
"flash: hex filen"
"program: kompilera hex och installera"
Detta påminner alltid du hur du har det program som inrättats i stället för att titta igenom din kod om du har glömt.
Nästa del av denna makefile är hex.
hex:
AVR-gcc - Os-DF_CPU = 8000000 - mmcu = attiny85 - c led_flash.c
AVR-gcc-DF_CPU = 8000000 - mmcu = attiny85 -o led_flash.elf led_flash.o
AVR-objcopy - O ihex led_flash.elf led_flash.hex
RM led_flash.o
RM led_flash.elf
Detta gör hela processen för att kompilera chip. Processen att kompilera ett program för AVR är lite svår och lång men denna del hindrar dig från att behöva komma ihåg varje del av processen. De viktigaste delarna av denna sammanställning process att komma ihåg är--mmcu = attiny85 och led_flash. Dessa kommer att behöva ändras beroende på ditt eget projekt. Om du använder en annan avr chip, enkelt ändra attiny85 till den typ som du använder. Om din fil inte är kallas led_flash.c, sedan ändra alla instanser av led_flash med namnet.
Slutligen, DF_CPU = 8000000 definierar klockhastighet i mikro-controller. Många objekt såsom förseningar inte att fungera korrekt om du anger detta till rätt värde. Om du använder ett annat chip, eller ändra hastighet på något sätt, se databladet för din AVR chip.
blixt:
avrdude - c arduino -p attiny85 -P /dev/tty.usbmodemfd121 - U flash:w:led_flash.hex
Detta installerar programmet på AVR chip. Var uppmärksam på:
-c arduino -p attiny85 -P /dev/tty.usbmodemfd121
Detta anger typ av pro