OpenEdv-开源电子网

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

STM32F4 串口接收数据错误

[复制链接]

6

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
72
金钱
72
注册时间
2017-7-6
在线时间
19 小时
发表于 2019-4-26 14:36:26 | 显示全部楼层 |阅读模式
1金钱
大佬们我有一个问题,我现在用一个单片机给4G模块发AT指令获取时间,然后4G模块把时间发送给另一个单片机的串口是能显示正确的,但回传回原来的那个单片机就出现了错误,这是为什么呢
附上代码

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

使用道具 举报

14

主题

204

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2443
金钱
2443
注册时间
2017-9-13
在线时间
559 小时
发表于 2019-4-26 15:38:54 | 显示全部楼层
if(res <= '9' && res >= '0' | res == '-' | res == ' ')

这行应该不对吧
回复

使用道具 举报

6

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
72
金钱
72
注册时间
2017-7-6
在线时间
19 小时
 楼主| 发表于 2019-4-26 15:51:11 | 显示全部楼层
HCHDaLeiGe 发表于 2019-4-26 15:38
if(res = '0' | res == '-' | res == ' ')

这行应该不对吧

这是我加的条件语句,因为只想让他获取数字
回复

使用道具 举报

21

主题

211

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1423
金钱
1423
注册时间
2016-8-3
在线时间
576 小时
发表于 2019-4-26 15:52:53 | 显示全部楼层
paralzer 发表于 2019-4-26 15:51
这是我加的条件语句,因为只想让他获取数字

中断不要加延时
回复

使用道具 举报

6

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
72
金钱
72
注册时间
2017-7-6
在线时间
19 小时
 楼主| 发表于 2019-4-26 16:05:31 | 显示全部楼层

一开始没加。。后来问了下我学长,他说加个延时试试
回复

使用道具 举报

6

主题

15

帖子

0

精华

初级会员

Rank: 2

积分
72
金钱
72
注册时间
2017-7-6
在线时间
19 小时
 楼主| 发表于 2019-4-26 21:03:34 | 显示全部楼层
我发现不同的板子,一个收一个发就可以,但同一块板子同一个串口用来收发就会出现程序卡死,。。这是为什么呢
回复

使用道具 举报

2

主题

84

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1087
金钱
1087
注册时间
2019-1-5
在线时间
255 小时
发表于 2019-4-27 14:05:13 | 显示全部楼层
中断里不要放原地死循环延时;
if(res <= '9' && res >= '0' | res == '-' | res == ' ')这句我不明白你的意思,| 运算这些运算符优先级你看一下,最好用的时候加上括号;
你设断点,先确定能进中断,然后逐步下来看看问题在哪儿;
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-4-30 13:13

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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