Цитата(aaarrr @ Apr 29 2011, 15:32)

Управляйте CS через PIO.
Пробывал так. Почему-то зависает SPI.
Цитата(aaarrr @ Apr 29 2011, 15:32)

Управляйте CS через PIO.
вот процедуры посылки и приема байта.
void SPI_Write(AT91S_SPI *spi, unsigned int npcs, unsigned short data)
{
while ((spi->SPI_SR & AT91C_SPI_TXEMPTY) == 0);
spi->SPI_TDR = data | SPI_PCS(npcs);//| AT91C_SPI_LASTXFER;
while ((spi->SPI_SR & AT91C_SPI_TDRE) == 0);
}
unsigned short SPI_Read(AT91S_SPI *spi)
{
while ((spi->SPI_SR & AT91C_SPI_RDRF) == 0);
return spi->SPI_RDR & 0xFFFF;
}
Соответственно еще cs управляю.