[51单片机] 串口调试助手-给其发0其显示159,为啥?

[复制链接]
2267|7
 楼主| 敬畏技术 发表于 2013-7-25 10:52 | 显示全部楼层 |阅读模式
用printf("The voltage is %d\n",a);
51单片机程序里a=0,串口调试助手里显示159(没勾中16进制,即ASCII显示模式);
a=1,则显示415
2,671;
3,768;
为啥不是1,2,3呢?
奇怪了

lanmao8701 发表于 2013-7-25 11:11 | 显示全部楼层
波特率一样吗?感觉应该是上位机跟单片机波特率不一致所致
pangencao 发表于 2013-7-25 12:28 | 显示全部楼层
printf("The voltage is %d\n",a&0xff);
soso 发表于 2013-7-25 12:57 | 显示全部楼层
我的也是!我发送AA接收显示BA
 楼主| 敬畏技术 发表于 2013-7-25 13:40 | 显示全部楼层
回2楼:波特率一致的。不一致的话串口不通讯的,也不会有任何显示;

回3楼:加了&0xff后,当a=1,不显示;=2,显示一个乱码近似为“L"逆时针旋转180度;=3,显示一个乱码近似为“L"
yaoshiyia 发表于 2013-7-25 17:22 | 显示全部楼层
应该是波特率不一致  我的程序重复发一段字符串,要么就少几个字符,要么就把两次发送的弄在一起了   是波特率高了么   我用的4800
ningling_21 发表于 2013-7-25 17:54 | 显示全部楼层
敬畏技术 发表于 2013-7-25 13:40
回2楼:波特率一致的。不一致的话串口不通讯的,也不会有任何显示;

回3楼:加了&0xff后,当a=1,不显示;= ...

不一致也会通信,只不过数据不是原来定义的数据,是乱码数据...
lirunze 发表于 2013-7-25 20:29 | 显示全部楼层
路过下啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

6

帖子

0

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