CC1110F32 作spi slave 端的配置
1、使用串口0 作spi slave
错误设置如下:
U0CSR &= ~(U0CSR_MODE) | U0CSR_SLAVE;
正确设置如下:
U0CSR = (U0CSR & ~U0CSR_MODE) | U0CSR_SLAVE;
其中宏的定义在 ioCCxx10_bitdef.h 中,如下示:
// U0CSR (0x86) - USART 0 Control and Status #define U0CSR_MODE 0x80 #define U0CSR_RE 0x40 #define U0CSR_SLAVE 0x20 #define U0CSR_FE 0x10 #define U0CSR_ERR 0x08 #define U0CSR_RX_BYTE 0x04 #define U0CSR_TX_BYTE 0x02 #define U0CSR_ACTIVE 0x01
2、CC1110F32 作 spi slave 端,无需配置波特率
3、SPI的主端与SPI的从端都需要配置 大小端,且需要保证大小端设置是一致的。两者同时为MSB 或 LSB
大小端序可从示波器中验证是否为软件中所设置的。
4、不同的SPI主端与SPI从端,其 CPOL 及 CPHA 配置不一定是相同的,需要作验证。可采用穷举法。
比如 SPI 从端好调试就依次测试 CPOL, CPHA, CPOL+CPHA, 无CPOL+无CPHA四种情况。