NXP MCU 技术william hill官网
直播中

俞舟群

7年用户 1079经验值
擅长:可编程逻辑 电源/新能源
私信 关注
[问答]

使用spi_device_transmit()来发送和接收数据,发送的数据不正确怎么解决?

我正在尝试让 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);
    }

更多回帖

发帖
×
20
完善资料,
赚取积分