Wieso haben viele Microcontroller 2 Takt Pins?

Wieso haben viele microcontroller 2 statt nur einem Pin für den Takt (XTAL1, XTAL2), während I2C Geräte nur einen einzigen (SCL) brauchen?

(3 votes)
Loading...

Similar Posts

Subscribe
Notify of
4 Answers
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Commodore64
11 months ago

XTAL ist ein Eingang, XTAL ist die Abkürzung für Quarzoszillator.

Zwischen XTAL₁ und XTAL₂ liegt einfach ein Inverter. Den braucht man um einen Quarz “anzutreiben”.

https://de.wikipedia.org/wiki/Pierce-Schaltung

Der Inverter und der Schmidt Trigger ist dann im Mikrocontroller selber eingebaut. Man braucht nur den Quarz an XTAL₁ und XTAL₂ zusammen mit drei Kondensatoren an zu schließen.

Hat man einen eigenen Taktgenerator, also Quarzoszillator mit eingebautem Inverter (und Schmidt Trigger), dann kann man den an XTAL₁ anschließen und XTAL₂ offen lassen oder wenn möglich auf etwas anderes umschalten (I/O Pin zum Beispiel).

Man kann den XTAL₂ aber auch verwenden, denn da kommt der Takt verstärkt (aber invertiert) heraus. Hat man mehrere Mikrocontroller, kann man die so in eine Kette schalten ohne den Ausgang des Oszillators zu überlasten.

RareDevil
11 months ago

Ganz so einfach kannst Du das nicht sehen… I2C ist eine Kommunikationsschnittstelle. Der Master (µC) gibt über SCL den Takt für die Kommunikation vor, damit die übertragenen Daten auch richtig gelesen werden… Aber dieser Takt ist gegen Masse geschaltet. Nur SCL alleine würde nicht reichen. der Bezugspunkt muss auch verschaltet sein.

XTAL1 & XTAL2 sind Anschlüsse für eine externe Quartz, damit der µC überhaupt arbeiten kann, wenn kein interner Taktgeber vorhanden ist. Und interne Taktgeber sind rel ungenau. Darum nimmt man meist ext Quarzte mit sehr hoher Taktgenauigkeit. Das ist dann wichtig, wenn man mit Timern arbeitet, die über lange Zeit sehr genau laufen sollen oder Kommunkationsschnittstellen im Timing sehr präzise laufen müssen, um Spezifikationen einzuhalten.

Mach mal einen 24h Timer mit einem Atmel. Einmal mit internem Taktgeber und einmal mit Quartz. Während der externe nach 24h ziemlich genau schaltet, ist der interne um einige Minuten daneben.

tunik123
11 months ago

An XTAL1 und XTAL2 kann man einen Quarz anschließen, um den Takt zu erzeugen. Wenn man schon von außerhalb einen Takt hat, kann man den an einem der beiden Pins einspeisen und das andere offen lassen. (Bitte die Dokumentation lesen, an welchem Pin man den Takt einspeisen soll und ob man im EEPROM irgendwelche Bits setzen muss.)

newcomer
11 months ago

es gibt reine Schwingquarze die vom Controller auch mit Energie versorgt werden und es gibt Quarzofen mit Temperaturregelung die eigene Stromversorgung haben und den Takt deshalb nur an einem Pin liefern. Deshalb reicht beim Controller dann ein Eingang