mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik SPI / Master mit 13 MHz und slave mit 8MHz


Autor: Fred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

wie sicher ist es einen SPI Master mit einem 13MHz externen Quarz zu 
takten und den SPI Slave mit dem internen Oszillator von 8MHz?

Kann es da zu Problemen bei der Datenübertragung kommen?


Gruß

Autor: Benedikt K. (benedikt) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Fred wrote:

> wie sicher ist es einen SPI Master mit einem 13MHz externen Quarz zu
> takten und den SPI Slave mit dem internen Oszillator von 8MHz?

Ich gehe jetzt mal davon aus, der Master verwendet 13MHz/2 also 7,5MHz 
SPI Takt:
Sehr unsicher, bzw. es geht garnichts

> Kann es da zu Problemen bei der Datenübertragung kommen?

Sehr warscheinlich, bzw. es geht garnicht

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sachte. Wenn mit den 13MHz und 8MHz die Takte der jeweiligen Controller 
oder Periphiebausteine gemeint sind: die sind unwichtig.

Entscheidend ist nur der SPI-Takt. Und da muss der Slave den vom Master 
erzeugten Takt verdauen können, d.h. darf nicht zu schnell konfiguriert 
sein. Synchron zu irgendeinem CPU-Takt muss er nicht sein.

Autor: Fred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok, also die Einstellung beim Master ist f_osc/16 => 13,824MHz / 16 = 
864KHz.

Das dürfte der Controller mit 8MHz internem Osz. doch eigentlich ohne 
Probleme schaffen. Nur hab ich öfter gehört, dass der interne Osz. nicht 
so genau ist.

Aber das dürfte beim SPI doch nicht so tragisch sein, eher beim UART 
oder?

Autor: Benedikt K. (benedikt) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Fred wrote:
> Ok, also die Einstellung beim Master ist f_osc/16 => 13,824MHz / 16 =
> 864KHz.

Sag das doch gleich !

> Das dürfte der Controller mit 8MHz internem Osz. doch eigentlich ohne
> Probleme schaffen.

Ja. Der SPI Takt beim Slave muss nur kleiner als fcpu/4 sein, was es ja 
auch ist.

> Nur hab ich öfter gehört, dass der interne Osz. nicht so genau ist.
> Aber das dürfte beim SPI doch nicht so tragisch sein, eher beim UART
> oder?

So ist es. Denn SPI ist (im Gegensatz zum UART) eine synchrone 
Schnittstelle, die ihren Takt mitliefert.

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es ist völlig egal wie genau der Oszillator ist. Entscheindend ist, was 
das Handbuch zu den 8MHz-Teil sagt. Wenn der in diesem Fall einen 
SPI-Takt von Clock/8 als Slave verdauen kann, langt das.

Es gibt natürlich Einzelfälle, wie beispielsweise irgendwelche 
Chipversionen vom ENC28J60, wo fehlerbedingt Taktabhängigkeiten 
bestehen. Aber das ist die Ausnahme.

Autor: Fred (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die Hilfe!

Wie sieht es eigentlich grundsätzlich mit der Übertragung per SPI 
zwischen zwei unterschiedlichen Controllern aus, z.B. AVR zu PIC? Kann 
man das machen oder ist das nicht so zu empfehlen?

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Fred (Gast)

>Wie sieht es eigentlich grundsätzlich mit der Übertragung per SPI
>zwischen zwei unterschiedlichen Controllern aus, z.B. AVR zu PIC? Kann
>man das machen oder ist das nicht so zu empfehlen?

Das kann man IMMER machen, wenn die maximale SPI-Frequenz der Bausteine 
nicht überschritten wird. Einfache ICs, Schieberegister etc. haben eine 
feste obere Frequenz. Bei uCs ist es meist abhängig vom Quarztakt, typ. 
1/4 f_Quarz. Die genauen Frequenzen speilen keine Rolle, weil SPI 
synchron arbeitet.

MFG
Falk

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.