Kann man den atmega8 auch ohne externen quarz betreiben und einfach xtal1 und xtal2 freilassen? Danke fuer eure hilfe!
Der Mega8 wird mit aktiviertem internem 1MHz-Oszillator ausgeliefert. Er läuft also ohne Quarz. Die Pins kannst du als I/O verwenden. Auf USART solltest du verzichten, da das Timing problematisch werden kann.
Wenn du UART brauchst, probiere es aber trotzdem. Intern 8MHz und UART mit 38400 Baud hat bei mir auf allen Megas bisher funktioniert. Niedrigere Baudraten sollten keine Probleme bereiten. Thorsten
Hi... @Thorsten: Das das gehen kann, streite ich nicht ab. Es muss aber nicht sicher funktionieren. Mein Hinweis hatte einen Hintergedanken. Und der heißt BASCOM. Denn da wird ganz unbekümmert mit PRINT die UART/USART benutzt, ohne den Benutzer/Programmierer über die Komplexität aufzuklären. Ich hatte nämlich auch mal Timing-Probleme mit der Seriellen am Mega8 (interner Oszillator), allerdings in ASM. Mit 2, 4 und 8 MHz intern war es auch nicht viel besser, ich hatte den Oszillator aber auch nicht kalibriert (wusste ich damals noch nicht). Gruß... ...HanneS...
Ja, du hast schon recht. Vielleicht hatte ich da bisher einfach nur Glück, aber versuchen kann mans ja :)
Ich habe mal softwaremäsig dem ATMEGA8 über ein Vergleichssignal Calibiert da kommen schon nach "Wetterlage" und "Laune" leicht abweichende Calibrierwerte zu stande. Mit etwas Geschick kannst du das Serielle Empangssignal selbst zum Calibrieren verwenden. Das macht vom Aufwand her nur Sinn, wenn du die zusätzlichen I/O Ltg. umbedigt brauchst. Sonst würde ich auch zu einem Quarz raten.
Aber bitte keinen Quarz mit "runder" Frequenz, sondern einen "Baudratenquarz", sie Datenblatt Seite 155-157...
Hi... Naja, ich hatte ein Entwickler-Board mit Mega8 zur Überprüfung hier, hatte 25 Euro gekostet. Das war bestückt mit: - 7805 (ohne Schutzdiode vom Ausgang zum Eingang!) - IC-Fassung für DIL-Mega8 - LED mit R (über Jumper an Pin28 schaltbar) - Max232 mit Elkos - Quarz 8,000000 MHz... Der Rest war einseitiges Lötpunkt-Lochraster... Das einzig Sinnvolle neben dem Mega8 ist der MAX232, und genau dafür wurde ein untauglicher Quarz eingesetzt (gelötet). Da fehlt nur noch BASCOM und PRINT und das Geschrei ist perfekt... Böse, böse Falle... Gruß... ...HanneS...
8MHz raus 7,3728MHz rein. Aber du hast schon recht ein Anfänger würde das Kotzen kriegen und sich ans Forum wenden ;-).
Ich kann das Geschrei über "gerade" Quarze nicht verstehen. Damit sind doch trotzdem einige Baudraten machbar - nicht alle, aber was solls ;-)
Die Abweichunge sind dann größer als bein dynamisch calibrierten RC-Oszillator.
Hallo Quarztechniker, der Thimo hat völlig recht (der Hannes auch). Die Nullabweichung bei der Übertragung über UART erreicht man nur mit "ungeraden" MHz-Zahlen (oder ganz wenigen Kombintionen). Allerdings ist die Abweichung meist ziemlich schnurz, da bei einer asynchronen Übertragung (UART - universl asynchronous receiver/transmitter), nach jedem Frame automatisch synchronisiert wird. Man kann ausrechnen, welche prozentuale Abweichung da kritisch ist, aber alles was im einstelligen Prozentbereich liegt, ist hier wohl unkritisch. MfG, Khani
habs gerade ausprobiert, der atmega8 kann problemlos serielle daten mit seinem 1 MHz oszillator generieren ABER!! 9600 Baud geht nicht Ursache ist die formel: Oszillator/(16*Baud) -1 Das ergebnis sollte nahezu ganzzahlig sein
Hi, ich finde diese internen oszillatoren auch ne feine sache. wenn ich nicht gerad eine rtc oder baudraten ueber 19200 brauche ueberlege ich mir es zweimal ob ich da noch ein quarz draufmachen soll(braucht ja auch alles platz). Allerdings muss man sagen, dass wenn man nicht das richtige kalibrierungs byte in oscal schreibt die frequenz schon ziemlich daneben sein kann. Gruß Tobias
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.