Forum: Mikrocontroller und Digitale Elektronik AVR910 v38b Kommunikationsproblem


von Wolf82 (Gast)


Lesenswert?

Hi, ich habe den AVR910 Programmer nach der Anleitung von Klaus 
Leidinger nachgebaut und ein Problem Ihn ans laufen zu bekommen.

Benutzt habe ich den 7.3728 Quarz, somit musste ich nur die Firmware 
3.8b von seiner Internetseite flashen (mittels Pollin Board). Dann habe 
ich versucht damit zu arbeiten, keine Chance.

Beim Versorgen mit Spannung wecheln die LEDs, wie in der Anleitung 
beschrieben. Schließe ich den Programmer aber an einen PC an, kann ich 
mit xx oder yy nicht die LEDs zum wechseln bringen. Dafür wechselt aber 
mit der <Enter><Enter> (also zweimal die Entertaste gedrückt) die LED 
von Rot nach Grün. Ausserdem lassen sich noch ein paar andere Sachen 
auslesen:

Minus Taste = Ver.3.8b (AVR109 Mode, 7.3728Mhz, 115.200 baud) for AN910, 
AT90S2313www.mikrocontroller-projekte.de 26.Feb.2006

Y - Taste = AVR ISP
S - Taste = 38

also scheint die Bitrate richtig zu sein (115200 mit 8N1)
Die lfuse ist auch richtig auf 0xED gesetzt...

Ansonsten kann avrdude damit nichts anfangen...

Weiß jemand, was ich falsch gemacht haben könnte?

von Klaus L. (kllei)


Lesenswert?

Wolf82 wrote:
> Beim Versorgen mit Spannung wecheln die LEDs, wie in der Anleitung
> beschrieben. Schließe ich den Programmer aber an einen PC an, kann ich

Das heist schon mal, das der Flash richtig programmiert ist.

> mit xx oder yy nicht die LEDs zum wechseln bringen. Dafür wechselt aber
> mit der <Enter><Enter> (also zweimal die Entertaste gedrückt) die LED
> von Rot nach Grün. Ausserdem lassen sich noch ein paar andere Sachen
> auslesen:
>
> Minus Taste = Ver.3.8b (AVR109 Mode, 7.3728Mhz, 115.200 baud) for AN910,
> AT90S2313www.mikrocontroller-projekte.de 26.Feb.2006
>
> Y - Taste = AVR ISP
> S - Taste = 38
>
> also scheint die Bitrate richtig zu sein (115200 mit 8N1)

ich vermute die Bitrate ist nicht OK, da auf die falschen Signale 
reagiert wird.
Der Text müsste mit "i" statt der - Taste kommen,
AVR ISP müsste mit "S", die 38 mit "V" kommen

Welche Terminalemulation benutzt Du?

> Die lfuse ist auch richtig auf 0xED gesetzt...
>
> Ansonsten kann avrdude damit nichts anfangen...
Welche avrdude Version benutzt Du? mit welchem Befehl?

Hast Du Windows? Versuche mal avrProg.exe (aus AVRstudio) das sucht die 
Baudrate automatisch.

> Weiß jemand, was ich falsch gemacht haben könnte?

Flash ist richtig gebrannt, wenn die Fuses auch stimmen kann es
vielleicht ein Fehler (wackler) im Aufbau sein.

von Marco S (Gast)


Lesenswert?

Das mit avrdude kann ich bestätigen.

Weiß nicht mehr genau, ob es meine aktuelle Version 5.5 oder eine 
Vorgängerversion war, aber avrdude hatte Riesenprobleme mit dem 
Schreiben. Irgendwie mit avr109 oder butterfly hatte es ewig und 3 Tage 
gebraucht, und war obendrein auch noch falsch geflasht. Habe mir dann 
ein kleines Skript geschrieben, welches den AVR910 füttert. Tolle Sache, 
das Teil ist wirklich schnell, also murkst avrdude rum.

von Wolf82 (Gast)


Lesenswert?

Hi, also, ich benutze Windows, sowie Linux bzw. Mac.

avrdude ist die Version 5.5
Terminalemulation ist glaube ich ANSI

Also, ich würde normalerweise denken, dass die Bitrate mit 115200 
richtig ist, da 1. ich den 7.3728MHz Quarz und die unveränderte Firmware 
benutze, und 2. auf die - Taste ja auch die Daten vom Programmer in 
verständlichen lettern kommt. Bei falscher Bitrate müsste doch auch der 
Text verändert am PC ankommen ...

