一区二区三区成人-一区二区三区www-一区二区三区 日韩-一区二区日韩欧美-一区二区日韩精品中文字幕-一区二区日韩

tangfeng
學海無涯
級別: 探索解密
精華主題: 0
發(fā)帖數量: 44 個
工控威望: 143 點
下載積分: 922 分
在線時間: 95(小時)
注冊時間: 2010-01-24
最后登錄: 2024-12-22
查看tangfeng的 主題 / 回貼
樓主  發(fā)表于: 2017-09-02 16:50
'在窗體的Load事件中加入下列代碼對串口進行初始化:
Private Sub Form_Load()
  MSComm1.CommPort = 1                  ' 設置通信端口號為COM1
  MSComm1.InputMode = 1                 ' 接收二進制型數據
  MSComm1.RThreshold = 1                ' 設置并返回要接收的字符數
  MSComm1.SThreshold = 1                ' 設置并返回發(fā)送緩沖區(qū)中允許的最小字符數
  MSComm1.Settings = "9600,E,7,1"       ' 設置串口1通信參數
  MSComm1.PortOpen = True               ' 打開通信端口1
  Timer1.Enabled = False
End Sub
'向PLC發(fā)送指令:02 30 31 30 30 30 32 30 03 35 36,功能是從D0開始讀取32個字節(jié)數據
Private Sub Cmdsend_Click()
  MSComm1.Output = Chr(&H2) & Chr(&H30) & Chr(&H31) & Chr(&H30) & Chr(&H30) & Chr(&H30) & Chr(&H32) & Chr(&H30) & Chr(&H3) & Chr(&H35) & Chr(&H38)
  Timer1.Enabled = True
End Sub
'獲得各輸入端口狀態(tài)
Private Sub Timer1_Timer()
  Dim Inbyte() As Byte
  Dim buffer As String
  ReDim Inbyte(100)
  Inbyte = MSComm1.Input                         '返回的數據串
  For i = LBound(Inbyte) To UBound(Inbyte)
     buffer = buffer + Hex(Inbyte(i)) + Chr(32)
  Next i
  'Text1.Text = buffer                            '顯示返回的數據串,需自己添加TextBox
  If Hex(Inbyte(2)) = "31" Then                  '31表示觸點閉合
    Shape1(0).FillColor = QBColor(12)
  Else                                           '30表示觸點斷開
    Shape1(0).FillColor = QBColor(10)
  End If
  If Hex(Inbyte(6)) = "31" Then
    Shape1(1).FillColor = QBColor(12)
  Else
    Shape1(1).FillColor = QBColor(10)
  End If
  If Hex(Inbyte(10)) = "31" Then
    Shape1(2).FillColor = QBColor(12)
  Else
    Shape1(2).FillColor = QBColor(10)
  End If
  If Hex(Inbyte(14)) = "31" Then
    Shape1(3).FillColor = QBColor(12)
  Else
    Shape1(3).FillColor = QBColor(10)
  End If
  If Hex(Inbyte(18)) = "31" Then
    Shape1(4).FillColor = QBColor(12)
  Else
    Shape1(4).FillColor = QBColor(10)
  End If
  If Hex(Inbyte(22)) = "31" Then
    Shape1(5).FillColor = QBColor(12)
  Else
    Shape1(5).FillColor = QBColor(10)
  End If
  If Hex(Inbyte(26)) = "31" Then
    Shape1(6).FillColor = QBColor(12)
  Else
    Shape1(6).FillColor = QBColor(10)
  End If
  If Hex(Inbyte(30)) = "31" Then
    Shape1(7).FillColor = QBColor(12)
  Else
    Shape1(7).FillColor = QBColor(10)
  End If
  If Hex(Inbyte(34)) = "31" Then
    Shape1(8).FillColor = QBColor(12)
  Else
    Shape1(8).FillColor = QBColor(10)
  End If
  If Hex(Inbyte(38)) = "31" Then
    Shape1(9).FillColor = QBColor(12)
  Else
    Shape1(9).FillColor = QBColor(10)
  End If
  If Hex(Inbyte(42)) = "31" Then
    Shape1(10).FillColor = QBColor(12)
  Else
    Shape1(10).FillColor = QBColor(10)
  End If
  If Hex(Inbyte(46)) = "31" Then
    Shape1(11).FillColor = QBColor(12)
  Else
    Shape1(11).FillColor = QBColor(10)
  End If
  If Hex(Inbyte(50)) = "31" Then
    Shape1(12).FillColor = QBColor(12)
  Else
    Shape1(12).FillColor = QBColor(10)
  End If
  If Hex(Inbyte(54)) = "31" Then
    Shape1(13).FillColor = QBColor(12)
  Else
    Shape1(13).FillColor = QBColor(10)
  End If
  If Hex(Inbyte(58)) = "31" Then
    Shape1(14).FillColor = QBColor(12)
  Else
    Shape1(14).FillColor = QBColor(10)
  End If
  If Hex(Inbyte(62)) = "31" Then
    Shape1(15).FillColor = QBColor(12)
  Else
    Shape1(15).FillColor = QBColor(10)
  End If
  Timer1.Enabled = False
