欧美成人aaaaa免费视频_亚洲欧美激情小说另类_欧美激情一区二区三区视频_一级在线|欧洲

技術頻道

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

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 De clare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
  Public De clare Function SetTimer Lib "user32" (ByVal hwnd As Long, ByVal nIDEvent As Long, ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long
  Public De clare 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,它的二次開發功能會邁上一個新的臺階。 ■

文章版權歸西部工控xbgk所有,未經許可不得轉載。

欧美成人aaaaa免费视频_亚洲欧美激情小说另类_欧美激情一区二区三区视频_一级在线|欧洲

      9000px;">

          久久99精品久久久久久动态图 | 亚洲大片免费看| 日韩欧美另类在线| 欧美肥妇bbw| 色老综合老女人久久久| 成人午夜视频免费看| 精品一二三四在线| 蜜桃久久久久久| 日本不卡的三区四区五区| 洋洋av久久久久久久一区| 1000部国产精品成人观看| 国产欧美一区二区精品久导航| 5858s免费视频成人| 91精品久久久久久蜜臀| 91精品国产综合久久小美女| 日韩免费成人网| 日韩一区二区精品| 日韩一级精品视频在线观看| 欧美精品黑人性xxxx| 欧美精品九九99久久| 日韩写真欧美这视频| 精品久久久久久久久久久久包黑料 | 亚洲视频一区在线| 国产精品素人视频| 中文字幕第一区第二区| 欧美国产欧美综合| 国产精品久久福利| 尤物av一区二区| 天天做天天摸天天爽国产一区| 性欧美大战久久久久久久久| 日韩在线一区二区| 久久99国产精品成人| 国产一区二区三区香蕉| 91在线免费看| 99国产精品久久久久久久久久| 91色综合久久久久婷婷| 成人教育av在线| 在线成人免费视频| 91精品国产综合久久精品| 国产美女精品一区二区三区| 北岛玲一区二区三区四区| 91精品欧美一区二区三区综合在| 欧美日韩高清一区| 欧美激情自拍偷拍| 图片区小说区国产精品视频| 一区在线播放视频| 国产精品蜜臀av| 国产精品乱码一区二区三区软件| 欧美日韩免费观看一区三区| av激情亚洲男人天堂| 全国精品久久少妇| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 精品999在线播放| 91成人在线观看喷潮| 欧美色精品天天在线观看视频| 日韩女优制服丝袜电影| 99国产精品国产精品久久| 国产日产欧美一区二区三区 | 欧美高清你懂得| 日韩一区二区精品在线观看| 日韩毛片高清在线播放| 国产在线播精品第三| 在线综合视频播放| 日韩女优电影在线观看| 亚洲午夜久久久| 色综合久久综合网| 一区二区三区成人| 在线成人小视频| 国产另类ts人妖一区二区| 欧美精品九九99久久| 婷婷夜色潮精品综合在线| 日韩一区二区三区免费看| 亚洲精品视频一区| 欧美一区二区三区视频免费| 久久精品国产色蜜蜜麻豆| 精品99999| 色婷婷亚洲精品| 日韩一区二区三区四区五区六区| 欧美韩国日本不卡| 成人少妇影院yyyy| 欧美一区二区性放荡片| 精品午夜久久福利影院| 日韩中文字幕不卡| 97精品超碰一区二区三区| 久久久精品日韩欧美| 午夜视频一区二区| 欧美三级乱人伦电影| 亚洲电影第三页| 欧美日韩夫妻久久| 午夜精品视频在线观看| 在线观看不卡一区| 亚洲自拍偷拍麻豆| 欧美精品久久99久久在免费线 | 日韩欧美卡一卡二| 韩国女主播一区| 欧美精品一区二区三| 国内精品不卡在线| 久久久久国产精品免费免费搜索| 国产精品2024| 亚洲视频一区二区在线观看| 一本色道久久综合亚洲精品按摩 | 欧美电影在线免费观看| 午夜成人免费视频| 91精品国产色综合久久ai换脸 | 91天堂素人约啪| 亚洲黄色在线视频| 国产欧美久久久精品影院| 国内精品免费在线观看| 久久只精品国产| 成人avav影音| 国产精品私人影院| 91九色02白丝porn| 精品在线免费观看| 成人免费在线视频| 777午夜精品免费视频| 国产真实乱偷精品视频免| 亚洲男人的天堂在线观看| 欧美日韩国产区一| 国产精品电影一区二区| 欧美三级日本三级少妇99| 激情综合色播五月| 中文字幕欧美国产| 欧美浪妇xxxx高跟鞋交| 国产麻豆一精品一av一免费 | 麻豆91在线看| 国产精品少妇自拍| 欧美人狂配大交3d怪物一区| 国产寡妇亲子伦一区二区| 亚洲黄色小说网站| 国产肉丝袜一区二区| 欧美三级欧美一级| 成人aaaa免费全部观看| 亚洲成av人综合在线观看| 久久久国产午夜精品| 91成人网在线| 国产69精品久久久久毛片| 亚洲高清在线精品| 国产精品久久久久久久久晋中| 欧美私模裸体表演在线观看| 国产一区美女在线| 视频在线观看91| 亚洲色图在线看| 久久精品欧美日韩精品| 51久久夜色精品国产麻豆| 91免费在线播放| 美日韩一区二区| 亚洲一区二区精品3399| 亚洲欧美一区二区三区久本道91| 欧美mv和日韩mv国产网站| 精品视频在线免费看| 色8久久精品久久久久久蜜| www.爱久久.com| 国产·精品毛片| 狠狠色丁香久久婷婷综| 亚洲在线一区二区三区| 国产欧美一区二区三区沐欲| 99精品国产99久久久久久白柏| 美女视频黄 久久| 午夜激情一区二区| 亚洲午夜在线视频| 亚洲一区二区不卡免费| 亚洲综合视频在线| 亚洲丝袜精品丝袜在线| 国产精品国产馆在线真实露脸| 国产亚洲精品aa| 欧美经典一区二区| 中文字幕乱码亚洲精品一区 | 欧美三级韩国三级日本三斤| 欧洲av一区二区嗯嗯嗯啊| 91论坛在线播放| 欧洲在线/亚洲| 欧美日韩国产精选| 欧美日韩高清在线| 欧美美女bb生活片| 欧美三级一区二区| 欧美精品xxxxbbbb| 日韩一区二区在线看片| 91成人看片片| 日韩一区二区在线看片| 欧美日韩第一区日日骚| 欧美大片一区二区| 国产不卡高清在线观看视频| 欧美日韩在线精品一区二区三区激情| 天使萌一区二区三区免费观看| 久久精子c满五个校花| 亚洲福利一区二区| 日韩码欧中文字| 中文字幕第一区综合| 亚洲人精品一区| 亚洲女同女同女同女同女同69| 亚洲国产精品久久久久婷婷884| 亚洲激情五月婷婷| 免费观看30秒视频久久| 亚洲福利视频三区| 欧美成人三级电影在线| 久久女同精品一区二区| 精品日韩欧美一区二区| 欧美成人官网二区| 亚洲欧美经典视频| 亚洲超碰精品一区二区|