在使用labview的過程中,必不可少的用到與設(shè)備進(jìn)行串口通訊,然而一旦串口號(hào)選擇錯(cuò)誤就會(huì)導(dǎo)致設(shè)備連接不上,每次需要人為的去選擇對(duì)應(yīng)的串口號(hào),那么如何能讓軟件自動(dòng)識(shí)別不同儀器所對(duì)應(yīng)的串口號(hào)呢?今天就簡(jiǎn)單的給大家分享一個(gè)方法。
在labview的程序面板里有一個(gè)VISA查找資源的函數(shù)如圖所示,該函數(shù)查詢系統(tǒng),定位與指定接口相關(guān)的設(shè)備:

我們使用該函數(shù)就可以查找出電腦所有的串口資源:

拿到了所有的串口資源后,接下來要做的工作就是如何與對(duì)應(yīng)的設(shè)備進(jìn)行匹配了。拿到串口資源后我們使用for循環(huán)索引出每個(gè)串口,使用強(qiáng)制類型轉(zhuǎn)換,將字符串轉(zhuǎn)換為串口類型,然后配置串口,比如我們的開發(fā)板波特率設(shè)置為115200。設(shè)置超時(shí)時(shí)間為20ms是為了更快的找到對(duì)應(yīng)的串口,然后打開VISA資源,清空緩沖區(qū):

接下來我們就使用這個(gè)VISA資源給儀器發(fā)送握手指令,如果儀器能夠正確回傳信號(hào),那么說明我們的串口號(hào)匹配成功,匹配成功后我們需要重新配置一下串口資源,因?yàn)楹竺媾c儀器通訊進(jìn)行數(shù)據(jù)收發(fā),如果超時(shí)時(shí)間太短會(huì)導(dǎo)致讀不到采集的數(shù)據(jù)。

如果匹配失敗,我們就關(guān)閉串口:

但是在這里我們的程序還是會(huì)出現(xiàn)bug,就是儀器如果第一次發(fā)送的數(shù)據(jù)丟失,容易造成我們不能正確的匹配到串口,為了防止這種情況的發(fā)生,我們?cè)谕饷嬖偌右粋€(gè)循環(huán),設(shè)置循環(huán)次數(shù)為2次,并且設(shè)置如果匹配成功我們直接退出循環(huán)。

就這么簡(jiǎn)單的一個(gè)程序就可以讓我們的軟件自動(dòng)識(shí)別設(shè)備連接的串口號(hào)了,需要的下載
鏈接:https://pan.baidu.com/s/1FNIWFGnIqfsPdX3SU6H_rA
提取碼:8658
責(zé)任編輯:YYX
-
LabVIEW
+關(guān)注
關(guān)注
2017文章
3688瀏覽量
347081 -
自動(dòng)識(shí)別
+關(guān)注
關(guān)注
3文章
234瀏覽量
23951 -
串口
+關(guān)注
關(guān)注
15文章
1619瀏覽量
82811
原文標(biāo)題:labview實(shí)現(xiàn)自動(dòng)識(shí)別設(shè)備連接的串口號(hào)
文章出處:【微信號(hào):gh_15eff9efd85b,微信公眾號(hào):漫談labview學(xué)習(xí)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
如何實(shí)現(xiàn)串口的自動(dòng)識(shí)別
IC芯片表面標(biāo)識(shí)自動(dòng)識(shí)別虛擬儀器系統(tǒng)的設(shè)計(jì)
求助帖 labview自動(dòng)識(shí)別
Labview能夠自動(dòng)識(shí)別與PC連接的串口,能否用什么方法讓Lv自動(dòng)連接串口呢?
LabVIEW怎么自動(dòng)識(shí)別IMEI條碼
請(qǐng)問USB自動(dòng)識(shí)別芯片RH7901是怎樣自動(dòng)識(shí)別充電設(shè)備的?
請(qǐng)問多個(gè)串口設(shè)備,如何靠地址自動(dòng)識(shí)別?
自動(dòng)識(shí)別串口端工具
關(guān)于UART串口自動(dòng)識(shí)別波特率的問題匯總,錯(cuò)過絕對(duì)后悔
串口通信時(shí),單片機(jī)怎么自動(dòng)識(shí)別SBUF是接收的還是發(fā)送的?
IC芯片表面標(biāo)識(shí)自動(dòng)識(shí)別虛擬儀器系統(tǒng)的設(shè)計(jì)
水位自動(dòng)識(shí)別攝像機(jī)
MCU串口自動(dòng)識(shí)別波特率原理分析
labview如何讓軟件自動(dòng)識(shí)別不同儀器所對(duì)應(yīng)的串口號(hào)
評(píng)論