mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Wieder mal Oszillator-Verständnisfrage


Autor: Ithamar Garbe (antimon)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

nachdem längeres Suchen im Forum nicht weitergeholfen hat, muss ich
doch meine Frage posten:

Kann ich den internen Oszillator für externe Bausteine verwenden? Laut
Datenblatt ist XTAL1 ja der Eingang und XTAL2 der Ausgang, der an
weitere Bausteine angeschlossen werden kann - gilt das nur wenn der
Eingang beschalten ist? Oder kann ich mit dem internen Oszillator auch
externe Bausteine ansteuern?

Und nochwas, da der interne ja ziemlich ungenau ist und für serielle
Verbindungen nicht geeignet ist: Ich möchte den CAN-Controller MCP2515
mit einem ATTiny2313 verbinden und möglichst viel Platz einsparen.
Falls ich den 2515 an den interen Takt anschliessen kann, langt das für
den CAN-Betrieb bei 500 kbaud? Oder ist der Takt dafür zu ungenau?

Falls es nicht geht, verbinde ich besser den Oszillator mit dem
CAN-Controller und dessen Taktausgang mit dem Tiny oder umgekehrt? Oder
ist das egal?

Sorry für die vermutlich mittlerweile nervende Frage - aber zu dem
Thema hab ich durch die Suche nix gefunden :(

Autor: Ithamar Garbe (antimon)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also habe ich das richtig verstanden? Ich brauche bei einem Quarz beide
Pins (XTAL1 und XTAL2) und kann dann aber nicht einen als Ausgang
nehmen und an den anderen IC weiterleiten, dafür brauche ich einen
Oszillator, dessen Ausgang an XTAL1 geht und von XTAL2 geht der Takt
weiter zum nächsten Chip?

Wie ist das mit dem Takt für serielle Verbindungen? Es heisst für eine
stabile Datenübertragung braucht man einen "krummen" Takt, kann ich
den irgendwie extra erzeugen, den internen nehmen oder aus den
geplanten 8Mhz ableiten?

Ich bin total verwirrt, was die ganzen Takte anbelangt und hoffe dass
mir jemand Licht ins Dunkel bringen kann...

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Beim 2515 fällt mir eher der umgekehrte Fall ein. Immerhin hat der für
genau solche Fälle einen eigenen Takt-Ausgang. Also Quarz an den 2515
und dessen Taktausgang den Tiny.

Der Ausgang vom 2515 läuft zwar mit OSZ/4 an, ist aber
umprogrammierbar.

Autor: Unbkannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst das Quarz-Signal bei den meisten Controllern abgreifen, musst
aber praktisch immer das Signal sofort mit einem Schmitt-Triger puffern
das das Signal in der Regel sehr empfindlich ist.

Wenn Du das Clock-Signal an mehrer andere Bausteine verteilen musst,
baut man keine Kette sondern das Taktsignal wird nach dem Puffer
natürlich parallel verteilt.

Taktfrequenzen von einigen bis zig MHz zu verteilen ist an und für sich
kein Problem, kann aber eine absolute Falle für Anfänger werden.

Autor: Ithamar Garbe (antimon)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der ATTiny hat doch auch nen Taktausgang, ist das was anderes als der
des 2515?

Das Puffern klingt einleuchtend, aber wozu ist dann der Ausgang da -
ich dachte gerade für solche Fälle...?

Aber beide ICs sollten doch an den gleichen Takt angeschlossen werden,
wenn ich sie durch die ISP-Schnittstelle verbinde oder? Oder funzt das
auch wenn beide unterschiedlichen Takt haben?

Im Datenblatt des 2515 gibt es ein Beispiel für die Taktverteilung mit
einem 74AC04, allerdings habe ich nur 74HC04 und 74HCT04 da - die ich
vermutlich nicht verwenden kann. Oder doch?

Lieber wärs mir aber ohne weiterem Logikbaustein, der braucht nur
Platz...

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der MCP2515 hat neben den Quarzanschlüssen noch einen Ausgang CLKOUT, an
dem, wenn man nichts dagegen tut, ein gepufferter Takt mit Quarz/4
anliegt. Programmierbar auch auf Q/2 und Q/1.

Autor: Ithamar Garbe (antimon)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ah okay - der Pin, hab ich ganz übersehen...

Aber was passiert wenn ich meinen AVR da anschliesse und per SPI den
Takt auf Q/1 ändere? Dann ändert sich ja auch schlagartig der
Systemtakt des AVR und der kommt durcheinander...? Sollte ich dann nach
dem Setzen des Registers einen Soft-Reset ausführen?

Und zur prinzipiellen Beschaltung: Einfach den Ausgang des Oszillators
an OSC1 des 2515, und dessen Ausgang an den XTAL1 des AVR(Tiny/Mega),
fertig? Oder brauch ich noch irgendwelche Widerstände/Kapazitäten?

Autor: A.K. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tiny2313: "When applying an external clock, it is required to avoid
sudden changes in the applied clock frequency to ensure stable
operation of the MCU. A variation in frequency of more than 2% from one
clock cycle to the next can lead to unpredictable behavior."

Umprogrammieren geht also nicht so ohne weiteres. Softreset hilft
nicht. Ist auch nicht Q/4 sondern Q/8. Wenn also 25/8=~3MHz für den
Tiny zu wenig sind, geht's so nicht.

Andere Frage: Muss der Tiny genau getaktet werden? Der RC-Oszillator
kann ja 8MHz und wenn's nicht grad für eine Baudrate gebraucht wird,
kann man für genauere Zeiten einen Timereingang auf den CLKOUT legen.
Spart netto einen Pin ein.

Autor: Ithamar Garbe (antimon)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist mein Problem - ich weiss nicht ob es geht dass beide ICs mit
unterschiedlichen Taktraten laufen, bzw. nicht vom gleichen Oszillator
getaktet werden...

Eigentlich würde der interne des Tiny reichen, der 2515 hat ja keinen
(oder doch?) und muss daher extern getaktet werden. Nur muss halt die
Kommunikation via SPI sichergestellt werden - aber die wird via SCK
getaktet oder?

Hat der Takt des 2515 eigentlich was mit der Bustransferrate zu tun?

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.