OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4645|回复: 5

NRF24L01无法检测到设备,SPI_Read函数返回值一直为0x00

[复制链接]

7

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
95
金钱
95
注册时间
2019-2-11
在线时间
17 小时
发表于 2021-12-12 01:04:23 | 显示全部楼层 |阅读模式

uint8_t NRF24L01_Check(void)
{
    uint8_t buf[5]={0XA5,0XA5,0XA5,0XA5,0XA5};
    uint8_t i;
  
    SPI1_SetSpeed(SPI_BAUDRATEPRESCALER_8);     //设置SPI速率9M
    NRF24L01_Write_Buf(NRF_WRITE_REG+TX_ADDR,buf,5);  //写入数组
    NRF24L01_Read_Buf(TX_ADDR,buf,5);   //读取数组
    for(i=0;i<5;i++)if(buf[i]!=0XA5)break;                                    
    if(i!=5)return 1;   //无法检测到设备
    return 0;     //检查到设备
}   


SPI_Read函数的返回值一直是0x00!!!!!!!!!!!!!

怎样搞呀?用的是Hal库,这是SPI的问题?还是NRF24L01的问题?头大!!!!!

用的是最小系统板STM32F103C6T6,或者有人有源码?



正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

7

主题

20

帖子

0

精华

初级会员

Rank: 2

积分
95
金钱
95
注册时间
2019-2-11
在线时间
17 小时
 楼主| 发表于 2021-12-12 01:05:48 | 显示全部楼层
SPI设置的速率只要不高于10M应该都可以吧?
回复 支持 反对

使用道具 举报

15

主题

1061

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
3583
金钱
3583
注册时间
2019-8-14
在线时间
1052 小时
发表于 2021-12-13 12:25:59 | 显示全部楼层
24L01最大10M时钟,如果检测不到NRF的话,这个可以换到别的可以用的板子试试,可以的话,说明代码问题了,检查SPI与NRF初始化
回复 支持 反对

使用道具 举报

0

主题

6

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2022-3-7
在线时间
9 小时
发表于 2022-3-9 20:24:22 | 显示全部楼层
请问楼主解决这个问题了吗,小弟也遇到了这个问题被卡了好几天
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2021-1-23
在线时间
14 小时
发表于 2022-4-4 17:06:28 | 显示全部楼层
小郭调不通程序 发表于 2022-3-9 20:24
请问楼主解决这个问题了吗,小弟也遇到了这个问题被卡了好几天

解决了吗。老哥
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
19
金钱
19
注册时间
2020-9-22
在线时间
6 小时
发表于 2022-4-9 12:28:12 | 显示全部楼层
是如何解决的老哥,我最近在调试lkt4305芯片也遇见了无法写入数据的情况
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-25 21:53

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表