打印

【提问】关于SPI接口发送字节函数的问题

[复制链接]
275|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
肉坨坨|  楼主 | 2019-11-21 12:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在学习SPI接口操作W25Q64这块对下面这个函数不太理解,为什么程序会跳出第二个while循环?
查参考手册SPI的SR寄存器复位值为0x0002,即TXE为1,RXNE为0,调用该函数写指令时(比如调用SPI_FLASH_SendByte(W25Q_SectorErase);),第一个while不满足条件跳出循环执行 SPI_I2S_SendData(SPI1, byte);
但进入第二个while,SPI没接收数据啊,RXNE为0满足条件,程序岂不是卡在这里死循环了?为什么会跳出循环,RXNE何时置1的,难道W25Q64的DO口的高阻态发送到了SPI的接收缓存区?
想不通为什么,希望有人解答谢谢。
u8 SPI_FLASH_SendByte(u8 byte)
{

使用特权

评论回复

相关帖子

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

本版积分规则

419

主题

431

帖子

0

粉丝