打印
[技术讨论]

ESP32S3 SPI 双工模式无法读取数据

[复制链接]
737|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yangwc|  楼主 | 2022-6-2 20:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    驱动 RC522 NFC 芯片,当目标芯片设置为 ESP32 时,SPI 可正常通信(可读写 RC522 寄存器)。
    相同的代码,将目标芯片设置为 ESP32S3 后,编译出错,报如下错误:
    SPI half duplex mode is not supported when both MOSI and MISO phases are enabled

    在 ESP32-S3 的编程指南中找到:
    Half-duplex transactions with both read and write phases are not supported. Please use full duplex mode.   
   
    于是屏蔽掉 .flags = SPI_DEVICE_HALFDUPLEX

    编译通过,通过 SPI 发送数据正常,但读取数据时,发送完所要读取的寄存器地址后,SPI 总线就挂起了,表现为:CS 拉高了,无时钟信号输出。

    请教是什么原因。

使用特权

评论回复

相关帖子

沙发
yangwc|  楼主 | 2022-6-7 09:45 | 只看该作者
ESP32 论坛里面有人回复说收发数据时采用配置 .addr = xx 取代 tx_buffer 里面的地址,我试过了,确实可以解决这个问题。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

5

主题

32

帖子

0

粉丝