HAL串口输出大部分是UserA button pressed

2019-07-14 14:11发布

按说应该是串口输出:
UserA button pressed.
UserB button pressed.
可是结果并不是想象的那样,
输出大部分是UserA button pressed.偶尔会出现不全的第二句
大家有没有遇到过。是我哪里没有弄对?还是HAL 的BUG?

问题找到了:原来是长度没有给对。。。“ ” 看上去是4个字符,其实C编译的时候只是0x0D,0x0A只是表示两个字符。
总结一下,字符长度,还是用strlen函数计算比较好,我为了方便,就自己数了一下,结果就错了。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
17条回答
wyusx
1楼-- · 2019-07-14 23:15
这个,,,,还 没有用过F4的板子。
你我然后
2楼-- · 2019-07-15 02:20
djw200988 发表于 2019-2-15 14:31
是不是size参数的问题?

size,我是数过的,没错。
有开发板的,可以测试下
你我然后
3楼-- · 2019-07-15 06:44
 精彩回答 2  元偷偷看……
djw200988
4楼-- · 2019-07-15 08:33
你我然后 发表于 2019-2-15 15:08
size,我是数过的,没错。
有开发板的,可以测试下

手边没这个型号,我数的size是23,,要不你放到数组里,用sizeof试试
亲爱的娜娜
5楼-- · 2019-07-15 08:48
波特率调高些或者发送的延时加长试下!
木木川BB
6楼-- · 2019-07-15 11:51
取消按键评定部分,直接循环输出,看看是否可以循环显示A/B语句;
可以的话,再进行调试,
而且A/B按键之间没有延时,最后加了延时,所以,应该执行A语句的可能性最大;

一周热门 更多>