久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: VB調(diào)入計算機存在的串口 [打印本頁]

作者: xueren    時間: 2013-7-13 00:21
標題: VB調(diào)入計算機存在的串口
在單片機串口通信開發(fā)中,使用上位機的人機交互界面豐富了用戶體驗,也能相應的擴展功能,彌補單片機單一的任務處理能力。使用單片機串口通信,接口簡單,易于上位機編程的實現(xiàn)。如果在VisualBasic編寫串口通信程序中,實現(xiàn)自動調(diào)入計算機存在的串口的功能,能大大方便了用戶輕松的連接到想要的串口,這將是一個更好的用戶體驗。目的是使得用戶不用大費周章去尋找串口號。實現(xiàn)這一功能并不難實現(xiàn),下面阿浩介紹這一種方法。


VB與串口VisualBasic可以打開16個串口,但是通常計算機只配置一個或者兩個串口,或者根本就沒有串口,這時就需要我們使用串口轉(zhuǎn)USB來支持。而且有時計算機的串口還可能被其他程序使用,因此,為了增強軟件使用的魯棒性,必須增加一段代碼,用語龐端本計算機可以利用的有效串口數(shù),如果串口在使用,也應加入可使用的行列來,只是在使用過程中要考慮其是否已經(jīng)被其他程序打開,為了用戶提示相應的信息。
關于VB編寫串口通信程序詳見 《PC機與單片機串行通信的實現(xiàn)》、《VB平臺下串口通信的實現(xiàn)》

程序調(diào)入串口的方法調(diào)入計算機可用的串口,簡單的方法是嘗試去打開那個串口。簡單來說,我們只需要對16個串口號進行逐個掃描。掃描的方法是:嘗試打開該串口,串口可以打開,則加入列表中去,供用戶連接;否則計算機不存在那個串口或者被其他程序占用時,VB將產(chǎn)生一個錯誤。

調(diào)入串口時錯誤的處理在調(diào)入串口的過程中,會產(chǎn)生一些錯誤。這時我們必須捕獲錯誤并解決掉,否則程序無法往下執(zhí)行。如果串口存在并被其他程序占用,如已處于打開狀態(tài),也會發(fā)生錯誤。我們需要編寫一段錯誤處理函數(shù),當發(fā)生錯誤的時候,進入錯誤處理函數(shù)。

程序代碼:
'--------------------------------------------------------------------------'                            調(diào)入計算機存在的串口'版本:V1.0.2'程序設計:JH單片機'--------------------------------------------------------------------------Private Sub CommLoad()   On Error GoTo ErrLine   '如果錯誤,進入錯誤處理程序   Dim I As Integer        '定義可訪問的串口數(shù)   Dim Counter As Integer  '用于記錄經(jīng)檢查可以使用的串口號   Counter = 0             '計數(shù)器清零   For I = 1 To 16         '循檢可能存在的16個串口     MSComm.CommPort = I   '將每個串口依次打開     MSComm.PortOpen = True                           '打開串口     If MSComm.PortOpen = True Then                   '如果打開成功,說明該串口可用       MSComm.PortOpen = False                        '檢查完畢,關閉串口       CboSerialPort.AddItem "COM" + CStr(I), Counter   '將可用串口增加到組合框內(nèi)       Counter = Counter + 1                            '記數(shù)器加1     End If   Next I   CboSerialPort.ListIndex = 0          '將第一個可用串口設為默認值  Exit Sub        '跳出程序ErrLine:   If Err.Number = 8005 Then            '如果在處理過程中有串口被其它程序打開,則應將其加入組合框內(nèi)      CboSerialPort.AddItem "COM" + CStr(I), Count  '將可用串口增加到組合框內(nèi)      Counter = Counter + 1  '計數(shù)器加1   End If   Resume Next      '回到出錯入口處,繼續(xù)執(zhí)行循檢串口程序!End Sub代碼簡述上述代碼利用Err函數(shù)進行串口檢查,首先對可能存在的16個串口進行掃描,逐個打開,如果串口能打開,說明其存在并且是空閑的,然后關閉該串口,將其加入端口號組合框內(nèi),并且計數(shù)器Counter加1,進行下一個端口掃描。反之端口不能打開,則會出現(xiàn)錯誤,轉(zhuǎn)入錯誤處理函數(shù)進行處理。






歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 99re在线视频免费观看 | 特一级黄色毛片 | 九色porny自拍视频 | 国内久久精品 | 在线āv视频 | 美国a级毛片免费视频 | 韩国电影久久 | 午夜精品久久久久久久星辰影院 | 国产精品夜夜春夜夜爽久久电影 | 日本视频在线 | 婷婷国产一区 | 久久国产精品一区 | 8x国产精品视频一区二区 | 亚洲日韩中文字幕一区 | 欧美一区二区在线免费观看 | 午夜免费精品视频 | 成人亚洲网 | 国产精品久久久久久久久久免费看 | 国产福利91精品一区二区三区 | 欧美a v在线| 欧美亚洲国产一区 | 日韩视频一区 | 女人一区| 区一区二区三在线观看 | 午夜精| 四虎影视1304t | 欧美精品综合在线 | 久久久成人免费视频 | 欧美一级特黄aaa大片在线观看 | 日韩精品一区二区不卡 | 日本电影韩国电影免费观看 | 亚洲视频免费在线观看 | 国产精品资源在线 | 国产精品一区在线观看 | 欧美精品在线播放 | 99福利视频 | 99reav| 视频一区二区中文字幕 | 99爱视频| 神马影院一区二区三区 | 91亚洲国产精品 |