OpenEdv-开源电子网

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

通过nrf24l01用STM32F103ZET6单片机与pc串口助手通信

[复制链接]

5

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2022-1-1
在线时间
26 小时
发表于 2022-5-8 16:54:45 | 显示全部楼层 |阅读模式
5金钱
我想用通过nrf24l01用STM32F103ZET6单片机与pc串口助手通信,单片机发数据,串口助手收,但是串口助手没有反应,求大佬解惑

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

使用道具 举报

10

主题

3327

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8416
金钱
8416
注册时间
2020-5-11
在线时间
3837 小时
发表于 2022-5-8 17:16:46 | 显示全部楼层
本帖最后由 LcwSwust 于 2022-5-8 17:17 编辑

你这问题有点怪,单片机与PC串口助手通信与NRF24L01有啥关系?
抛开NRF24L01,先把单片机的串口调通再说。
单片机和PC之间是否有一个USB转串口芯片?这个芯片是否可以短接TXD、RXD然后自发自收试一下?串口号是否正确?
如果USB转串口芯片没问题,再检查连线是否正确,TXD、RXD是否需要交换。
最后再检查单片机,可用示波器测单片机TXD引脚看是否有数据波形。
若没示波器,也可找个导线将单片机TXD(或USB转串口芯片的接收脚)短暂的短接到地,看助手是否收到数据。

专治疑难杂症
回复

使用道具 举报

0

主题

668

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1926
金钱
1926
注册时间
2021-8-13
在线时间
262 小时
发表于 2022-5-9 09:43:18 | 显示全部楼层
同楼上大佬想法一致,你这个模块跟单片进行串口通信没有什么关系,按照大佬的方法去测试调通你的串口先
回复

使用道具 举报

5

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2022-1-1
在线时间
26 小时
 楼主| 发表于 2022-5-12 16:17:45 | 显示全部楼层
LcwSwust 发表于 2022-5-8 17:16
你这问题有点怪,单片机与PC串口助手通信与NRF24L01有啥关系?
抛开NRF24L01,先把单片机的串口调通再说。 ...

大佬,我的代码卡在了最大重发次数上,在NRF24L01_TXPACKET中读取到的sta为0x1e,正常为0x2e,这应该怎么修改呢?
回复

使用道具 举报

10

主题

3327

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8416
金钱
8416
注册时间
2020-5-11
在线时间
3837 小时
发表于 2022-5-12 16:38:10 | 显示全部楼层
S00 发表于 2022-5-12 16:17
大佬,我的代码卡在了最大重发次数上,在NRF24L01_TXPACKET中读取到的sta为0x1e,正常为0x2e,这应该怎么 ...

手册里有
傲游截图20220512163728.jpg
专治疑难杂症
回复

使用道具 举报

5

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2022-1-1
在线时间
26 小时
 楼主| 发表于 2022-5-12 19:52:36 | 显示全部楼层

这已经清除了,但是还是不行
屏幕截图 2022-05-12 195132.png
回复

使用道具 举报

10

主题

3327

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8416
金钱
8416
注册时间
2020-5-11
在线时间
3837 小时
发表于 2022-5-13 09:49:25 | 显示全部楼层
S00 发表于 2022-5-12 19:52
这已经清除了,但是还是不行

不要说“不行”,我不知道“不行”是什么东东。要不就把自动重发关掉,要不就加一个超时处理,“不行”就跳过,让其它程序“行”。



专治疑难杂症
回复

使用道具 举报

5

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2022-1-1
在线时间
26 小时
 楼主| 发表于 2022-5-15 10:03:50 | 显示全部楼层
本帖最后由 S00 于 2022-5-15 10:11 编辑
LcwSwust 发表于 2022-5-13 09:49
不要说“不行”,我不知道“不行”是什么东东。要不就把自动重发关掉,要不就加一个超时处理,“不行”就 ...

大佬,这个RF_CH要设为40呢?我设置成0才能单片机之间发送接收东西,40就接不到,但是好像代码通常都是用40,我是用32的板子跟51通信
屏幕截图 2022-05-15 100126.png
回复

使用道具 举报

10

主题

3327

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8416
金钱
8416
注册时间
2020-5-11
在线时间
3837 小时
发表于 2022-5-15 10:11:19 | 显示全部楼层
S00 发表于 2022-5-15 10:03
大佬,这个RF_CH要设为40呢?我设置成0才能单片机之间发送接收东西,40就能显示发了但是接不到,但是好像 ...

RF_CH是"频道"的意思,通信双方频道一致才可通信.双方设置为40应该也是能通信的.
专治疑难杂症
回复

使用道具 举报

5

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2022-1-1
在线时间
26 小时
 楼主| 发表于 2022-5-15 10:13:24 | 显示全部楼层
LcwSwust 发表于 2022-5-15 10:11
RF_CH是"频道"的意思,通信双方频道一致才可通信.双方设置为40应该也是能通信的.

可是确实40是通信不了的,0却可以,而且这个频道的计算公式是2400+RF_CH,我不太懂怎么计算的,不知道计算的原理
回复

使用道具 举报

5

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
152
金钱
152
注册时间
2022-1-1
在线时间
26 小时
 楼主| 发表于 2022-5-15 10:16:58 | 显示全部楼层
本帖最后由 S00 于 2022-5-15 10:18 编辑
LcwSwust 发表于 2022-5-15 10:11
RF_CH是"频道"的意思,通信双方频道一致才可通信.双方设置为40应该也是能通信的.

而且我把NRF接在USB转TTL接口上,把这个底座接口接在电脑上,用单片机上的NRF给这个NRF发数据,用40也是传不过去,但是0可以,而且如果是用那个底座接口的NRF给单片机上的NRF传数据,不论是40还是0都接不到,懵逼了
回复

使用道具 举报

10

主题

3327

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
8416
金钱
8416
注册时间
2020-5-11
在线时间
3837 小时
发表于 2022-5-15 10:24:01 | 显示全部楼层
S00 发表于 2022-5-15 10:13
可是确实40是通信不了的,0却可以,而且这个频道的计算公式是2400+RF_CH,我不太懂怎么计算的,不知道计 ...

计算不需要原理,人家芯片就是这样设计的,只告诉你可以这样算.
关键在于双方频道一致.如同对讲机.
专治疑难杂症
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
4
金钱
4
注册时间
2024-11-28
在线时间
1 小时
发表于 2024-12-3 09:39:05 | 显示全部楼层
S00 发表于 2022-5-15 10:13
可是确实40是通信不了的,0却可以,而且这个频道的计算公式是2400+RF_CH,我不太懂怎么计算的,不知道计 ...

40的话两个频率不同就不能进行通信了,顺带问一句做出来了吗
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-1-19 02:37

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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