Forum: Mikrocontroller und Digitale Elektronik ATMega48 mit Taktvorteiler - USART-Takt auch geteilt?


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Sebastian (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Wie viele hier wohl bereits wissen, bieten neuere ATMegas (wie der 
48/88/168) die Möglichkeit, den Systemtakt durch Setzen des 
CLKPR-Registers über einen Vorteiler zu ändern.
Aus dem Datenblatt kann ich jedoch beim besten Willen nicht ablesen, ob 
dies auch die USART-Baudrate beeinflußt. Da ist einerseits davon die 
Rede, daß der heruntergeteilte Takt auch für die Peripherie gilt, z.B. 
als clkIO. Andererseits ist in Zusammenhang mit der USART-Baudrate bzw. 
UBRR-Einstellung immer von fOsc die Rede, und nicht von einem bestimmten 
Peripherietakt als Quelle.

Der Oszillator läuft nach wie vor mit 8 MHz. Wenn ich einen 
Taktvorteiler von 16 für die CPU festlege, muß ich dann für die 
Berechnung der Baudrate von fOsc=8.000.000 ausgehen, oder vielmehr von 
fOsc=500.000?

Auch Google ist in dieser Frage nicht sehr freundlich zu mir (oder ich 
verwende die falschen Suchbegriffe, kann auch sein).

von Alexander B. (esquilax)


Bewertung
0 lesenswert
nicht lesenswert
Wenn ich mich recht erinnere gibts doch in den Datenblättern immer so 
schöne Grafiken, die den Grundaufbau des Controllers zeigen. Da ist doch 
auch immer eingezeichnet, wer von wo welchen Takt (oder sonstiges 
Signal) bekommt?

von Benedikt K. (benedikt) (Moderator)


Bewertung
0 lesenswert
nicht lesenswert
Sebastian schrieb:

> Auch Google ist in dieser Frage nicht sehr freundlich zu mir (oder ich
> verwende die falschen Suchbegriffe, kann auch sein).

Die erste Anlaufstelle bei solchen Problem ist das Datenblatt:
Aus dem Blockdiagramm direkt am Anfang von 8. System Clock and Clock 
Options kann man die Antwort schon entnehmen.
Wenn das nicht reicht, dann steht es weiter unten auch nochmal im 
Klartext drin:
This can be used with all clock source options, and it will affect the clock
frequency of the CPU and all synchronous peripherals. clkI/O, clkADC, clkCPU, and clkFLASH are divided by a factor as shown in Table 28-3 on page 308.

von Sebastian (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Okay. Danke, Benedikt.

Ich war bloß ziemlich verunsichert, weil nirgendwo gesagt wurde, daß der 
USART ein "synchronous peripheral" ist.

von Zulu (Gast)


Bewertung
0 lesenswert
nicht lesenswert
>Ich war bloß ziemlich verunsichert, weil nirgendwo gesagt wurde, daß der
>USART ein "synchronous peripheral" ist.

Das "synchron" bezieht sich hier auf die USART, also eine Kommunikation 
wo ein Takt zusätzlich übertragen wird, nicht auf seine Taktquelle (was 
dann trotzdem egal wäre).

von Sebastian (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Also gehen nur maximal 4800 Baud im Double-Speed Modus. Wie schade.

von Benedikt K. (benedikt) (Moderator)


Bewertung
0 lesenswert
nicht lesenswert
Sebastian schrieb:

> Ich war bloß ziemlich verunsichert, weil nirgendwo gesagt wurde, daß der
> USART ein "synchronous peripheral" ist.

Steht aber auch im Datenblatt:
8.1.2 I/O Clock – clkI/O
The I/O clock is used by the majority of the I/O modules, like Timer/Counters, SPI, and USART.

> Also gehen nur maximal 4800 Baud im Double-Speed Modus. Wie schade.

Mit einem Baudratenquarz geht auch mehr:
7,3728MHz/16=460,8kHz
460,8kHz/8 (U2X Mode)=57600Baud

von Sebastian (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Oh, stimmt. Asche auf mein Haupt.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.