End Sub
'當退出程序時,關閉串行口
Private Sub Cmdquit_Click()
  MSComm1.PortOpen = False           '關閉串口
  Unload Me
End Sub
// 讀不到PLC 輸入點,下標越界,望高手指點修改
j654346731
級別: 略有小成
精華主題: 0
發(fā)帖數量: 123 個
工控威望: 215 點
下載積分: 4213 分
在線時間: 144(小時)
注冊時間: 2016-02-18
最后登錄: 2024-05-18
查看j654346731的 主題 / 回貼
1樓  發(fā)表于: 2017-09-06 16:52
收藏了
yhtxiao
級別: 探索解密
精華主題: 0
發(fā)帖數量: 36 個
工控威望: 145 點
下載積分: 496 分
在線時間: 67(小時)
注冊時間: 2011-05-19
最后登錄: 2025-01-07
查看yhtxiao的 主題 / 回貼
2樓  發(fā)表于: 2017-09-07 21:33
反饋數據是8位數據  用串口監(jiān)測軟件看一下數據結構應該很好理解
duquanplc
DDD
級別: 略有小成
精華主題: 0
發(fā)帖數量: 260 個
工控威望: 404 點
下載積分: 703 分
在線時間: 219(小時)
注冊時間: 2008-08-25
最后登錄: 2025-01-04
查看duquanplc的 主題 / 回貼
3樓  發(fā)表于: 2017-09-08 21:57
為什么不用專用協(xié)議做呢?格式一或格式四都可。
不小心遇見你
自動項目、PLC、視覺、通訊等工控軟件開發(fā)QQ3515716
級別: 工控俠客

精華主題: 3 篇
發(fā)帖數量: 2053 個
工控威望: 2972 點
下載積分: 25205 分
在線時間: 1445(小時)
注冊時間: 2014-01-05
最后登錄: 2025-01-09
查看不小心遇見你的 主題 / 回貼
4樓  發(fā)表于: 2017-09-09 14:38
不要這樣寫程序 給你推薦個官方使用的控件即可 使用方便
MX Component
項目、視覺、通訊QQ3515716
roger614
級別: 略有小成
精華主題: 0
發(fā)帖數量: 78 個
工控威望: 235 點
下載積分: 472 分
在線時間: 154(小時)
注冊時間: 2007-10-28
最后登錄: 2018-09-26
查看roger614的 主題 / 回貼
5樓  發(fā)表于: 2018-03-10 14:15
用4樓方法編寫簡單
gafika
級別: 略有小成
精華主題: 0
發(fā)帖數量: 17 個
工控威望: 395 點
下載積分: 2341 分
在線時間: 41(小時)
注冊時間: 2018-02-16
最后登錄: 2024-05-27
查看gafika的 主題 / 回貼
6樓  發(fā)表于: 2018-03-10 18:26
ASCII 跟 HEX 要先搞清楚。

主站蜘蛛池模板: 国产日韩欧美色视频色在线观看 | 日韩精品视频美在线精品视频 | 日韩在线视频一区二区三区 | 青青91| 精品国产品香蕉在线观看 | 亚洲无线一二三区2021 | 日本精品一卡二卡≡卡四卡 | 忘忧草在线社区WWW日本-韩国 | 午夜爽喷水无码成人18禁三级 | 91免费永久在线地址 | 国产成人+亚洲欧洲 | 国产国拍亚洲精品av | 小SAO货叫大声点妓女 | 18日本xxxxxxⅹxx96 | 爱福利一区二区 | 日本hdxxxx护士 | 欧美人禽杂交狂配无删完整 | 国内外精品免费视频 | 国产精品色拉拉免费看 | 草莓绿巨人香蕉茄子芭乐 | 日本高免费观看在线播放 | 91九色视频无限观看免费 | 贰佰麻豆剧果冻传媒一二三区 | 草草影院免费 | 99久久国产综合精品麻豆 | 日本高清中文字幕视频在线 | 精品福利视频一区二区三区 | 紧身裙女教师miad711在线 | 841995论坛网站2022年 | 亚洲第一成年免费网站 | 精品国产欧美一区二区五十路 | 99久久久久国产精品免费 | 毛片网站观看 | 色婷婷影院在线视频免费播放 | 亚洲精品国产精品精 | 国产成人手机在线 | 亚洲国产美女精品久久久久 | 亚洲精品乱码久久久久久蜜桃图片 | 亚洲精品国产精品国自产观看 | 欧美国产日韩1区俺去了 | 春宵福利网站在线观看 |