Themen / Inhaltsliste
/ Englisch
ATMEL programmieren mit Linux
Content (automatic)
Installation
avl-gcc ist im Paket Elektronik - avrprog enthalten.
Die Installation erfolgt durch Synaptic oder aptitude , siehe ../../linux/debian3.1/einricht.htm
Installiere die Pakete
Nach der Installation:
/usr/bin : cd /usr/bin ; ls avr*
: Da sind die Kompiler
und
Hilfsprogramme
In den Include-Pfad aufnehmen: $(HOME)/home/cc/avrinc
Kompilieren
Anpassen der HOME - Zeile in
~/home/cc/avrbat/makedefs
Übersetzt wird im Projekt-Verzeichnis durch Aufruf von make (in
einer X-Term-Konsole):
cd ~/home/cc/ts/avr/tsadc
make
Der verwendete makefile ist
der gleiche, der auch für avrstudio und gcc-avr unter Windows
benutzt wird.
Es entstehen dadurch alle .o-Dateien und tsadc.hex
Debug
/ Simulation
Danach simulieren mit HJHerberts simatmel - Siehe util/simatmel.htm und util/simbase.htm
simatmel tsadc.hex
oder
mit dem Programm von nongnu.org
simulavr -d atmega16 tsadc.hex
Es gibt drei simulavr-Programme
- simulavr : führt das
Programm aus. Aufrufen durch
simulavr -d atmega16 --gdbserver
Dann noch in einem anderen Fenster aufrufen:
simulavr-disp 512 1024 60 8192
Dann noch in einem anderen Fenster aufrufen:
gdb tsadc.elf
- simulavr-disp :
- simulavr-vcd :
Sitzung mit gdb
avr-gdb tsadc.elf
disas[semble] main
li[st] main
break 36
b 38
x 0x70
avr-gdbtui tsadc.elf
b36
b38
Dann konnen folgende gdb-Befehle eingegeben werden: (Teile in eckigen
Klammern können durch TAB abgekürzt werden.)
- at[tach]
- disp[play]
- avrp sollte dann die
HEX-Datei brennen können, möglicherweise
nur mit seriellem Programmer?
Debugging
Starten:
simulavr -g -p 1212 -d atmega8535 -P simulavr-disp
In anderem Fenster
gdb qqtshar.elf
target remote localhost:1212
b 38
cont[inue]
quit
cd ../qqtsfloa
gdb qqtsfloa.elf
target remote localhost:1212
list main
Senden des Programms an den Atmel mit avrdude
Installieren
avrdude herunterladen, z.B:
nach ~/www/download.savannah.gnu.org/
Auspacken und installieren mit :
tar xzf avrdude-5.3.1.tar.gz
cd avrdude-5.3.1
./configure
make all
su
make install
Anwenden
Terminal für die serielle Leitung starten, z.B hetrm oder gtktrm
Dann avrdude benutzen
su
mknod /dev/parport0 c 99 0
chmod a+rw /dev/parport0
avrdude -p m8535 -c stk200 -U qqtraff.hex
Danach sollte es anfangen zu blinken.
Wie die anderen Atmels bei avrdude heißen zeigt :
avrdude -?
avrdude -p ?
avrdude -p m8535 -c ?
avrdude -p m8535 -c
Hinweis: Die Anleitung wird angezeigt mit: man avrdude
Siehe auch
www
http://www.nongnu.org/simulavr/
-
http://www.unesols.com/links_pages/avr_links.htm
- Sammlung