Forum: Mikrocontroller und Digitale Elektronik Diamex Prog S - Atmel Studio 7 - Windows 10


von Johannes (Gast)


Lesenswert?

Hallo,
ich möchte Mikrocontroller über Atmel Studio in Windows 10 
Programmieren. Allerdings bekomme ich beim flashen eine Error-Meldung.

avrdude.exe: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 
0.03s

avrdude.exe: Device signature = 0x1e910a
avrdude.exe: reading input file "C:\Users\Documents\Atmel 
Studio\7.0\ATTINY2313_Blink\ATTINY2313_Blink\Debug\ATTINY2313_Blink.hex"
avrdude.exe: writing flash (62 bytes):

Writing | ################################################## | 100% 
0.72s

avrdude.exe: 62 bytes of flash written
avrdude.exe: verifying flash memory against C:\Users\Documents\Atmel 
Studio\7.0\ATTINY2313_Blink\ATTINY2313_Blink\Debug\ATTINY2313_Blink.hex:
avrdude.exe: load data flash data from input file 
C:\Users\Documents\Atmel 
Studio\7.0\ATTINY2313_Blink\ATTINY2313_Blink\Debug\ATTINY2313_Blink.hex:
avrdude.exe: input file C:\Users\Documents\Atmel 
Studio\7.0\ATTINY2313_Blink\ATTINY2313_Blink\Debug\ATTINY2313_Blink.hex 
contains 62 bytes
avrdude.exe: reading on-chip flash data:

Reading | ################################################## | 100% 
0.66s

avrdude.exe: verifying ...
avrdude.exe: verification error, first mismatch at byte 0x0000
             0x10 != 0x14
avrdude.exe: verification error; content mismatch

avrdude.exe: safemode: Fuses OK (E:FF, H:DF, L:64)

avrdude.exe done.  Thank you.


Um aus AtmelStudio zu flashen, habe ich ein externes Tool hinzugefügt. 
Unter Command habe ich den Pfad zu AVRdude.exe.
In Arguments habe ich stehen:

-p t2313 -c stk500v2 -P\\.\COM4 -b115200 -D 
-Uflash:w:"$(ProjectDir)Debug\$(TargetName).hex":i



kann mir jemand sagen, was ich falsch gemacht habe, bzw. warum es zu 
diesem Fehler kommt?
So wie ich das sehe, wird der Controller ja beschrieben, aber falsch, da 
es beim lesen zum error kommt.


Johannes

von Holger L. (max5v)


Lesenswert?

In der Beschreibung auf der Herstellerseite steht das dieses Gerät auch 
mit dem Atmel Studio 7 laufen würde, gibt es einen Grund für den Umweg 
über AVRDude?
Könntest zur Not versuchen die ISP Frequenz herunterzusetzen, zu dem 
Avrdude Parameter -B gibt es hier eine Tabelle:

http://www.diamex.de/dxshop/mediafiles//Sonstiges/Prog-S-Anleitung.pdf

von c-hater (Gast)


Lesenswert?

Johannes schrieb:

> Um aus AtmelStudio zu flashen, habe ich ein externes Tool hinzugefügt.

Hättest du (theoretisch) nicht tun müssen. Dein Programmer ist 
STK500-kompatibel. Das Atmel-Studio kann (wieder: theoretisch) selber 
damit umgehen.

Praktisch ist es allerdings so, dass Atmel wohl lieber die eigenen 
Programmer verkauft und deshalb diverse "Inkompatibilitäten" in die 
eigene STK500-Unterstützung einbaut, was immer wieder zu unerwarteten 
Überraschungen führt. Bei jeder Studio-Version zu neuen, anderen...

Nunja, mit der Verwendung von avrdude als externes Programmiertool hast 
du auf jeden Fall erstmal die grundsätzlich richtige Entscheidung 
getroffen.

> kann mir jemand sagen, was ich falsch gemacht habe, bzw. warum es zu
> diesem Fehler kommt?
> So wie ich das sehe, wird der Controller ja beschrieben, aber falsch, da
> es beim lesen zum error kommt.

Das muss nicht so sein. Es kann genauso sein, dass das Rücklesen 
fehlgeschlagen ist. Typisch gibt es solche Effekte, wenn die ISP-Bitrate 
gerade so an der Grenze zwischen geht und geht nicht ist. Die Lösung ist 
dann natürlich: ISP-Bitrate verringern. Das macht man für avrdude über 
den "-B" Parameter. Also versuch' mal, ein "-B 100" in deiner 
Kommandozeile für den avrdude zu ergänzen. Wenn es dann funktioniert, 
war's dieses Problem. Du kannst dann noch zur Erhöhung der 
Programmiergeschwindigkeit optimieren, indem du die 100 testweise so 
lange halbierst, bis es wieder nicht mehr funktioniert. Beachte: der 
mögliche Wert hängt davon ab, mit welchem Takt der Zielcontroller 
betrieben wird!

Es gibt allerdings auch noch andere Sachen, die solche Effekte bewirken 
können. Als da wären:
-Wackelkontakte in den ISP-Leitungen
-zu lange ISP-Leitungen
-ungeschickte Zweitnutzung der ISP-Signale in der Zielanwendung

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.