新手求助!!!STM32在调试状态下子函数设置断点不能进入

2019-03-23 18:06发布

   各位大神好,本人是STM32初学者,现在在用STM32F103VET6做一个东西:将串口屏发送过来的数据用串口接收,再通过ZigBee发出,现在在调试串口接收屏发来的数据,接收中断函数正常,写了另一个子函数对接收数据进行处理,发现在这个子函数中设置断点不能执行到,必须点一下“RST”复位一下再能执行到,想知道哪出问题了,已经查了好几天了,谢谢诸位大神!!!

可以看到中断函数正常。

主函数也能进入断点

主函数中的子函数STM32-ZigBee()无法进入断点

当重新复位一下“RST”就能进入断点了
头文件的声明也都写了,百思不得其解,求助各位大神了,万分感谢
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
11条回答
qwerghf
1楼-- · 2019-03-23 21:42
/ 中断函数标志不对,不是USART_IT_IDLE
豆包
2楼-- · 2019-03-23 22:59
qwerghf 发表于 2016-7-17 10:40
中断函数标志不对,不是USART_IT_IDLE

这个标志是空闲帧中断,表示一帧数据接收完毕,是串口接收不确定长度数据时用的,我在网上看到有人用就用了
qwerghf
3楼-- · 2019-03-23 23:50
 精彩回答 2  元偷偷看……
豆包
4楼-- · 2019-03-24 02:12
qwerghf 发表于 2016-7-17 18:33
不是这样用,不需要这个

刚才去掉IDLE标志位了,可以进入子函数的断点,但新情况出现了,接收数组Rxbuffer2[]中接收数据出现错误,即接收数字、字母不是正确的,所以请问我现在要每次接收56个字符,即56个字符算作一帧数据,我该如何设置接收中断,请指教,谢谢!!
qwerghf
5楼-- · 2019-03-24 02:21
不需要清除标志位,你读取数据之后标志位会自动清除,你加入一个超时定时器,每次接受开启定时器计数
豆包
6楼-- · 2019-03-24 07:38
 精彩回答 2  元偷偷看……

一周热门 更多>