GNU + AVaRICE

#365842
Lesenswert?

Hallo !

Hat jemand schonmal den GNU De-Bugger (GDB) zusammen mit AVaRICE zum
Laufen gebracht ?

Nach Eingabe von
"avarice --program --file main.elf --part atmega128 --jtag com1
:4242"
erhalte ich folgende Fehlermeldung :
JTAG ICE communication failed: Inappropriate ioctl for device

Ich verwende den AVR-USB-JTAG.

Was hat die Fehlermeldung zu bedeuten ?


gruß,
andy
Gast #365844
Lesenswert?

Jein.

Prinzipiell connecten die beiden:

(gdb) target remote localhost:4242
Remote debugging using localhost:4242
Connection opened by host 127.0.0.1, port 4008.


Aber nachdem gdb das debug-script startet killt sich avarice:

Couldn't establish connection to remote target
Remote failure reply: E01
(gdb) gdb exited.


avarice mit --debug verschluckt sich hier:

GDB: <p22>
->GDB:
GDB: <g>

GDB: (Registers)Read 32 bytes from 0x800000
jtagRead
command[R, 1]: 52 20 1F 00 00 00 20 20
response: 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07 07
07 07 07 07 07 07 07 07 07 07
07 07 00 46
->GDB: E01
gdb exited.

command[G, 1]: 47 20 20
response:


Ich habe das evertool-light nachgebaut. Die Hardware ist m.E. in
Ordnung, da ich das Target damit programmieren kann.

Gruss
Rick
Moderator Persönliche Seite #365845
Lesenswert?

Hmm, womit programmierst du es, mit AVRDUDE oder AVR Studio?
Wenn letzteres, würde mich nochmal interessieren, ob AVRDUDE
mit dem Teil auch zurecht kommt.

avrdude -p m128 -c jtag -P com1 -U flash:w:main.hex

Die verwendeten Algorithmen sind ähnlich, allerdings setzt
AVRDUDE native auf Win32-API auf für die serielle Kommunikation,
während AVaRICE insgesamt so Unix-lastig geschrieben ist, dass
es nur mit der Cygwin-Emulation läuft.

Ich vermute allerdings, dass das irgendwie mit Cygwin zu tun
hat, und dass die völlig verquere Antwort des ICE auf den
Befehl zum Registerlesen mit obiger Fehlermeldung (inappropriate
ioctl for device) zu tun hat.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren