美女网站一区二区_在线观看日韩毛片_成人在线视频首页_欧美精品一区二区三区久久久_国产精品亚洲一区二区三区在线_日本免费新一区视频_日本美女一区二区三区_精品亚洲成a人_久久不见久久见免费视频1_91首页免费视频_欧美一区二区在线看_91精品91久久久中77777_天堂蜜桃一区二区三区_av在线一区二区_欧美不卡一区二区_欧美影视一区二区三区

產品分類

當前位置: 首頁 > 傳感測量產品 > 數據采集產品 > 數據通訊產品

類型分類:
科普知識
數據分類:
數據通訊產品

VBA的妙用:串口通訊程序與EXCEL相結合

發布日期:2022-04-27 點擊率:506

1 VBA簡介

Visual Basic的應用程序版(VBA)是Microsoft公司長期追求的目標,使可編程應用軟件得到完美的實現,它作為一種通用的宏語言可被所有的Microsoft 可編程應用軟件所共享。在沒有VBA以前,一些應用軟件如Excel、Word、Access、Project等都采用自己的宏語言供用戶開發使用,但每種宏語言都是獨立的,需要用戶專門去學習,它們之間互不兼容,使得應用軟件之間不能在程序上互聯。擁有一種可跨越多個應用軟件,使各應用軟件產品具有高效、靈活且一致性的開發工具是至關重要的。VBA作為一種新一代的標準宏語言,具有上述跨越多種應用軟件并且具有控制應用軟件對象的能力,使得程序設計人員僅需學習一種統一的標準宏語言,就可以轉換到特定的應用軟件上去,程序設計人員在編程和調試代碼時所看到的是相同的用戶界面,而且VBA與原應用軟件的宏語言相兼容,以保障用戶在代碼和工作上的投資。有了VBA以后,多種應用程序共用一種宏語言,節省了程序人員的學習時間,提高了不同應用軟件間的相互開發和調用能力。

2 串口通訊程序

簡單的串口通訊程序一般是先由上位機向下位機發送讀(write)或寫(read)數據命令,然后等待下位機應答;下位機接受到命令之后,首先要對數據命令進行校驗,對于符合校驗約束的命令下位機會將相應的數據回復到上位機,對于不符合校驗約束的命令下位機或將其拋棄或回復錯誤信息;上位機接收到下位機的響應之后,首先要對接收到的回復信息進行校驗,對不符合校驗約束的數據進行異常處理,對符合校驗約束的信息進行解碼,解碼之后的信息便是上位機從下位機獲得的有效信息了。

上位機向串口發送讀命令之后需要等待下位機應答并讀取回復信息,常用的等待有3種方式:

1) 輪詢式

上位機向串口發送讀命令之后一直等待下位機應答,通訊程序處于一個等待循環中。

優點:速度快、誤碼率低(幾乎不存在誤碼)。

缺點:消耗CPU。(解決辦法:使用Sleep()API函數)。

2) 消息式

消息式通訊是采用響應WINDOWS消息的辦法讀取串口。

優點:節省CPU、誤碼率低。

缺點:發送接收機制過于繁瑣。

3) 定時接收式

定時接收式通訊是根據預設的定時器時間進行讀取數據。

優點:發送接收機制相對簡單、節省CPU。

缺點:誤碼率太高,不同的硬件需要配置不同的通訊時間參數,需要嚴格的校驗運算。

3 EXCEL-VBA串口通訊實例

軟件:EXCEL。

硬件:艾默生EC10 PLC。

功能:通過EXCEL中的按鈕控制PLC的輸出繼電器Y0。

界面:RUN(運行通訊)、STOP(停止通訊)、Y0(Y0 ON/OFF控制)。

