Hallo, ich bin Einsteiger in der Hardware Welt der Mikrocontroller, habe sie bis jetzt nur programmiert. Beim erstellen meiner Platine bin ich jetzt auf ein kleines Problem gestossen, und zwar den Oszillator. Ich habe gelesen, dass man den internen Oszillator nicht verwenden kann wenn man die UART Schnittstelle für einen seriellen Anschluss nutzen möchte, da das Timing zu ungenau ist. Nach dem Studium des Handbuchs weiss ich nun, dass es folgene möglichkeiten gibt: - External Crystal/Ceramic Resonator - External Low-frequency Crystal - External RC Oscillator - External Clock Leider kann ich die Begriffe nicht wirklich zuordnen zu dem was in den Katalogen von Conrad etc. steht. Was ist für meinen Einsatz das richtige und auf was sollte ich bei dieser Lösung dann achten, dass das Ding beim umstellen der Fuse Bits nicht gleich unprogrammierbar wird? Ausserdem steht im Handbuch etwas von 1MHz mit dem integrierte Oszillator. Heisst das, dass ich die 16 MHz nur mit externem erreiche, oder sind das unterschiedliche Dinge? Gruss Peter
Wenn Du nicht sehr schnell übertragen mußt (z.B. <=1200 Baud), geht das durchaus mit dem internen Oszillator bei 1 MHz. Probier einfach, danach die Überrtagungsrate schritweise zu steigern. Den Mega8 kannst Du mit Fusebits bis 8 MHz bringen, alles darüber oder genauer braucht einen externen Quarz bzw. Takt.
Bei 4% Taktabweichung ist beim 10. Bit der Sample-Punkt schon indiskutable 40% daneben. Egal ob 1200 bps oder 115200 bps. Einzig die Charakteristik eines MAX232 macht das oben kritischer als unten, seitens des Controllers ist der Effekt unabhängig von der Bitrate.
Die verschiedenen Taktquellen sind auch im Datenblatt beschrieben (sogar bebildert). Crystals sind Quarze. Hier bieten sich welche mit "ungeraden" Frequenzen - auch "Baudraten-Quarze" genannt - an (z.B.3,686MHz). RC Oscillator sind RC-Schwingkreise, die sich durch ihre nicht besonders grosse Frequenzstabilität auszeichnen. External Clock ist ein (Rechteck-)Taktsignal, das von einem Quarzoszillator oder einem anderen Controller (CAN-Controller haben häufig einen Taktausgang, an dem man einen anderen Controller betreiben kann) erzeugt wird. Fusebits sind nur "gefährlich", wenn man den Controller nicht per HV-PP-Mode "revitalisieren" kann. Die Bedienung im AVRStudio ist eigentlich recht einfach. Man muß sich nur im Klaren darüber sein, was man macht/machen will.
@A.K. Ich glaube nicht, daß es egal ist, wie schnell man überträgt. Erstens kann man das experimentell sehr schön ausprobieren (wie hoch man gehen kann), und auch der Bitratenfehler steigt mit wachsender Geschwindigkeit..
> kann man das experimentell sehr schön ausprobieren
Wobei das dann aber nur für eine bestimmte Temperatur gilt. Am nächsten
morgen, wenn die Zimmertemperatur um 5°C gefallen ist, funktioniert es
vielleicht nicht mehr.
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.