CodeX
20.04.2007, 06:04
Hallo zusammen,
ich wollte euch mal Fragen ob dieser Codeschnipsel beim AVR richtig ist. Ich möchte nämlich SPI im Fullduplexmodus verwenden.
Danke für eure Antworten im Voraus.
Viele Grüsse
CodeX
char SPI_MasterTransmit(char cData)
{
volatile char IOreg;
/* Start transmission */
PORTB &= ~(1<<DD_SS);
SPDR = cData;
//SPCR |= (1<<SPE);
/* Wait for transmission complete */
while(!(SPSR & (1<<SPIF)));
IOreg = SPSR;
IOreg = SPDR;
PORTB |= (1<<DD_SS);
// SPSR &= ~(1<<SPIF);
return (IOreg);
}
ich wollte euch mal Fragen ob dieser Codeschnipsel beim AVR richtig ist. Ich möchte nämlich SPI im Fullduplexmodus verwenden.
Danke für eure Antworten im Voraus.
Viele Grüsse
CodeX
char SPI_MasterTransmit(char cData)
{
volatile char IOreg;
/* Start transmission */
PORTB &= ~(1<<DD_SS);
SPDR = cData;
//SPCR |= (1<<SPE);
/* Wait for transmission complete */
while(!(SPSR & (1<<SPIF)));
IOreg = SPSR;
IOreg = SPDR;
PORTB |= (1<<DD_SS);
// SPSR &= ~(1<<SPIF);
return (IOreg);
}