Forum: Mikrocontroller und Digitale Elektronik Kann AVR-Studio serielle Schnittstellen bedienen?


von S.T (Gast)


Lesenswert?

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.

von Hans Wurst (Gast)


Lesenswert?

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.

von Stk500 (Gast)


Lesenswert?

Ja rs232 wird unterstützt, auch in der neuesten Version.

von S.T (Gast)


Lesenswert?

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).

von Chris (Gast)


Lesenswert?

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.

von gaast (Gast)


Lesenswert?

S.T schrieb:
> Die ISP - Schnittstelle ist direkt mit
> dem Controller-Verbunden (die serielle-Schnittstelle).

Eher zweifelhaft.

von S.T (Gast)


Lesenswert?

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.

von S.T (Gast)


Lesenswert?

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.

von micha (Gast)


Lesenswert?

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!);

von S.T (Gast)


Lesenswert?

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).

von Hannes L. (hannes)


Lesenswert?

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.

...

von S.T (Gast)


Lesenswert?

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.

von micha (Gast)


Lesenswert?

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

von Peter R. (pnu)


Lesenswert?

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.

von Peter R. (pnu)


Lesenswert?

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.

von S.T (Gast)


Lesenswert?

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.

von S.T (Gast)


Lesenswert?

> 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

von stk 500 (Gast)


Lesenswert?

Stk500 schrieb:
> Ja rs232 wird unterstützt, auch in der neuesten Version.


Natürlich habe ich ein STK 500 dran ;-).....

von S.T (Gast)


Lesenswert?

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.

von Stk 500 (Gast)


Lesenswert?

Avr USB- lab !

von S.T (Gast)


Lesenswert?

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 :)

von stk 500 (Gast)


Lesenswert?


von stk 500 (Gast)


Lesenswert?


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.