Forum: Mikrocontroller und Digitale Elektronik atmega8 ohne quarz


von Wanze (Gast)


Lesenswert?

Kann man den atmega8 auch ohne externen quarz betreiben und einfach
xtal1 und xtal2 freilassen?

Danke fuer eure hilfe!

von ...HanneS... (Gast)


Lesenswert?

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.

von Wanze (Gast)


Lesenswert?

Danke schoen fuer die Antwort!

von Thorsten (Gast)


Lesenswert?

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

von ...HanneS... (Gast)


Lesenswert?

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

von Thorsten (Gast)


Lesenswert?

Ja, du hast schon recht. Vielleicht hatte ich da bisher einfach nur
Glück, aber versuchen kann mans ja :)

von Christof Rieger (Gast)


Lesenswert?

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.

von ...HanneS... (Gast)


Lesenswert?

Aber bitte keinen Quarz mit "runder" Frequenz, sondern einen
"Baudratenquarz", sie Datenblatt Seite 155-157...

von Christof Rieger (Gast)


Lesenswert?

So soll es sein, die sind teilweise sogar billiger ;-)

von ...HanneS... (Gast)


Lesenswert?

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

von Christof Rieger (Gast)


Lesenswert?

8MHz raus 7,3728MHz rein. Aber du hast schon recht ein Anfänger würde
das Kotzen kriegen und sich ans Forum wenden ;-).

von ...HanneS... (Gast)


Angehängte Dateien:

Lesenswert?

Naja, ich habe da einige Steckbuchsen nachgerüstet, auch für den Quarz.

von Thomas Burkhardt (Gast)


Lesenswert?

Ich kann das Geschrei über "gerade" Quarze nicht verstehen. Damit sind
doch trotzdem einige Baudraten machbar - nicht alle, aber was solls ;-)

von Christof Rieger (Gast)


Lesenswert?

Die Abweichunge sind dann größer als bein dynamisch calibrierten
RC-Oszillator.

von Thomas Burkhardt (Gast)


Lesenswert?

Ja, aber mit typisch 0,2 % Abweichung akzeptabel... siehe Datenblatt.

von Khani (Gast)


Lesenswert?

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

von Bernhard (Gast)


Lesenswert?

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

von Tobias Schneider (Gast)


Lesenswert?

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
Noch kein Account? Hier anmelden.