我正在尝试让 SPI 在两个微处理器之间工作。一个是ESP32,充当主节点,另一个是
STM32,充当子节点。
我正在使用 HSPI 的 ESP32(有 3 个可用)。
问题是作为主要设备,我使用 spi_device_transmit() 来发送和接收数据。
我收到的数据是正确的。就代码而言,我发送的数据不正确。
在 ESP32 上我有这个循环:
uint8_t tx_buffer[3] = { 0x00, 0x00, 0x00 };
while(1) {
t.length=3*8;
t.tx_buffer=tx_buffer;
t.rx_buffer=recvbuf;
spi_device_transmit(handle, &t);
printf("%#x %#x %#x\n", recvbuf[0], recvbuf[1], recvbuf[2]);
sleep(1);
}