Forum: Compiler & IDEs Atmega32 AVRNETIO DIAMEX DX-ISP MAC OSX


von internoide (Gast)


Lesenswert?

Hallo
ich brauche da mal dringend Hilfe. Ich möchte einen Atmega32 auf der 
AVRNet-IO Platine mit einem Diamex DX-ISP per Usb beschreiben! Er nutzt 
das STK500v2 Protokoll. Softwaremessig nutze ich CrossPack für mac bzw 
AVRDUDE. Nun zur Problematik. ich habe ein einfaches C Programm 
geschrieben dann habe ich im makefile den Atmega8 in den 32er geändert 
und im Terminal mit make kompiliert. es wird Folgender Text ausgegeben:

noname:firmware name$ make
avr-gcc -Wall -Os -DF_CPU=8000000 -mmcu=atmega32 -c main.c -o main.o
avr-gcc -Wall -Os -DF_CPU=8000000 -mmcu=atmega32 -o main.elf main.o
rm -f main.hex
avr-objcopy -j .text -j .data -O ihex main.elf main.hex
avr-size --format=avr --mcu=atmega32 main.elf
AVR Memory Usage
----------------
Device: atmega32

Program:     122 bytes (0.4% Full)
(.text + .data + .bootloader)

Data:          0 bytes (0.0% Full)
(.data + .bss + .noinit)

beim Ausführen des befehls make Flash kommt folgender Fehler:

noname:firmware name$ make flash
avrdude -c stk500v2 -p atmega32 -U flash:w:main.hex:i
avrdude: ser_open(): can't open device "unknown": No such file or 
directory

avrdude done.  Thank you.

make: *** [flash] Error 1

habe daraufhin versucht den programmer einzustellen aber werde aus dem 
was ich ergoogelt habe nicht schlau! ich hoffe jemand hat mir nen Ansatz 
oder gar ne Lösung für mein Problem. Das kann doch nicht so schwierig 
sein ;) Vielen Dank fürs Lesen.

von Martin T. (mthomas) (Moderator) Benutzerseite


Lesenswert?

Da bisher ohne Antwort nur Hinweise (nutzes der diesen Programmer noch 
einen Apfel): Falls ein virtueller COM-Port im Spiel ist, wäre die 
Angabe des Ports eine mögliche Lösung. Bei OSX in der Art -P 
/dev/tty[...], was genau hinter tty stehen muss, kann man wahrscheinl. 
durch Anzeige des /dev "Verzeichnisses" herausfinden.

von USBASP User (Gast)


Lesenswert?

"internoide" ist nicht erste, der mit Crosspack auf einem Mac in 
Zusammenhang mit einem USB Programmer Probleme hat.
Siehe:

Beitrag "avrdude avrisp mkii stk500 (mac)"

Mithilfe der Suchfunktion läßt sich vielleicht sogar eine Lösung finden.

von internoide (Gast)


Lesenswert?

hallo,

also ich hab rausbekommen wenn ich den dx-ipp per usb mit meinem macbook 
verbinde und dann in der Konsole folgendes eingeben:


noname:firmware name$ ls /dev/cu*
/dev/cu.Bluetooth-Modem    /dev/cu.Bluetooth-PDA-Sync 
/dev/cu.usbmodemfa131

und wenn er nicht eingesteckt ist:

noname:firmware name$ ls /dev/cu*
/dev/cu.Bluetooth-Modem    /dev/cu.Bluetooth-PDA-Sync

also dürfte das ja der usbmodemfa131 ja der programmer sein aber was 
mach ich damit wie kann ich das in avr dude ich sag mal hinterlegen. ich 
bin echt mit meim Latein am ende. Über den Programmer findet man leider 
auch nicht viele information. Fakt ist das der STK500v2 Protokoll nutzt. 
ich hab auch schon probiert das so in avr dude einzustellen aber 
vielleicht hab ich was falsch gemacht

noname:firmware name$ avrdude -p m32 -c stk500v2 -P USB
avrdude: ser_open(): can't open device "USB": No such file or directory

avrdude done.  Thank you.


und vielen Dank für die Antworten.

von internoide (Gast)


Lesenswert?

und so kommt folgender Fehler:

noname:firmware name$ avrdude -p m32 -c stk500v2 -P 
/dev/cu.usbmodemfa131

avrdude: stk500v2_command(): command failed
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you.

von internoide (Gast)


Lesenswert?

und mit -F

noname:firmware name$ avrdude -p m32 -c stk500v2 -P 
/dev/cu.usbmodemfa131 -F

avrdude: stk500v2_command(): command failed
avrdude: initialization failed, rc=-1
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
avrdude: Expected signature for ATMEGA32 is 1E 95 02

avrdude done.  Thank you.

von USBASP User (Gast)


Lesenswert?

Vielleicht hilft es auch die Baudrate im Aufruf zu spezifizieren. Also:

avrdude -p m32 -c stk500v2 -P /dev/cu.usbmodemfa131 -b 19200

Die Option -F kann man vergessen. Wenn keine Kommunikation zwischen 
Programmer und Target da ist, werden da nur ungültige Werte "gelesen".

von internoide (Gast)


Lesenswert?

**** yes, habs hin bekommen! Danke für die Anregungen!

Und fürs Protokoll:

1.  Pfad vom Programmer raus finden mit ls /dev/cu*
2. AVRDUDE "bekannt machen" :

     avrdude -p m32 -c stk500v2 -P   /dev/cu.usbmodemfa131 -F
3. make , dann make flash

4. sollte es nicht gehen mit der Spannungsversorgung von programmer und 
board spielen.

PS: Spitzenforum <3

von internoide (Gast)


Lesenswert?

wieso meinst ich dachte die baudrate ist standardmessig so richtig?

von internoide (Gast)


Lesenswert?

meine ich gestern zumindest iwo gelesen zuhaben. wie auch immer ich weiß 
nur dass ich nichts weiß!

von internoide (Gast)


Lesenswert?

make flash
avrdude -c stk500v2 -P /dev/cu.usbmodemfa131 -p atmega32 -U 
flash:w:main.hex:i

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 
0.01s

avrdude: Device signature = 0x1e9502
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be 
performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "main.hex"
avrdude: writing flash (122 bytes):

Writing | ################################################## | 100% 
0.01s

avrdude: 122 bytes of flash written
avrdude: verifying flash memory against main.hex:
avrdude: load data flash data from input file main.hex:
avrdude: input file main.hex contains 122 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 
0.04s

avrdude: verifying ...
avrdude: 122 bytes of flash verified

avrdude: safemode: Fuses OK

avrdude done.  Thank you.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.