Block lesen beim MCP2515

#237307
Lesenswert?

Hallo alle miteinander!

Ich habe mir eine eigene MCP2515 Library für AVRs geschrieben, und habe
aber Ärger mit dem Auslesen ganzer Blocks. Das senden von Frames klappt
wunderbar, aber wenn ich über die "READ RX Buffer Instruction" einen
empfangenen Frame auslesen will, hängt meine Funktion (wartet ewig auf
das SPIF flag). Ich habe viel ausprobiert, kriege aber dieses
sequenzielle Lesen nicht hin. Ich fürchte ich habe da ein
VBErständnissproblem wie die Bytes nacheinander aus dem MCP kommen,
nachdem ich das Signal zum starten dieses "Streams" gesendet habe.
Ich habe die SPI-Initfunktion und die Funktion zum lesen des
Empfangsbuffers angehängt. Hat irgendjemand eine Idee, ich bin mi
tmeinem Latein am Ende :-(

Besten Dank schonmal

Woeba
Angehängte Dateien:
Gast #237308
Lesenswert?

Hallo Wolfgang,

Du musst für jedes Byte, das Du über SPI übertragen willst, das SPDR
beschreiben. Auch wenn Du "nur" lesen willst: die Übertragung wird
mit einem (Dummy-) Schreibzugriff auf SPDR gestartet. Erst danach macht
ein Warten auf SPIF Sinn.

Ich habe mal mein eigenes can.c File angehängt. Das ganze gepackte
Projekt findest Du im Thread "hausbus".

Viele Grüße, Stefan
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren