Hi Leute, habe ein Problem, bei dem ich einfach nicht weiter weiß und ich hoffe sehr, dass jemand von euch eine Idee hat. Ich habe bisher einen ATTiny2313 benutzt. Jetzt bin ich auf den ATMega8 umgestiegen aber bei dem funktioniert der USART nicht. Ich finde einfach den Fehler nicht, weil andere Funktionen gehen, aber beim Senden und Empfangen per USART merke ich zwar, dass er sendet, aber es kommt nichts oder zumindest nichts verwertbares an. Es ist das gleiche Programm, dass auf dem Tiny funktioniert hat. Vielleicht liegt es an den Fuse-Bits, ich habe BOOTSZ1, BOOTSZ0, SUT0, CKSEL3, CKSEL2, CKSEL1 programmiert, bei einem 9,216MHz Quartz. Ich weiß, die Frage ist sehr speziell, aber ich hoffe wirklich sehr, dass mir jemand helfen kann, weil ich nämlich schon viel Zeit in die Fehlersuche investiert habe. Danke, Philipp
Poste den Code! ... oder guck dir das Beispiel im Datenblatt an. Hellseher findest du vermutlich unter www.Astroluegie.de
Na also um mir zu sagen ob die Fuse-Bits richtig gesetzt sind braucht man wahrlich kein Hellseher zu sein, sondern nur ein bischen mehr Erfahrung und uC Verständnis zu haben als ich. Und das Datenblatt hab ich natürlich schon mehrfach zu Rate gezogen. Ich poste hier weil ich hoffe, dass es vielleicht jemanden gibt, der ein ähnliches Problem hatte, oder dass mich jemand auf einen offensichtlichen Fehler hinweist, den man beim ATMega beachten muss. Den Code brauch ich nicht zu posten, weil ich ja weiß, dass er beim Tiny funktioniert.
>BOOTSZ1, BOOTSZ0 Wozu begrenzt du deinen Programmspeicher? Willst du einen Bootloader laufen lassen? >SUT0, CKSEL3, CKSEL2, CKSEL1 Ja... CKOPT sollte man ab 8MHz vermutlich auch setzen. Die Seite 25 im Datenblatt dürfte dich interessieren.
Shit, ich hab die Fuse-Bits abgedruckt, die im Auslieferzustand gesetzt waren, ich muss nochmal nachschauen, welche ich jetzt wirklich gesetzt habe.
OK, also meiner Meinung nach ist das einzige Fuse-Bit das programmiert sein muss das CKOPT. Kann mir jemand sagen ob das richtig ist?
Auf Seite 25 ist bei mir keine Tabelle, aber auch die Tabellen auf den Seiten danach hab ich schon mindestens 20 mal angeschaut und falls ich sie falsch interpretiere, dann hilft es mir auch nichts, wenn ich sie nochmal anschau. Also entweder sagt mir jemand wie ich es richtig machen muss oder es muss halt falsch bleiben.
Du hast einen ATMega8 und den "Complete Datasheet"? http://www.atmel.com/dyn/resources/prod_documents/doc2486.pdf
Hallo, ich setze meist SUT0 auf 0 (bei Ponyprog also mit Haken), mehr Zeit zum stabilisieren des Taktes. CKOPT mußte ich bisher selbst mit 16MHz auf dem Steckbrett noch nie setzen. Ansonsten sind CKSEL0...3 auf 1 gesetzt, bei Ponyprog also ohne Haken. Gruß aus Berlin Michael
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.