Ich schaue nochmal nach der Schaltung, hab aber eigentlich alles 1:1 
aufgebaut...

Gruß

von Klaus L. (kllei)


Lesenswert?

Marco S wrote:
> Das mit avrdude kann ich bestätigen.
>
> Weiß nicht mehr genau, ob es meine aktuelle Version 5.5 oder eine
> Vorgängerversion war, aber avrdude hatte Riesenprobleme mit dem

mit 5.3.1 gab es einige Probleme, was aber mittlerweile behoben ist.
Allerdings ist der avr109 (butterfly) derzeit nur eingeschränkt zu 
verwenden.
Im Zweifel lieber den avr910 Mode verwenden, auch wenn der (noch) etwas 
langsam ist.

Besser wird es in der kommenden Version von avrdude (voraussichtlich 
5.6) dort habe ich zusammen mit Jörg Wunsch die blockmode Erweiterung 
auch für das avr910 Protokoll implementiert. Das beschleunigt nun das 
avr910 Protokoll.
Außerdem gibt es dann endlich eine Lösung für das lästige Devicecode 
Problem.

Also gespannt noch ein bischen warten ;-)

Grüße,
Klaus

von Klaus L. (kllei)


Lesenswert?

Wolf82 wrote:
> Hi, also, ich benutze Windows, sowie Linux bzw. Mac.
>
> avrdude ist die Version 5.5
mit der kompletten Befehlszeile? also Port und Baudrate?

> Terminalemulation ist glaube ich ANSI

also Hyperterm ?

> Also, ich würde normalerweise denken, dass die Bitrate mit 115200
> richtig ist, da 1. ich den 7.3728MHz Quarz und die unveränderte Firmware
> benutze, und 2. auf die - Taste ja auch die Daten vom Programmer in
> verständlichen lettern kommt. Bei falscher Bitrate müsste doch auch der
> Text verändert am PC ankommen ...

1. stimmt nur, wenn die Fuses passen, aber bei
2. hast Du natürlich recht, allerdings stimmen die Tastenzuordnungen 
nicht. Vielleicht sendet das Hyperterm ein CR LF statt nur ein CR und so 
kommt immer der Text von vorher.

> Ich schaue nochmal nach der Schaltung, hab aber eigentlich alles 1:1
> aufgebaut...

Probier zuerst mal AVRprog und ev. eine andere Terminalemulation, mit 
der Du den Datentransfer mitverfolgen kannst.

Klaus

von Wolf82 (Gast)


Lesenswert?

Okay, bitte nehmen sie ihre steine in die Hand, treten sie zur Linie vor 
und beginnen sie ihn zu steinigen.

Habe gerade mal die Bitfolge aufgeschrieben und mich gewundert, dass die 
als Signal invertiert zu den richtigen sind.

Habe anstelle 548B einen 558B eingbaut (und vorher schon falsch bestellt 
bei reichelt), das ist ein PNP statt NPN.

Daher kann ich zwar schlüssige Infos vom Programmer bekommen, aber keine 
an ihn senden...

Na dann, werde ich morgen mal umbauen...

Grüße und Danke für die Hilfe soweit...

von Klaus L. (kllei)


Lesenswert?

Wolf82 wrote:
> Okay, bitte nehmen sie ihre steine in die Hand, treten sie zur Linie vor
> und beginnen sie ihn zu steinigen.

Na so schlimm wirds nicht ;-)
>
> Habe gerade mal die Bitfolge aufgeschrieben und mich gewundert, dass die
> als Signal invertiert zu den richtigen sind.
>
> Habe anstelle 548B einen 558B eingbaut (und vorher schon falsch bestellt
> bei reichelt), das ist ein PNP statt NPN.

Interessant, bisher wurde immer der PNP durch einen NPN falsch 
eingebaut. Glückwunsch, erster. Den werde ich noch auf meine 
Fehlercheckliste aufnehmen

> Daher kann ich zwar schlüssige Infos vom Programmer bekommen, aber keine
> an ihn senden...

Zumindest sendet er falsche Kommandos.

> Na dann, werde ich morgen mal umbauen...
>
> Grüße und Danke für die Hilfe soweit...

Bitteschön und danke für die Info,
Klaus

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.