Hallo zusammen,
ich versuche gerade SPI auf meinem Atmega1284p zum laufen zu bekommen.
Ich habe das Datenblatt gelesen, allerdings hilft es mir nicht wirklich
weiter.
Im Datenblatt wird erklärt, wie man ein Byte schickt, aber wie genau ist
das Vorgehen, wenn ich mehr als ein Byte schicken will, zum Beispiel ein
Byte Adresse und ein Byte Daten. Setze ich zwischen die einzelnen
"Übertragungen" ein Delay?
Wenn ja, wie lang?
Im Datenblatt steht habe ich leider nur diesen Beispielcode gefunden:
1 | void SPI_MasterTransmit(char cData){
|
2 | /* Start transmission */
|
3 | SPDR = cData;
|
4 | /* Wait for transmission complete */
|
5 | while(!(SPSR & (1<<SPIF)));
|
6 | }
|
Dazu muss ja noch Slave select auf low gelegt werden.
Hat jemand ein Stück Beispielcode für mich?
Gruß David