STM32串口数据

2019-03-23 18:06发布

本帖最后由 forever1314 于 2016-7-19 10:36 编辑

STM32中上位机发送的数据与串口接收的数据不一样。
QQ截图20160719102439.png

我想把ch的值赋给GPIOF然后让它点亮相关的LED,但是不管在上位机上发送任何数据与GPIOF相关的LED都会亮(GPIOF总是被拉低)。程序能够执行到printf语句,上位机上能够发射和接收数据而且发射与接收的数据相同,在赋值给GPIOF时ch的值与上位机上的值不一样,求解。

此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
14条回答
lcofjp
2019-03-24 15:27
forever1314 发表于 2016-7-19 13:20
没有额,ch只在这个函数里出现。

我真不知道该如何说你了
你确定GPIOF->ODR = ch;这个语句,在ch小于128的时候能控制得了Pin7和Pin8?
你的8位变量,最高能控制到Pin7,Pin8是无论如何也不会变的
另外只有ch在大于127的时候才会影响到Pin7,你发送任何可见字符都是没意义的,只能发送十六进制数字才行。
如果你没啥意见的话,可以改成
GPIOF->ODR = ch << 7;

一周热门 更多>