官方提供的spi相关文档都是做主机,能不能在RT-Thread框架内实现SPI从机模式呢?
这样配置有没有什么问题?
// 3、针对设备进行配置
{
struct rt_spi_configuration cfg;
cfg.data_width = 8;
cfg.mode = RT_SPI_SLAVE | RT_SPI_MODE_0 | RT_SPI_MSB;
cfg.max_hz =
20 * 1000 * 1000; /* 20M,SPI max 42MHz,ssd1351 4-wire spi */
rt_spi_configure(spi_dev_usb, &cfg);
}
操作该如何触发接收函数?
uint8_t num = 0;
num = rt_spi_recv(spi_dev_usb, buf_recv, 5);
if (num) {
rt_kprintf("num = %d<br>", num);
for (size_t i = 0; i < num; i++)
{
rt_kprintf(" %02X ", buf_recv*);
buf_send* = buf_recv* ^ 0xff;
}
rt_kprintf("<br>");
rt_spi_send(spi_dev_usb, buf_send, num);
}
rt_thread_mdelay(50);
循环读取出来的数据全是0xFF
更多回帖