electroZ microsystems

AVR/Ubuntu


Une voie pour faire ses premiers pas avec un micro-contrôleur en utilisant Linux Ubuntu et un contrôleur Atmel.

Sommaire


Utilisation avec Ubuntu 10.04

Ubuntu est une des meilleures distribution Linux. C'est gratuit et facile à installer. En plus touts les outils pour développer pour des uC AVR sont disponibles. Sont aussi disponibles des bons éditeurs de code comme gedit.

Utilisation de paquets specifiques

avrdude  
avrdude-doc
cross-avr*
 
avr-libc

Library [AVR-libc]

La librairie est installee ici:

/opt/cross/avr/
/opt/cross/avr/include/avr/iom8.h

Example of simple programation

/opt/cross/share/doc/avr-libc-1.6.1/examples/demo

Une fonction tres utile permet d'écrire uniquement un bit. Elle est réalisée de facon implicite par le compilateur

#include <avr/io.h>
int  main(void)
{
   PORTB |= _BV(PB1); //active le bit 1 du port B
}

Le code assembleur sera

sbi	0x18, 1	;

Compilation

For the compilation you need make so

sudo zypper inetall make

And configure PATH on ~/bashrc. Add this line

export PATH=$PATH:/opt/cross/avr/bin/:/opt/cross/bin/

Now compile

make

With this command you get the .hex file you can send to the Atmega8

Programmation

Pour tester la communication avec le uC on peux utiliser cette command. Ici on utilise une sonde de programmation AVRisp rs232.

sudo avrdude -p m8 -c STK500v2 -t -P /dev/ttyS0

Pour programmer le uC onlance la commande suivante:

sudo avrdude -P /dev/ttyS0  -c STK500v2  -p m8 -e -U flash:w:demo.hex

On peux relire le contenu de la falsh par cette commande

sudo avrdude -P /dev/ttyS0  -c STK500v2  -p m8  -U flash:r:demo_read.hex:i

See Also

AVR and Linux Ubuntu

AVR cookbook

Programmeur AVR