加入星計劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴散
  • 作品版權(quán)保護
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長期合作伙伴
立即加入

基于LabVIEW的串口波形上位機(完整程序源碼)

2017/06/28
126
服務(wù)支持:
技術(shù)交流群

完成交易后在“購買成功”頁面掃碼入群,即可與技術(shù)大咖們分享疑惑和經(jīng)驗、收獲成長和認(rèn)同、領(lǐng)取優(yōu)惠和紅包等。

虛擬商品不可退

當(dāng)前內(nèi)容為數(shù)字版權(quán)作品,購買后不支持退換且無法轉(zhuǎn)移使用。

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論
放大
方塊圖
相關(guān)方案
  • 方案介紹
  • 相關(guān)文件
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請入駐 產(chǎn)業(yè)圖譜

附件內(nèi)容分享的是基于LabVIEW上位機串口通信,通過LabVIEW上位機顯示波形,在分享其實現(xiàn)的源碼同時,分享一段LabVIEW上位機與串口通信工作原理。

基于LabVIEW的串口波形上位機界面展示:

定義通信格式及功能

因為數(shù)據(jù)不算復(fù)雜,所以定義簡單下位機幀格式:幀頭(0xAA) 類型字節(jié) 數(shù)據(jù)低8位 數(shù)據(jù)高8位 保留字節(jié)1 保留字節(jié)2 校驗字節(jié)

如果要傳送的數(shù)據(jù)比較多/復(fù)雜,則可以參考ModuleBus協(xié)議!

主要功能包括:

  • 對幀中的類型字節(jié)進行解析,并多通道顯示在示波器
  • 幀偏差校正(這個一般人可能都沒有做,造成數(shù)據(jù)丟失,而我這只要串口傳輸?shù)臄?shù)據(jù)沒錯,就能無錯漏的解析每一幀)
  • 實時顯示讀取的每個字節(jié)/雙字節(jié)/4字節(jié)
  • 信號保存,保存文件名自動按時間命名,適合查閱
  • 信號回放
  • 對信號進行解析,用指示燈顯示

程序關(guān)鍵點展示:

上面雖然簡單,但卻是功能的最主要部分,包括幀頭查找和錯幀處理的程序。錯幀發(fā)送的情況是:比如從串口中獨到的幀并不是從幀頭開始而是幀中間開始,如   0x12(數(shù)據(jù)) 0x00 0x00 0x00 0xAA(幀頭) 0x00 

其前面一幀可能是這樣:... 0xAA(幀頭) 0x01(類型) 0x01(數(shù)據(jù))

這樣,按查找?guī)^的方法,數(shù)據(jù)0x12就會丟失,實際數(shù)據(jù)按理應(yīng)該是0x02*256+0x01,錯幀處理就是將上一幀尾部不足一幀的部分加到下一幀中,這樣下一幀就變成了:0xAA(幀頭) 0x01(類型) 0x01(數(shù)據(jù)) 0x12(數(shù)據(jù)) 0x00 0x00 0x00 0xAA(幀頭) 0x00

判斷類型過程很簡單,使用switch結(jié)構(gòu)就行了(LabVIEW中就是條件結(jié)構(gòu)同時實現(xiàn)了if和switch),編程時就是注意必須設(shè)置默認(rèn)分支就行!

文件保存我使用了數(shù)據(jù)表,因為它確實簡單,這里的亮點是增加了按時間保存的功能,相當(dāng)于將時間字符串加入到文件名中,這樣便于后期對采集的數(shù)據(jù)進行查找,不至于混亂。


波形回放就是將存儲在數(shù)據(jù)表中的程序重新顯示一遍,比較簡單!

  • 基于LabVIEW的串口波形上位機完整程序源碼.zip
    描述:上位機完整程序源碼

相關(guān)推薦

電子產(chǎn)業(yè)圖譜