STM32
登录
直播中
维生素B2
12年用户
911经验值
私信
关注
[问答]
STM32F10x用一个UART接收多个字节连续发送的信息出现程序卡死的原因?
开启该帖子的消息推送
STM32F10x
STM32
F10x用一个UART接收多个字节连续发送的信息出现程序卡死的原因?
回帖
(1)
李名扬
2021-12-9 14:11:20
问题
STM32F10x用一个UART接收多个字节连续发送的信息的时候,单步调试能正常接收,但全速运行之后会卡在中断服务函数,接收终止。
原因
发生了接收器的溢出错误,以下是STM32F10x参考手册
大致意思就是:RXNE为1的时候再往输入缓冲区读入新的字节会发生溢出错误。
那RXNE什么时候为1呢?答:在输入缓冲区非空的时候。
那怎么时候才能把RXNE复位为1呢:以下摘自STM32F10x参考手册
也就是有两种方法:一种是把输入缓冲区的数据读出来,RXNE就自动复位了,还有一种就是主动把RXNE写成0(一般不推荐)
解决
在进入中断服务函数之后尽快读取接收到的数据(一般是在判断完RXNE位之后)
问题
STM32F10x用一个UART接收多个字节连续发送的信息的时候,单步调试能正常接收,但全速运行之后会卡在中断服务函数,接收终止。
原因
发生了接收器的溢出错误,以下是STM32F10x参考手册
大致意思就是:RXNE为1的时候再往输入缓冲区读入新的字节会发生溢出错误。
那RXNE什么时候为1呢?答:在输入缓冲区非空的时候。
那怎么时候才能把RXNE复位为1呢:以下摘自STM32F10x参考手册
也就是有两种方法:一种是把输入缓冲区的数据读出来,RXNE就自动复位了,还有一种就是主动把RXNE写成0(一般不推荐)
解决
在进入中断服务函数之后尽快读取接收到的数据(一般是在判断完RXNE位之后)
举报
更多回帖
rotate(-90deg);
回复
相关问答
STM32F10x
STM32F10X
UART
4 + DMA的代码分享
2021-12-10
683
24L01
连续
发送
多个字节
数据的
程序
是什么
2020-05-20
1033
请问cube的HAL_
UART
_Receive_IT函数是每次进入中断
接收
一个字节
吗?
2019-02-20
9954
STM32F10x
串口怎么使用?
2021-12-13
623
单片机串口
接收
从串口助手发过来的
多个字节
,只有第
一个字节
是
接收
正常
2017-01-04
19803
为什么
用
stm32f10x
调试串口通讯第
一个
数据会丢失呢
2021-12-09
726
STM32F10x
USART主要特性是什么?
2021-12-06
840
STM32
控制nrf24l
10
,
发送
32
个字节
会收到64
个字节
是为什么?
2020-05-19
1846
如何去实现
STM32F10X
UART
1开启DMA时钟的设计呢
2021-12-08
648
STM32F10x
ADC的特点有哪些
2021-09-26
1433
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分