Introduction:
WinAVR est une suite de logiciels regroupant plusieurs outils indispensables à la programmation C.
Il intègre le compilateur AVR-GCC, AVR-libc: les librairies essentielles de AVR-GCC, AVR-as: l’assembleur, AVRdude : l’interface de programmation, AVRice : l’interface de programmation ICE, AVR-gdb: le débugeur, programmers notepad : l’éditeur et plein d’autres.
WinAVR est prévu pour être utiliser sous Windows.
Installation:
Télécharger WinAVR http://sourceforge.net/projects/winavr/files/WinAVR/20100110/ ou ici
Lancer l’exécutable qui permettra d’installer WinAVR.
Premier programme:
Nous allons créer un programme permettant de faire clignoter les Leds sur un USBasp.
Ouvrir Programmers Notepad.
Créer un nouveau projet.
Remplir les données. Et valider par OK.
Copier le code ci dessous dans la fenêtre « new »
#include #define F_CPU 12000000UL // 12 MHz #include int main() { DDRC |= 11; // PC0 et PC1 en sortie while(1) { PORTC |= 1; // LED1 s'allume PORTC &= ~10; // LED2 s'etient _delay_ms(500); PORTC |= 10; // LED2 s'allume PORTC &= ~1; // LED1 s'etient _delay_ms(500); } return 1; }
Puis changer le type de Plain Text en C/C++
Création du fichier de compilation MakeFile.
Ajouter un nouveau fichier.
Copier le code ci-dessous.
MCU=atmega8 TARGET=premier CFLAGS=-g -Wall -mcall-prologues -mmcu=$(MCU) -Os LDFLAGS=-Wl,-gc-sections -Wl,-relax CC=avr-gcc OBJECT_FILES=$(TARGET).o all: $(TARGET).hex clean: TAB rm -f *.o *.hex *.obj *.hex %.hex: %.obj TAB avr-objcopy -R .eeprom -O ihex $< $@ %.obj: $(OBJECT_FILES) TAB $(CC) $(CFLAGS) $(OBJECT_FILES) $(LDFLAGS) -o $@
Remplacer TAB par une tabulation.
Puis changer le type de Plain Text en Make. Faire une sauvegarde.Et entrez le mon de Makefile.
Ensuite faire un Make ALL dans le menu pour créer le fichier HEX.
Voici l’ensemble des fichiers de mon projet ici.
Problème de compilation:
Sous Windows 7,Windows 8, et Windows 10 WinAVR n’arrive pas à compiler le programme avec un message d’erreur du type:initialization with status code 0xC0000142
Pour résoudre ce problème,il faut télécharger le fichier suivant msys-1.0-vista64.zip avec la DLL msys-1.0.dll et la copier dans le répertoire WinAVR-20100110>utils>bin.