[AVR单片机] RS485的一些问题

[复制链接]
1906|5
 楼主| lisamessi 发表于 2013-5-18 09:09 | 显示全部楼层 |阅读模式
  这些天在研究PC机通过485控制多个下位机。上位机软件用VB做的,下位机是51单片机。发现了几个问题,打算请教各位前辈们。
  一、PC机发送指令时,比如说发送"05H 58H 43H 04H 1AH"时,下位机能正常收到。但是下位机反馈给上位机,比如发送"06H 58H 59H 04H 03H"时,上位机则不能完全接收,只能收到最后的"03H"。
  其中单片机反馈时:就是SBUF=发送的内容;while(TI==0);TI=0;依次把各个字节传到上位机。
  上位机接收的程序如下:
Private Sub MSComm1_OnComm()
Dim inbyte() As Byte
Dim buffer As String
Select Case MSComm1.CommEvent
Case comEvReceive
inbyte = MSComm1.Input
For i = LBound(inbyte) To UBound(inbyte)
buffer = buffer + Hex(inbyte(i))
Next i
Case comEvSend
End Select
huangxz 发表于 2013-5-18 09:51 | 显示全部楼层
建议楼主先用串口工具试下看收发有没有正常
https://bbs.21ic.com/icview-471786-1-1.html

评分

参与人数 1威望 +6 收起 理由
qin552011373 + 6 很给力!

查看全部评分

dqyubsh 发表于 2013-5-19 08:47 | 显示全部楼层
你可以找一下win32下开发MODBUS从机的例子,没这么简单。具体到串行中断那,要写很多代码,否则就无法稳定运行。

www.codeproject.com有篇这样的**,freemodbus也可以参考下。

评分

参与人数 1威望 +6 收起 理由
qin552011373 + 6 赞一个!

查看全部评分

qin552011373 发表于 2013-5-19 08:57 | 显示全部楼层
dqyubsh 发表于 2013-5-19 08:47
你可以找一下win32下开发MODBUS从机的例子,没这么简单。具体到串行中断那,要写很多代码,否则就无法稳定 ...

很不错的  
 楼主| lisamessi 发表于 2013-5-28 10:05 | 显示全部楼层
后来发现是VB中的MSComm控件的属性没设置好,谢谢各位帮忙
qin552011373 发表于 2013-5-29 10:37 | 显示全部楼层
lisamessi 发表于 2013-5-28 10:05
后来发现是VB中的MSComm控件的属性没设置好,谢谢各位帮忙

结贴散分吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

3

帖子

0

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