Hallo,
ich wollte gerade Ponyprog Installieren, und musste gerade feststellen,
dass mir so ein netter (dämlicher) Installer es nicht installieren will.
(Ist dem Autor wohl auch nie in den Sinn gekommen oO). Auf jeden Fall
wollte ich fragen, ob es möglich ist, mit AVR-Studio auch die Fuse-Bits
zu setzen und ob AVR-Studio auch direkt die serielle Schnittstelle
bedienen kann, oder ob AVR-Studio den In-System-Programmer von Atmel
voraussetzt. Ich wollte es dann halt lediglich für die Fuse-Bits
verwenden, und den Rest mit WinAVR machen.
Da stellt sich mir die Frage: "Warum setzt Du die Fusebits nicht gleich
mit WinAVR?"
Es ist auch keine Frage der Schnittstelle sondern der Protokolle,
Ponyprog bedient micht das STK500v2-Protokoll.
Also, was heißt den jetzt der Protokolle. Ich habe einen ATiny, der sich
über ISP programmieren lässt. Ich habe kein Board von Atmel sondern das
Evulations-Board von Pollin.de Die ISP - Schnittstelle ist direkt mit
dem Controller-Verbunden (die serielle-Schnittstelle). Woher bekomme ich
jetzt raus, wie ich den Chip programmieren muss? Ich habe keins von
diesen ISPs. Ich wollte es direkt über die serielle Schnittstelle des
PCs machen. (bzw. über einen USB2seriell Wandler).
S.T schrieb:> Also, was heißt den jetzt der Protokolle.
Nur weil man per RS-232 Daten senden kann, heißt das noch lange nicht,
dass man sich auch versteht bzw. die gleiche "Sprache" spricht.
S.T schrieb:> Woher bekomme ich jetzt raus, wie ich den Chip programmieren muss?
Steht detailliert im DB deines Tinys.
S.T schrieb:> Ich habe keins von diesen ISPs.
Kauf dir einen. So teuer sind die nun auch nicht und Du hast gleich was
Vernünftiges. Das Pollin Board kannst Du auch bequem mit einem AVR ISP
programmieren.
Ich dachte, man könnte die Atmels über Bit-Banging direkt programmieren.
Soweit ich was macht es so das Pollin Board. So das ich es direkt
verbinden kann. Aber was ich nun als programmer in AVRDUDE eingeben
müsste ist mir immer noch unbekannt.
gaast schrieb:> S.T schrieb:>> Die ISP - Schnittstelle ist direkt mit>> dem Controller-Verbunden (die serielle-Schnittstelle).>> Eher zweifelhaft.
Dann schau dir den Schaltplan an, wenn du mir nicht glaubst! Kannste
online bei Pollin runterladen. Ist mit den Anschlüssen für die
SIP-Schnittstelle verbunden. MOSI usw. Ach ja und mit dem Resetpin (über
nen Transistor) damit das Ding den Reset-Pin auf GND ziehen kann.
S.T schrieb:> Ist mit den Anschlüssen für die> SIP-Schnittstelle verbunden. MOSI usw. Ach ja und mit dem Resetpin (über> nen Transistor) damit das Ding den Reset-Pin auf GND ziehen kann.
Und genau da liegt der Hase im Pfeffer. RS232 ist eine rein
physikalische Verbindung (Kabel an Pin), also nur das Transportmedium.
Du musst die Daten aber auch richtig anliefern (Protokoll, ISP) und da
ist RS232 != ISP. Genau diese Übersetzung macht PonyProg. Und
zusätzlich geht das ganze beim seriellen Programmieradapter mittels
"BitBang", also zeitlich gesteuertes Wankeln von einzelnen
Steuer-Leitungen (daher klappt das auch nur +-gut mit einer echten
RS323, kein USB adapter!);
micha schrieb:> S.T schrieb:>> Ist mit den Anschlüssen für die>> SIP-Schnittstelle verbunden. MOSI usw. Ach ja und mit dem Resetpin (über>> nen Transistor) damit das Ding den Reset-Pin auf GND ziehen kann.>> Und genau da liegt der Hase im Pfeffer. RS232 ist eine rein> physikalische Verbindung (Kabel an Pin), also nur das Transportmedium.> Du musst die Daten aber auch richtig anliefern (Protokoll, ISP) und da> ist RS232 != ISP. Genau diese Übersetzung macht PonyProg. Und> zusätzlich geht das ganze beim seriellen Programmieradapter mittels> "BitBang", also zeitlich gesteuertes Wankeln von einzelnen> Steuer-Leitungen (daher klappt das auch nur +-gut mit einer echten> RS323, kein USB adapter!);
Hm, aber wie heißt dieses Verfahren den bei avrdude? ICh hab irgendwo
was von siprog gehört. Ist das das richtige?
(Hab nen USB-Adapter, aber der hat auch bei jemand anderem funktionert
mit diesem Verfahren).
S.T schrieb:> aber wie heißt dieses Verfahren den bei avrdude?
Gibts zu AVR-Dude keine Doku??
S.T schrieb:> Ich wollte es direkt über die serielle Schnittstelle des> PCs machen. (bzw. über einen USB2seriell Wandler).
Ein USB2seriell-Wandler ist keine bitbangingtaugliche Schnittstelle. USB
ist aufgrund der paketorientierten Übertragung nicht in der Lage, das
Timing korrekt einzuhalten. Es taugt für Multimedia (große Datenmengen
in kurzer Zeit), aber nicht für Bitwackeln in Echtzeit.
...
Hannes Lux schrieb:> S.T schrieb:>> aber wie heißt dieses Verfahren den bei avrdude?>> Gibts zu AVR-Dude keine Doku??>> S.T schrieb:>> Ich wollte es direkt über die serielle Schnittstelle des>> PCs machen. (bzw. über einen USB2seriell Wandler).>> Ein USB2seriell-Wandler ist keine bitbangingtaugliche Schnittstelle. USB> ist aufgrund der paketorientierten Übertragung nicht in der Lage, das> Timing korrekt einzuhalten. Es taugt für Multimedia (große Datenmengen> in kurzer Zeit), aber nicht für Bitwackeln in Echtzeit.>> ...
Die Doku erläutert die Kommandozeilenparameter, aber kaut jetzt nicht
jeden von Zich Programmiervarianten durch. Wenn man mal in die Konfig
schaut, versteht man auch, warum das den Rahmen der Doku Sprengen würde.
Es taugt nichts unbedingt, aber es funktioniert manchmal. Außerdem möcht
ich doch nur das Verfahren wissen, wie es heißt. Ich frag ja nicht ob es
funktioniert. Ich weis von anderen Leuten, die es damit schon gemacht
haben, und bei denen es funktioniert hat. Mit Wandler.
Zum Thema Pollin-Board, PonyProg und USB Adapter gibt es hier schon
einen ganzen Haufen Threads. Grundaussage ist es kann funktionieren,
evetuell arg langsam, aber wahrscheinlich nicht. Mußt Du einfach
probieren.
Aber das klappt nicht direkt über das AVR Studio. D.h. Du musst immer
den Umweg über ein externes Programm machen.
Eine Alternative wäre es einmal einen ST500 kompatiblen Bootloader
(mittels PonyProg o.Ä.) aufzuspielen und dann nur noch über diesen zu
programmieren. Damit wäre schon mal das Bit-Wackeln weg und das
funktioniert auch über einen USB Adapter. Ob das dann auch direkt aus
dem Studio heraus möglich ist weiss ich nicht. Kann emand anderes da
etwas zu sagen?
Gruß, Michael
Die Installation von ponyprog unter windows ist mir bisher, auch bei
älteren Versionen immer gelungen.(Ich mag ponyprog fürs Lesen von
bereits früher programmierten Kontrollern, da hat man gleich den
Speicherinhalt auf dem Schirm.)
Einen Versuch wäre es wert, eine der älteren Versionen von ponyprog zu
installieren. Auch die sind noch im Internet zu finden.
Ponyprog und Studio4 sind zwei verschiedene Welten, zwischen denen die
einzige Brücke das auf Platte stehende .hex file ist. Also üblicherweise
erzeugt man unter Studio4 ein .hex file. Anschließend verlässt man
Studio4 und startet ponyprog. In dieses ponyprog wird das .hex file neu
eingelesen, es kann dann für verify oder prog verwendet werden.
Von der Hardware her ist pony auf eine echte parallele oder serielle
Schnittstelle ausgelegt. Einige (wenige) USB-seriell Konverter kommen
mit Ponyprog zurecht, viele aber nicht. Dazu gibts hier aber schon viele
threads.
Auch bei avr-dude ist das verbindende Glied zu Studio das .hex-file.
AVR Studio ist auf bestimmte Programmiergeräte ausgelegt, es gibt davon
auch welche, die die RS232-Signale in die der ISP-Verbindung übersetzen.
(Stichwort AN910). Studio liefert aber nicht die Lösung, bei der am
parallelen port oder am seriellen port die ISP-Signale unmittelbar
erzeugt werden.
Die Lösung mit dem Bootloader ist sozusagen ein Ei-Henne Problem, denn
der Bootloader muss zuerst auf den blanken Kontroller aufgespielt
werden.
Bootloader brauchen aber ein gesondertes Programm, mit dem die Software
vom PC auf den Kontroller übertragen wird. Außerdem bieten sie nicht den
Zugriff auf die fuse-bits. Die müssen nach dem loading getrennt
eingestellt werden, wenn nötig.
Der Vorteil des Bootloaders liegt eher in der einfacheren Verbindung
beim Programmieren, die u.U. mit nur einer Leitung und auch mit einer
virtuellen seriellen Schnittstelle wie bei USB-seriell-Konvertern
auskommt.
Peter R. schrieb:> Die Lösung mit dem Bootloader ist sozusagen ein Ei-Henne Problem, denn> der Bootloader muss zuerst auf den blanken Kontroller aufgespielt> werden.>> Bootloader brauchen aber ein gesondertes Programm, mit dem die Software> vom PC auf den Kontroller übertragen wird. Außerdem bieten sie nicht den> Zugriff auf die fuse-bits. Die müssen nach dem loading getrennt> eingestellt werden, wenn nötig.>> Der Vorteil des Bootloaders liegt eher in der einfacheren Verbindung> beim Programmieren, die u.U. mit nur einer Leitung und auch mit einer> virtuellen seriellen Schnittstelle wie bei USB-seriell-Konvertern> auskommt.
Hm, ich habe mir auch überlegt, mir irgendwann den Programmer von Atmel
zu holen, allerdings heißt es bei Atmel, dass ich dafür AVR-Studio
brauche, aber laut avr-dude, kann es auch den Programmer bedienen. (mit
usb-lib).
Naja hm, eine andere Sache ist halt jetzt immer noch bei AVR, welchen
Programmer ich nehme. Die Schaltung auf dem Pollin sieht dem
siprog-Schaltung von www.lacos.com sehr ähnlich, wenn nicht fast das
selbe, abgesehen von der externen Stromversorgung.
> Naja hm, eine andere Sache ist halt jetzt immer noch bei AVR, welchen> Programmer ich nehme. Die Schaltung auf dem Pollin sieht dem> siprog-Schaltung von www.lacos.com sehr ähnlich, wenn nicht fast das> selbe, abgesehen von der externen Stromversorgung.
Ich meine nicht AVR, sondern avr-dude
stk 500 schrieb:> Stk500 schrieb:>> Ja rs232 wird unterstützt, auch in der neuesten Version.>>> Natürlich habe ich ein STK 500 dran ;-).....
Also, die Entwicklerboards von Atmel sind mir überteuert. Generell sind
die Sachen direkt von Atmel überteuert. Schon fürn Flachkabel verlangen
die horende Beträge... Ich mein was braucht man?! Ne ISP - Schnittstelle
und ne JTAG-Schnittstelle (wenn man debuggen will). Gute Boards haben
dann halt noch nen programmer drinne. Das STK 500 soweit ich weis, aber
es gibt ja auch nen USB-Programmer von Atmel.
Stk 500 schrieb:> Avr USB- lab !
Das wäre dann die billigere alternative zu dem Programmiergerät, aber
naja, nen Bauplan hab ich bis jetzt nicht gefunden, und zum
bestelllen... nö. Wenn dann selbst bebastelt :)