NRF24L01调试记 (STM32F4,STM32F1,STM8L)

本文记录了在STM32F103、STM32F407和STM8L051F3上使用NRF24L01进行SPI通信时遇到的问题及解决过程。主要问题包括CSN信号时序错误、通信延迟需求以及STM8L中CSN口电平异常,通过修正代码、添加延迟和检查硬件解决了问题。
摘要由CSDN通过智能技术生成

其实网上NRF24L01的资料很多,例程也很多,本不应该有什么大问题,但是确出了各种奇怪的问题,花了不少时间。

  1. STM32F103+NRF24L01
    用最小系统板搭了个平台,加上网上的例程,问题是检查NRF24L01的时候,一直没法找到,读写地址寄存器失败,起初怀疑是引线的问题,自己检查连线以及针脚定义,都没有发现问题,既然针脚没有问题怀疑是SPI通讯的问题,接着检查SPI配置,都没有发现明显的错误,尽管分频到256还是不行,十分不解,检查时序代码,因为是网上现成的代码本来想不应该有问题,但是还真的发现问题了,发现网上时序先是将CSN拉高!发送结束后再拉低!这个明显不符,修改后运行正常,哎,网上人家给的例程未必人家就验证过,切记!
  2. STM32F407+NRF24L01
    用自己做的系统板子,加上网上的例程搭了下,起初的问题和在f1上的一样,心想只要更改了CSN的问题就也能解决,但是问题依旧!!!十分不解,反复检查引脚连接以及SPI设置,因为都是CUBE生成的配置文件,应该不会有问题啊,开启在线调试,意外发现读写能正常,意识到估计需要加延迟,后续的程序中CSN拉低后加了HAL_DELAY(1),程序就能正常运行了。
  3. STM8L051F3+NRF24L01
    自己刚刚接触STM8,这是我第一个做的东西,很多地方都不是很熟悉,stm32用cube就能方便的生成配置,STM8也有cube但是不能生成配置。。。那有啥用!要手动
  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值