找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3418|回复: 3
收起左侧

关于工控机C语言RS232通讯的数据发送接收问题

[复制链接]
ID:392480 发表于 2018-9-1 23:24 | 显示全部楼层 |阅读模式
我这边用研华的工控机开发控制系统,控制松下的伺服驱动器,是用C语言开发的,现在需要用RS232通讯读取驱动器的绝对值编码器信息,现在在232通讯上遇到问题,是这样的:程序发出16进制数,比如发出0x11,然后我先用另外一台电脑,装了一个串口调试助手,发现接收到的是88 00,发送0x12和0x13接收到的都是89 00,发送0x14,0x15,接收到的都是8A 00,分析了一下,应该是数据右移了一位,然后高位补1,但是总是多出来00不知道为什么。我就是希望发送0x11,接收到11的,您看这是什么原因呢?在网上查有说是波特率设置不当,或是数据位,校验位停止位设置不当,感觉两头也都设置的一样呀,9600波特率,8位数据位,奇偶校验无,1位停止位。请教各位!
回复

使用道具 举报

ID:303383 发表于 2018-9-2 10:21 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

ID:391172 发表于 2018-9-3 08:28 | 显示全部楼层
明显是波特率出了问题,从你的描述来看,波特率设置应该没问题,可能是控制器的晶振不对或者不准引起的,你可以在PC端尝试一下其它几个波特率看看,比如说2400,4800,115200等等。
回复

使用道具 举报

ID:390775 发表于 2018-9-3 11:36 | 显示全部楼层
发下代码 看下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表