主程序:
  Option Explicit
  Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
  Public Declare Function SetTimer Lib "user32" (ByVal hwnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long
  Public Declare Function KillTimer Lib "user32" (ByVal hwnd As Long, ByVal nIDEvent As Long) As Long
  Public com1 As New MSCommLib.MSComm
  Public y0Stt As Boolean
  Public y0_on As Boolean
  Public tmrFlag As Boolean
  Public tmr As Long
  Sub runn()
    On Error GoTo ed
    com1.Settings = "9600,e,8,1"
    If com1.PortOpen = False Then
      com1.PortOpen = True
    End If
    tmr = SetTimer(0, 0, 500, AddressOf ontimer)
    Exit Sub


  ed:
  MsgBox "串口打開錯誤!"
  End Sub
  Sub stopp()
    If com1.PortOpen = True Then
      com1.PortOpen = False
      KillTimer 0, tmr
    End If
  End Sub
  Public Function ontimer() 
  Dim a(7) As Byte
  Dim add As Long
  On Error GoTo ed
  If tmrFlag = False Then
    tmrFlag = True
    If y0_on = True Then
      y0_on = False
      If y0Stt = True Then
      a(0) = &H1
      a(1) = &H5
      a(2) = &H0
      a(3) = &H0
      a(4) = &HFF
      a(5) = &H0
      a(6) = &H8C
      a(7) = &H3A
      com1.Output = a
      add = 0
      Do
        DoEvents
        Sleep 10
        add = add + 1
        If add >= 100 Then
          Exit Do
        End If
      Loop Until com1.InBufferCount >= 8
      Else
      a(0) = &H1
      a(1) = &H5
      a(2) = &H0
      a(3) = &H0
      a(4) = &H0
      a(5) = &H0
      a(6) = &HCD
      a(7) = &HCA
      com1.Output = a
      add = 0
      Do
        DoEvents
        Sleep 10
        add = add + 1
        If add >= 100 Then
          Exit Do
        End If
      Loop Until com1.InBufferCount >= 8
      End If
    End If
  End If
  tmrFlag = False
  Exit Function
  ed: MsgBox "串口錯誤!"
  tmrFlag = False
  End Function


  界面程序:
  Private Sub cmd1_Click()
  y0_on = True
  y0Stt = Not y0Stt
  End Sub
  Private Sub cmdRun_Click()
  runn
  CheckBox1.Value = 1
  End Sub
  Private Sub cmdStop_Click()
  stopp
  CheckBox1.Value = 0
  End Sub

4 結束語

由上可見,VBA已經廣泛應用于微軟的應用軟件當中,所以為更好的完善二次開發功能,眾多的組態軟件都在VBA支持上做了努力,世紀星組態軟件開發語言已與VBA非常相似,相信在未來的版本中,世紀星將全面支持VBA,它的二次開發功能會邁上一個新的臺階。

下一篇: PLC、DCS、FCS三大控

上一篇: 索爾維全系列Solef?PV

推薦產品

更多
美女网站一区二区_在线观看日韩毛片_成人在线视频首页_欧美精品一区二区三区久久久_国产精品亚洲一区二区三区在线_日本免费新一区视频_日本美女一区二区三区_精品亚洲成a人_久久不见久久见免费视频1_91首页免费视频_欧美一区二区在线看_91精品91久久久中77777_天堂蜜桃一区二区三区_av在线一区二区_欧美不卡一区二区_欧美影视一区二区三区


        成人v精品蜜桃久久一区| 亚洲乱码国产乱码精品精小说| 久久偷看各类wc女厕嘘嘘偷窃| 91在线porny国产在线看| 99久久精品国产毛片| 99视频精品在线| 国产二区不卡| 日韩理论片在线观看| 中文字幕成人一区| 欧美日韩情趣电影| 日韩女优毛片在线| 欧美经典一区二区| 亚洲乱码中文字幕综合| 亚洲午夜国产一区99re久久| 日韩国产精品久久久久久亚洲| 久久99精品一区二区三区三区| 国产精品一区二区久激情瑜伽 | 综合色婷婷一区二区亚洲欧美国产| 一本一道久久a久久精品综合| 欧美亚洲国产bt| 久久久精品一品道一区| 亚洲激情图片一区| 国产一区美女在线| 99久久精品免费看国产四区 | 国产99在线免费| 亚洲国产一区二区在线| 7777精品伊人久久久大香线蕉经典版下载 | 视频一区欧美日韩| 国产成人在线免费| 国产精品中出一区二区三区| 在线一区日本视频| 精品欧美黑人一区二区三区| 亚洲欧美日韩国产另类专区 | 精品欧美一区二区精品久久| 亚洲欧洲久久| 精品99一区二区| 亚洲一区二区成人在线观看| 国产91在线看| 婷婷久久伊人| 久久久久久麻豆| 青青草97国产精品免费观看| 91麻豆福利精品推荐| 亚洲高清精品中出| 久久久九九九九| 国内精品视频666| 欧美一区二区视频在线| 欧美成人aa大片| 日韩av一级片| 精品欧美国产| 久久综合丝袜日本网| 免费xxxx性欧美18vr| 精品国产乱码久久久久久久软件| 欧美丰满少妇xxxbbb| 亚洲图片一区二区| 成人在线看片| 91精品国产综合久久久久久久 | 波多野结衣亚洲一区| 亚洲砖区区免费| 中文字幕av一区 二区| 九九精品一区二区| 亚洲精品久久区二区三区蜜桃臀 | 在线免费观看一区| 1区2区3区精品视频| 色先锋aa成人| 欧美极品美女视频| 久久综合福利| 91久久精品一区二区| 欧美国产在线观看| 久久久久久日产精品| 欧美区在线观看| 久久精品国产亚洲高清剧情介绍| 国产99一区视频免费| 国产乱码精品一区二区三区日韩精品 | 欧美国产激情二区三区| 亚洲精品成人精品456| 久久99精品久久久久久久久久久久| 成人在线视频电影| xfplay精品久久| 久久99久久99小草精品免视看| 欧美另类高清视频在线| 久久综合九色欧美综合狠狠| 国产综合色产在线精品| 亚洲丰满在线| 国产在线国偷精品产拍免费yy | 99久久婷婷国产综合精品| 免费在线观看视频一区| 国产麻豆日韩欧美久久| 亚洲日本精品一区| 福利91精品一区二区三区| 男男成人高潮片免费网站| 亚洲欧美视频在线观看| 欧美一区二区性放荡片| 久久电影网站中文字幕| 色婷婷综合激情| 石原莉奈在线亚洲三区| 色视频一区二区三区| 亚洲黄色录像片| 日韩国产精品一区二区三区| 亚洲色图视频网站| 日韩av影视| 日本vs亚洲vs韩国一区三区二区| 在线视频你懂得一区二区三区| 奇米色一区二区| 欧美日韩高清一区二区不卡| 国产高清精品网站| 精品精品欲导航| 91玉足脚交白嫩脚丫在线播放| 精品国一区二区三区| 91av免费看| 亚洲欧美偷拍三级| 亚洲最大免费| 国产一区二区三区综合| 欧美电影免费观看高清完整版 | 久久69国产一区二区蜜臀| 欧美精品丝袜久久久中文字幕| 国产综合色产在线精品| 日韩精品一区在线| 国产传媒一区二区三区| 亚洲精品中文在线影院| 一区精品在线| 国产高清在线精品| 亚洲国产精品传媒在线观看| 久久精品国产第一区二区三区最新章节| 一区二区在线免费观看| 色94色欧美sute亚洲13| 丰满亚洲少妇av| 中文字幕乱码亚洲精品一区| 日韩欧美在线一区二区| 激情文学综合丁香| 久久女同精品一区二区| 青娱乐一区二区| 国产一区中文字幕| 国产精品久久久久精k8| 在线观看国产一区| 春色校园综合激情亚洲| 中文字幕日本不卡| 在线精品视频免费播放| 91色.com| 午夜av一区二区| 久久亚洲一区二区三区明星换脸| 日本视频一区二区在线观看| 国产一区二区三区av电影| 国产欧美一区二区精品久导航| 日本精品一区二区三区视频| 精品一区二区三区久久久| 国产欧美一区二区三区鸳鸯浴| 亚洲欧洲一二三| 成人免费视频一区二区| 亚洲国产成人精品视频| 日韩美女在线视频| 日韩少妇中文字幕| 成人免费视频网站在线观看| 一区二区三区四区不卡视频| 日韩欧美国产麻豆| 天天综合狠狠精品| 91麻豆国产精品久久| 免费亚洲电影在线| 国产精品视频一区二区三区不卡| 色婷婷综合中文久久一本| 国产精品亚洲一区| 国产成人丝袜美腿| 午夜精品久久久久久不卡8050| 久久五月婷婷丁香社区| 欧美午夜免费电影| 久久综合婷婷综合| 99久久久无码国产精品| 激情国产一区二区| 亚洲动漫第一页| 中文字幕不卡在线| 欧美一级一级性生活免费录像| 日韩国产在线一区| 国产欧美在线一区二区| 国产黄人亚洲片| 免费黄网站欧美| 亚洲综合视频在线观看| 国产精品系列在线| 精品免费日韩av| 欧美三电影在线| 亚洲欧美99| 欧美日韩精品久久| 999热视频| 成人综合激情网| 久久99精品国产麻豆婷婷| 亚洲一区二区三区影院| 国产精品久久久久影院| 精品国产一区a| 91麻豆精品91久久久久同性| 日本黄色一区二区| 亚洲精蜜桃久在线| 日本一区二区三区四区在线观看| 444亚洲人体| 北条麻妃一区二区三区| 国产精品99久久久久| 紧缚捆绑精品一区二区| 免费看欧美女人艹b| 日韩精品国产欧美| 琪琪一区二区三区| 免费人成精品欧美精品| 日本欧美久久久久免费播放网| 午夜精品久久久久久久久久|