Forum: Mikrocontroller und Digitale Elektronik ISP Programmer sehr langsam


von Sebastian (Gast)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich habe mir den ISP-Programmer aus dem Bild im Anhang nachgebaut. Den 
Schaltplan habe ich von folgender Seite: http://s-huehn.de/elektronik/

Das Programmieren funktioniert. Nur ist der Flash-Vorgang furchtbar 
langsam. So ungefähr 3-4 Minuten. Als Software benutze ich das PonyProg 
2.06f. Diese Version läßt sich auch unter Windows 7 installieren. Leider 
hat mein Laptop keine RS232 mehr, deshalb benutze ich einen USB auf 
RS232 Konverter. Dieser erzeugt an den TX, RX etc Leitungen +/- 5 Volt.

Sind die 3-4 Minuten normal? Kann man das Flashen irgendwie 
beschleunigen? Würde eine niederohmigere Beschaltung etwas bringen? Die 
Flanken an MISO, MOSI sehen aber sehr gut aus.

Vielen Dank für Eure Tipps.
Sebastian

von Sebastian (Gast)


Lesenswert?

Wer suchet der findet... ächz...

Zitat aus: http://www.mikrocontroller.net/articles/Pony-Prog_Tutorial

"Eine Warnung
Es gibt im Handel diverse USB-Seriell Wandler. Ihre Aufgabe ist es am 
USB-Port eine serielle Schnittstelle zur Verfügung zu stellen. Da 
PonyProg den seriellen Port aber nicht wie einen standardmässigen 
seriellen Port benutzt, funktioniert die Programmierung über so einen 
USB Wandler in den seltesten Fällen."

von dolf (Gast)


Lesenswert?

moin !
hast du am notebook nen 32bit cardbus erweiterungsschacht?
wenn ja dann gibt´s dafür ne echte rs232 schnittstelle.
sei froh das es jetzt überhaupt geht.
3...4 min. sind ja noch ok.
meine kiste hat sogar noch nen lpt port.
mit lpt geht das sehr schnell.
mfg

von dr.prof.schlau (Gast)


Lesenswert?

Ich arbeite mit einem MAC mit Windows7 unter Parallels und auch einem 
USB-Seriell-Wandler. Im AVR-Studio muss ich die ISP-Geschwindigkeit 
jedesmal von 28,8 auf eine schnellere hoch regeln. Sonst dauert das auch 
ewig. Das nervt!! Irgendwie merkt sich AVR-Studio die Settings nicht. 
Vielleicht liegt es wirklich am Wandler.
Gibt es da  "AVR-konforme" USB-Seriell-Wandler?
Gruß Michael

von Olaf D. (Firma: O.D.I.S.) (dreyero)


Lesenswert?

Hallo,

ohne Euch ärgern zu wollen:
Schmeisst die Dinger weg.

PonyProg unter Windows  Linux  Mac muss ja jedes Bit einzeln
wackeln lassen. Wenn Du optimistisch bist, schafft PonyProg es
optimal die Bandbreite / Latenz des USB auszunutzen.

Im Interruptbetrieb ist die minimale USB Zeit 1ms.
Im Burstbetrieb auch >= 1ms.

Wenn Du also 16kB flashen willst dauert das also

1ms/Bit * 8Bit/Byte / 16kB = 131,072s.

Das ist also "Broken by Design".

Nehmt was ordentliches.

Gruß

Olaf

BTW: Mit dem AVR JTAG ICE mk II dauert sowas um die 2s.

von citb (Gast)


Lesenswert?

Olaf Dreyer schrieb:
> Das ist also "Broken by Design".

Ganz so drastisch wuerde ich das nicht bezeichnen. Fuer normalen 
RS232-Betrieb (z.B. einen AVR910 oder -Clone) sind die Dinger ja OK. Das 
ist schlicht das falsche Werkzeug fuer die Bitwackelprogrammierer.

citb

von Icke ®. (49636b65)


Lesenswert?

Sebastian schrieb:

> Sind die 3-4 Minuten normal?

Nein. Über einen USB-Seriell-Wandler dauert das normalerweise sehr viel 
länger ;-)

Diese Schaltung hatte ich zuerst auch gebaut. Funktioniert an einer 
echten RS232 ganz passabel, sonst eher nicht. Sofern ein Parallelport 
vorhanden ist, es gibt auch dafür Schaltungen. Die beste Lösung ist 
jedoch, gleich einen USB-Programmer zu kaufen. Gibt es ab 20,-€ und man 
spart viel Zeit und Mühe, weil direkt aus AVR-Studio heraus geflasht 
werden kann.

http://www.reichelt.de/Programmer-Entwicklungstools/DIAMEX-USB-ISP/index.html?;ACTION=3;LA=444;GROUP=A38;GROUPID=2969;ARTICLE=110344;START=0;SORT=artnr;OFFSET=16;SID=13T5ZhtX8AAAIAAGdjDZA8da9224478e2255ef60c3ea4725a0215

von citb (Gast)


Lesenswert?


von dr.prof.schlau (Gast)


Lesenswert?

Hallo Olaf,
ich kann ja die ISP-Zeit von 28,8kHz auf ca.440kHz hochdrehen in 
AVR-Studio. Mit dieser Geschwindigkeit flashed er auch ordentlich, aber 
AVR-Studio merkt sich dieses Setting einfach nicht und fällt nach dem 
Flashen auf den untersten Wert zurück. Da frage ich mich, ob AVR-Studio 
den USB-Seriell-Wandler nach dem Flashen abfragt und sich deswegen 
wieder zurück stellt.
Gruß
Michael

von dr.prof.schlau (Gast)


Lesenswert?

Edit: Ich arbeite übrigens mit dem STK500. (anm.: das MACBook hat keine 
RS232 Schnittstelle)

von dolf (Gast)


Lesenswert?

Olaf Dreyer schrieb:
> Wenn Du also 16kB flashen willst dauert das also
>
> 1ms/Bit * 8Bit/Byte / 16kB = 131,072s.

na und?
lohnt nicht.
dafür flash ich zu wenig und 2min. sind mir völlig egal.
dann dauert´s halt.
anwerfen kippe an, bier ausm keller holen.
oh schon fertig......
reicht und preislich ist das mit der lpt schnittstelle kaum zu toppen.

mfg

von Mikel (Gast)


Lesenswert?

Wenn du dir einen kaufst, dann bei ebay, da kosten die ca 3-4 Euro, incl 
Porto. funktionieren wunderbar.

ansonsten, brennt dir nen Bootloader auf den chip, und programmiere dann 
über die seriele ohne bithampellei Ich nehme den von PeDe hier aus dem 
Forum, belegt nur 512 Byte und ist unkompliziert von der Handhabung.

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.