Hallo zusammen, ich habe ein Atmega8 16PU chip mit 16MHz Quarz angeschlossen. Ich benutze eclipse mit AVR plugin, AVR Tool chain und in ISP Programmer st500v2. habe es in einem Apple Laptop probiert, es läuft wie geschmiert. Baudrat 9600. Ich bekomme auch richtige Ausgabe in meinem Client. Die identische code und selber fuse wieder von ein windows rechner aus auf dem chip geladen, dann bekomme ich nur laut null als Rückgabe. Vermutlich die Takt stimmt nicht mehr. Warum läuft es mit Windows nicht? winavr ist doch gut getestet. Weisst vielleicht jemand woran es liegt? Das Plattform sollte doch nicht so viel unterschied machen. Schließlich kann ja nicht jeder MAC kaufen. Gruß, JD
JD schrieb: > Warum läuft es mit Windows nicht? winavr ist doch gut getestet. > Weisst vielleicht jemand woran es liegt? Das Plattform sollte doch > nicht so viel unterschied machen. Schließlich kann ja nicht jeder MAC > kaufen. Du bist wahrscheinlich der einzige, der unter Windows versucht einen ATmega zu programmieren ;-)
Lies doch mal unter Windows die Fuses des vom Apple programmierten Chip und umgekehrt. Dann kommst du dem Problem vermutlich schnell auf die Spur. ... schrieb: > Du bist wahrscheinlich der einzige, der unter Windows versucht einen > ATmega zu programmieren ;-) Nö, er muss der zweite sein, denn ich tue das auch :P
Matthias Sch. schrieb: > Lies doch mal unter Windows die Fuses des vom Apple programmierten Chip > und umgekehrt. Dann kommst du dem Problem vermutlich schnell auf die > Spur. Hallo Matthias, vielen Dank für die Tipps. Ich habe mit Burn-o-Mat die aus MAC gesetzte Fuse auf dem chip in windows ausgelesen. Und auch das gleiche Umgekehrt in MAC die Fuse aus Windows gelesen. Es war für ATmega8 identisch. Das gleiche Versuch habe ich mit ATtiny45 gemacht. MAC setzte ATtiny45 Fuse richtig und Windows schreibte Fuse für ATtiny 45 False, habe schon ein paar ATtiny45 zerstört. Blöde ist das AVRDUDE sagte mir in allen Platform die Fuse war für ATmega8 richtig gesetzt. Ich kann auch servos mit "falschem" Takt in ATmega8 betreiben, was meiner Meinung nach auch relativ taktsensible Tätigkeit ist. Nur für USART Tätigkeit ist die Taktabweichung zu groß. @Alle Ich habe auch die Entwicklung in VMware guest System Opensuse 12.1 und guest System Windows XP in den gleichen Windows 7 Host probiert. Das Verhalten ist ganz unterschiedlich. (Um die unwichtige Infos zu sparen, gehe ich hier nicht mehr genau ein, kurz gesagt, es hat für USART Task nichts gebracht). Nehme ich an, dass die Fuse von Windowsumgebung richtig gesetzt ist, was ich auch eigentlich von AVRDUDE weiss, kann mein Problem irgendwo anderes liegen? Ich habe auch schon Fuse in MAC setzen lassen und dann code in Flash von MAC aufsetzen lassen, Lesen und Senden in USART lief richtig. Im gleichen Chip Fuse unverändert bleibt, identisches Code für Chip von Windowsumgebung (virtualisiertes windows xp und nicht virtualisiertes windows7 )in Flash aufladen lassen, dann zerhaue ich die Takt. Das ist was ich nicht verstehe, hat Flash code, Bootloader in ATmega8 Einfluß auf Fuse? Die Platformabhängige Implementierung von avr-lib sollte aber nicht der Grund für mein Problem oder irre ich mich? Ist es ein Fuse Problem? Ich freue mich auf Eure Antwort. Mich reizt es sehr dass ich die Ursache meines Problems auf dem Grund gehen kann.
Viel kann ich da nicht zu sagen, da ich meine AVRs immer unter Win XP mit dem AVRISP MkII brenne. Ich vermute ein Interpretationsproblem, d.h. manche Software mag eine Fuse als 'burned' sehen, wenn sie gelöscht ist, während andere Software diese Fuse genau umgekehrt interpretiert. Ein Hinweis wäre, rauszufinden, was genau in den Tiny45 'misfused' ist. Ich will auch nicht ausschliessen, das manche Brennsoftware vllt. nicht genau nach Datenblatt interpretiert. Wichtig ist auf alle Fälle, das das zu brennende Device in der Kommandozeile oder im Brenndialog richtig angegeben ist, da die Fuses zwischen den AVRs doch sehr unterschiedlich sind. Ein ATMega8 z.B. hat völlig andere Fuses als der Tiny45.
Matthias Sch. schrieb: > Viel kann ich da nicht zu sagen, da ich meine AVRs immer unter Win XP > mit dem AVRISP MkII brenne. Ich vermute ein Interpretationsproblem, d.h. > manche Software mag eine Fuse als 'burned' sehen, wenn sie gelöscht ist, > während andere Software diese Fuse genau umgekehrt interpretiert. Vielen Dank, ich habe ein "MySmart USB light", es ist auch nicht mehr viel aktuell. Habe nur gedacht für ATmega8 und mein Zweg reicht es. Mein Fazit: man sollte schon ein wenig mehr in das Tooling investieren, somit spart man mehr Zeit. Wenn ich mehr ausfinde, dann gebe ich noch bescheid. Best Grüße JD
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.