对于编程来说,没什么区别,通过控制485的使能端该程序完全可以使用。唯一的区别就是你在发送的时候通过程序把485的控制脚拉高,接收的时候把他拉低就可以了。至于电气方面的区别:RS232是全双工,可以同时收发,RS485是半双工,不能同时收发,还有电平信号不一样,这个编程你就不要理了。
发送的数据应该是字节集数据{ 1 },而不是整数" 1 ",不知道你是不是这样发送的
接收每次只能接收到一个字节整数,如果要显示还需转换才能显示,前不久我作过该类调试,具体如下:
版本 2
子程序 _按钮1_被单击
局部变量 JJ, 字节集
局部变量 CH, 文本型, , "0"
局部变量 i, 整数型
CH = 分割文本 (编辑框1内容, “ ”, ) ' 用空格进行分割
i = 1
判断循环首 (i ≤ 取数组成员数 (CH))
JJ = JJ + 十六进制文本到字节集 (CH [i])
i = i + 1
判断循环尾 ()
端口1发送数据 (JJ)
子程序 _端口1_数据到达
参数 数据字节值, 整数型
程序集字节集_收到的数据 = 程序集字节集_收到的数据 + 取字节集左边 (到字节集 (数据字节值), 1)
如果真 (取字节集右边 (程序集字节集_收到的数据, 1) = 字节集_结束标志) ' 本例中: 字节集_结束标志 = { 44 }
编辑框_接收内容 = 字节集到十六进制文本 (程序集字节集_收到的数据)
程序集字节集_收到的数据 = { }
只要是发送的命令数据正确,这是应该是正解,希望对你有所帮助
以上就是关于关于怎样在linux上用C写串口收发数据程序全部的内容,包括:关于怎样在linux上用C写串口收发数据程序、易语言串口数据发送与接收问题、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)