[STM32F1] 求助,串口助手发送一串字符,比如10个,但只能收到第一个字符,后面的丢失,求原因!

[复制链接]
10434|26
liuyuqiong1 发表于 2014-9-26 11:58 | 显示全部楼层
zhlzbl 发表于 2014-9-26 10:41
已经把发送相关的调用都关闭了,也不行。
尝试把IRQ中的printf全部关闭,再main中判断flag并打印接收的到 ...

那应该是你的逻辑上的问题,那现在可以了吧?
qq4988 发表于 2014-9-26 11:58 | 显示全部楼层
zhlzbl 发表于 2014-9-26 11:55
你是说printf的使用相当于发送了一串对么?
printf使用的usart2,接收是usart1,不是同一个串口。
把此处 ...

那你试一下串口1与串口2的中断优先级设一下,串口1优先于串口2
 楼主| zhlzbl 发表于 2014-9-26 12:35 | 显示全部楼层
liuyuqiong1 发表于 2014-9-26 11:58
那应该是你的逻辑上的问题,那现在可以了吧?

把串口IRq中的printf关了,就正常了哈~~!
 楼主| zhlzbl 发表于 2014-9-26 12:55 | 显示全部楼层
qq4988 发表于 2014-9-26 11:58
那你试一下串口1与串口2的中断优先级设一下,串口1优先于串口2

恩,稍后试试。
xjjspace 发表于 2014-9-26 13:34 | 显示全部楼层
建议了解一下重入函数和不可重入函数,printf函数存在这个问题。
具体可以看看下面链接的11题。
http://wenku.baidu.com/link?url= ... UEbGBG4GUePiGkaU_7m
arefeng 发表于 2014-10-7 11:10 | 显示全部楼层
PRINTF关掉了中断,别的地方能用是在某个位置开启了中断。我一直不用PRINTF这个函数,觉得不好用,效率不高。但华为面试是肯定要考这个函数的
学生0时代 发表于 2014-10-14 15:39 | 显示全部楼层
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部