ABB banner26年4月
關注中國自動化產業發展的先行者!
2026中國自動化產業年會
2025工業安全大會
OICT公益講堂
當前位置:首頁 >> 案例 >> 案例首頁

案例頻道

用VB6實現儀器串口通信及檢測功能
  • 企業:控制網     領域:儀器儀表    
  • 點擊數:1453     發布時間:2005-08-02 16:47:22
  • 分享到:
介紹利用 VB6串行通信編程的方法,對采用了RS-232接口的儀器進行串行通信的計算機測控軟件開發,以及實現儀器功能和指標的驗收。



    越來越多的微機用戶已習慣于Windows操作系統。不過Windows應用軟件的開發對于一般工程技術領域的技術人員來說并非易事,然而使用微軟的VisualBasic6.0(簡稱VB6)來開發這些方面的Windows應用軟件就十分方便,編程工作量相對較小,只需進行主要應用功能的編程和少量界面控制的編程。本文介紹利用VB6串行通信編程的方法對采用了RS-232接口的儀器,進行串行通信的計算機測控軟件開發和實現儀器功能和指標的驗收。

    VB6提供了許多供用戶選擇的控件(Customcontrol),這些控件以.OCX為文件后綴名,其中MSCOMM.OCX即是用于串行通信的控件。如果需要使用該控件,可將該控件添加到工具箱(toolbox)內,這樣就可以利用該控件進行串行通信程序的設計。

    下面舉一個簡單的例子,說明如何進行串行通信程序的設計,該程序在Windows98環境下已調試通過。該例介紹通過RS-232對一臺HP53150A微波計數器的程控功能和性能指標的驗收。

    1 設計用戶界面

    首先新建一個“標準EXE”工程,然后選擇“工程/部件”菜單項,在“部件”對話框中選擇Microsoft Comm Control6.0即可添加MsComm控件;再在窗體中依次布置如下控件并設置其屬性。
 

控件名稱

name 屬性

Caption 屬性

Form

form1

空

Frame1

frame1

空

Frame2

frame2

空

Frame3

frame3

空

Command1

comd1

確定

Command2

comd2

退出

Command3

comd3

確定

Command4

comd4

退出

Command5

comd5

做完退出

MSComm

msc1

空

Label 1

lab1

RS-232 接口功能檢測

Label 2

lab2

請輸入被檢儀器程控碼控制儀器功能

Label 3

lab3

請輸入被檢儀器程控碼讀取儀器數據

Text1

txt1

空

Text2

txt2

空

 

 

    2 編寫程序代碼

    編寫的程序代碼如下:

PriVate Sub Form_Load ()

Msc1.CommPort=1    使用串行口 1

波特率 9600 ,偶校驗, 8 個數據位, 1 個停止位

Msc 1.Settings=“9600 , E , 8 , 1”

當使用 Msc 1.Input 時,每次從接收緩沖區取一個字節。

Msc1.InputLen=0 讀取整個接收緩沖區內碼或消除

Msc1.Portopen=True   打開串行口

End Sub

Private Sub Comd1_Click ()

On Error Resume Next    簡單的錯誤處理

If Txt1.Text = "" Then

x = MsgBox ( " 被檢儀器程控碼不能為空值 ", 16 )

Exit Sub

End If

MSC1.Output = Txt1.Text + Chr$ ( 13 )

發送程控碼

For i = 1 To 20000000

Next

End Sub

Private Sub Comd2_Click ()

Txt1.Text = ""

Txt1.SetFocus

End Sub

Private Sub Comd3_Click ()

Dim instring As string

instring = MSC1.Input

MSC1.Output = Txt2.Text + Chr$ ( 13 )

Do

DoEvents

Loop Until MSC1.InBufferCount >= 20

instring = MSC1.Input 從接收隊列中讀入字符串

Txt2.Text = ""

Txt2.Text = instring 顯示讀入的字符串

End Sub

Private Sub Comd4_Click ()

Txt2.Text = ""

Txt2.SetFocus

End Sub

Private Sub Comd5_Click ()

MSC1.PortOpen = False 關閉串行口

End

End Sub

 

    3 程序簡要說明

    上述程序設置的端口通信協議為: 9600波特率,偶校驗,8個數據位,1個停止位。當退出程序時,一定要關閉串行口,通過comm1.PortOpen=False完成。使用時,在“請輸入被檢儀器程控碼控制儀器功能”文本框中輸入“FUNC‘FREQ 1;FREQ:RES1HZ”即儀器的程控碼為:“功能通道1測頻,分辨率為1Hz。單擊“確定”后,HP53150A置于相應功能。加入信號后即可測量檢測,當讀取測量數據時在“請輸入被檢儀器程控碼讀取儀器數據”框中輸入“DATA?”,單擊“確定”后,該框中以字符的形式顯示測量結果。從而實現儀器程控功能和性能指標的檢測。上述只是一個簡單的例子。要實現完善的功能,必須進一步改進程序。

    上面介紹了筆者在使用 VB6 開發 Windows 環境下測控軟件的一點收獲,可以看出使用 VB6 開發 Windows98 下與儀器進行串口通信程序是非常簡單的。

熱點新聞

推薦產品

x
  • 在線反饋
1.我有以下需求:



2.詳細的需求:
姓名:
單位:
電話:
郵件:
欧美视频一区