Witam,
mam problem ze sterowanie wewnętrznym modułem USI. Potrzebuję skonfigurować go do pracy w trybie Three-wire Mode(SPI). Na samym początku konfiguruję porty SCK i MOSI jako wyjścia oraz MISO jako wejście. Procedurę obsługi USI w trybie Tree-wire zaczerpnąłem z noty katalogowej i przerobiłem ją na kod w C. Wygląda to tak:
Ale niestety dane nie są ani odbierane ani wysyłane
Dziękuję za każdą pomoc
Pozdrawiam
mam problem ze sterowanie wewnętrznym modułem USI. Potrzebuję skonfigurować go do pracy w trybie Three-wire Mode(SPI). Na samym początku konfiguruję porty SCK i MOSI jako wyjścia oraz MISO jako wejście. Procedurę obsługi USI w trybie Tree-wire zaczerpnąłem z noty katalogowej i przerobiłem ją na kod w C. Wygląda to tak:
unsigned char SPITransfer(unsigned char Dane)
{
USIDR = Dane;
USISR = _BV(USIOIF);
while(USISR & _BV(USIOIF))
USICR = _BV(USIWM0) | _BV(USICS1) | _BV(USICLK) | _BV(USITC);
return USIDR;
}Ale niestety dane nie są ani odbierane ani wysyłane
Dziękuję za każdą pomoc
Pozdrawiam