Forum: Mikrocontroller und Digitale Elektronik SPI Clockrate beim Slave, mega88


von Serieller Freund (Gast)


Lesenswert?

Das der AVRmega als SPI-Slave bei hohen Taktfrequenzen nicht sooo 
optimal ist, wurde hier schon beschrieben(Jörg Wunsch?).

In meiner Anwendung habe ich einen mega88 als Släve mit 460,8kHz Clock.

Da aber der Master den Clock vorgibt, frag ich mich, wie eine sichere 
Kommunikation zustande kommen kann, zumal der Masterclock bei einem 
Projekt 100kHz, und beim anderen Projekt 400kHz sein kann.

Oder denke ich zu kompliziert?

von (prx) A. K. (prx)


Lesenswert?

Offensichtlich, denn da der Slave den Takt vom Master geliefert bekommt 
kann der exakte Wert ihm egal sein. Kritisch ist nur die Reaktionszeit 
auf "Byte verfügbar", mangels Puffer, die durchaus taktabhängig ist.

von Serieller Freund (Gast)


Lesenswert?

Aber warum muss ich den beim Slave überhaupt einen Clock einstellen?

von (prx) A. K. (prx)


Lesenswert?

Musst du doch garnicht.

von Serieller Freund (Gast)


Angehängte Dateien:

Lesenswert?

> Musst du doch garnicht.

Hm, ich hab mit dem Codevision-Wizard das Grundgerüst erstellt. Bei der 
Auswahl als Slave hab ich auch eine Clock ausgewählt. Dann hab ich mir 
zuviel Gedanken gemacht.

So wie du es sagtst ist es auch verständlicher.

Besten Dank!

von Peter D. (peda)


Lesenswert?

Serieller Freund schrieb:
> In meiner Anwendung habe ich einen mega88 als Släve mit 460,8kHz Clock.

Wenn der Master keine langen Pausen zwischen den Bytes macht und der 
Slave auch senden soll, hast Du genau 1/2 Takt Zeit, neue Daten ins SPDR 
zu schreiben.

Bei 20MHz am ATmega88 sind das 20MHz : 460kHz : 2 = 21 Zyklen.
Ich will nicht sagen, daß das völlig unmöglich ist, aber daran haben 
sich schon einige die Zähne ausgebissen.

Ein MC mit gepuffertem SPI scheint mir da deutlich einfacher, z.B. 
AT89LP4052.


Peter

von Serieller Freund (Gast)


Lesenswert?

Die CPU-Clock ist 7,3728 MHz. Demnach komme ich auf 8 Zyklen für das 
Senden eines Bytes vom Slave zum Master, was sehr wenig ist.

Leider bekomme ich erst nächste Woche zum testen ein Board mit nem 
SPI-Master. Ich werde evtl. diesen Thread dann nochmal ausgraben.


Erstmal vielen Dank!

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
Noch kein Account? Hier anmelden.