avr:linux
This is an old revision of the document!
Table of Contents
Programmation de microprocesseur AVR sous GNU/Linux
Installation
Pour ce faire, nous avons besoins des outils suivants :
Nom | Fonction |
---|---|
gcc-avr | Compilateur |
gdb-avr | Débogueur |
avr-libc | Librairie standard AVR |
avrdude | Programmateur |
binutils-avr | Outils binaire |
Installation sous Debian et dérivé :
sudo apt-get install gcc-avr gdb-avr avr-libc avrdude avrdude-doc binutils-avr
Port série en mode utilisateur
Pour utiliser un programmateur via un port série sous Linux sans droit administrateur, il faut que l'utilisateur fasse parti des groupes tty et dialout.
usermod -a -G tty Nom_Utilisateur usermod -a -G dialout Nom_Utilisateur
Premier programme
Squelette de base pour les programmes AVR à créer dans un fichier main.c
#include<stdint.h> // Ajout des types int#_t et uint#_t, # vaut 8 , 16 ou 32 #include<avr/io.h> // Utilisation des entrées sorties #define F_CPU 1000000UL // 1MHZ, réglage de la fréquence du CPU #include<util/delay.h> // Gestion des temporisations int main(void) { return(0); }
Compilation et programmation
Les commandes ci-dessous compile le fichier main.c en fichier main.elf, puis convertisse le fichier elf en fichier hex qui est ensuite programmé dans notre micro-processeur.
Bien sur, il faut adapter les options au type de microprocesseur et au programmateur utilisé
Programmateur | AVRDUDE |
---|---|
Atmel STK500 | stk500 |
Autre | Voir le manuel |
avr-gcc -mmcu=attiny85 -o main.elf main.c objcopy -O ihex -R .eeprom main.elf main.hex avrdude -p t85 -c stk500 -P /dev/ttyUSB0 -U flash:w:main.hex
avr/linux.1377671812.txt.gz · Last modified: 2013/08/28 06:36 by sdolt