//SPI Communication
#define CS 10
void SPI_init() {
DDRB |= (1 << PB3) | (1 << PB5) | (1 << PB2);
SPCR = (1 << SPE) | (1 << MSTR) | (1 << SPR0);
}
char SPI_transfer(char data) {
SPDR = data;
while (!(SPSR & (1 << SPIF)));
return SPDR;
}
void setup() {
char buffer[] = "Uryyb, FCV! ";
Serial.begin(115200);
pinMode(CS, OUTPUT);
digitalWrite(CS, HIGH);
SPI_init();
digitalWrite(CS, LOW);
for (int i = 0; i < strlen(buffer); i++) {
buffer[i] = SPI_transfer(buffer[i]);
}
digitalWrite(CS, HIGH);
Serial.println("Data received from SPI device:");
Serial.println(buffer);
}
void loop() {}