大家好,今天給大家推薦一個(gè)開源的串口虛擬示波器項(xiàng)目,可以實(shí)時(shí)顯示串口傳輸?shù)臄?shù)據(jù),非常直觀,當(dāng)然也可以做二次開發(fā),非常的靈活。
基本功能
雙擊放大
項(xiàng)目地址:https://github.com/CieNTi/serial_port_plotter
這是一個(gè)Windows應(yīng)用程序,可顯示來自串行端口的實(shí)時(shí)數(shù)據(jù),使用Qt和QCustomPlot庫(kù)構(gòu)建。
具體有哪些功能:
范圍無限制:新的通道數(shù)據(jù)會(huì)創(chuàng)建一個(gè)新圖形并使用它;
無數(shù)據(jù)點(diǎn)限制:保留所有接收到的數(shù)據(jù),以便用戶可以瀏覽舊數(shù)據(jù);
無波特率限制:經(jīng)過測(cè)試高達(dá)912600 bps;
使用鼠標(biāo)進(jìn)行縮放和拖動(dòng)(滾輪或單擊,僅限于X軸);
在圖上移動(dòng)會(huì)在狀態(tài)欄中顯示圖形的X和Y值;
頻道名稱圖例(雙擊進(jìn)行修改);
頻道選擇(點(diǎn)擊圖例文字);
支持正負(fù)整數(shù)和浮點(diǎn)數(shù);
可以輸出圖像保存為PNG;
可以到處數(shù)據(jù)為CSV;
自動(dòng)縮放到可見圖;
使用比較簡(jiǎn)單,在軟件布局中大致有三個(gè)地方經(jīng)常使用:
串口的基本配置(配置串口通訊的參數(shù));
串口數(shù)據(jù)圖形顯示區(qū)(用于顯示波形);
串口數(shù)據(jù)顯示區(qū)域(串口的數(shù)據(jù)基本都會(huì)顯示出來);
如何使用程序?
只需通過串行端口發(fā)送整數(shù)數(shù)據(jù)即可。
該應(yīng)用程序期望使用某種格式,以便可以區(qū)分值。
發(fā)送的數(shù)據(jù)都必須以$開頭,并以;結(jié)尾 (分號(hào))和內(nèi)部的整數(shù)需要用空格分隔。
如何顯示波形?
這個(gè)軟件上傳數(shù)據(jù)非常簡(jiǎn)單,每一幀數(shù)據(jù)保持格式如下:
printf("$%d%d;",data1,data2);
根據(jù)要顯示的數(shù)據(jù)量,可以調(diào)整數(shù)據(jù)點(diǎn)的數(shù)量。
例如,如果每10毫秒(100 Hz)從mbed的串行端口發(fā)送一次數(shù)據(jù),并且繪圖儀設(shè)置為顯示500點(diǎn),它將包含5秒鐘數(shù)據(jù)的信息。
支持整數(shù)和浮點(diǎn)數(shù)(單精度和雙精度)。
測(cè)試
簡(jiǎn)單測(cè)試一下這個(gè)軟件,需要向PC發(fā)送數(shù)據(jù),具體按照幀格式printf("$%d %d;",data1,data2)即可;
本文基于STM32F767-Nucleo-144的開發(fā)板,通過STM32CubeIDE進(jìn)行開發(fā),連續(xù)從單片機(jī)往PC發(fā)送三個(gè)數(shù)據(jù);
while(1)
{ data_1++; data_2++; angle+=0.01; data_sin=sin(angle); data_3=data_sin*128+128; /*USERCODEENDWHILE*/ printf("$%d%d%d;",data_1,data_2,data_3); //printf("hello "); /*USERCODEBEGIN3*/ }
最終結(jié)果如下,基本符合要求;
雙擊放大
進(jìn)行二次開發(fā)
該項(xiàng)目是在QtCreator環(huán)境下開發(fā)的,需要在PC上搭建Qt的開發(fā)環(huán)境,安裝QtCreator之后,打開項(xiàng)目目錄下的.pro的工程文件即可,然后就可以隨意添加自己需要加入的功能,源碼目錄如下圖所示;
源碼目錄結(jié)構(gòu)
下面是我以前項(xiàng)目中加入的一些控制指令,還有讀寫Flash的操作,具體如下所示;
二次開發(fā)后的項(xiàng)目
編輯:jq
-
PC
+關(guān)注
關(guān)注
9文章
2102瀏覽量
154521 -
開源
+關(guān)注
關(guān)注
3文章
3398瀏覽量
42645 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5121瀏覽量
97982 -
串行端口
+關(guān)注
關(guān)注
0文章
34瀏覽量
11698
原文標(biāo)題:一個(gè)超贊的開源串口虛擬示波器項(xiàng)目,玩起來!
文章出處:【微信號(hào):WW_CGQJS,微信公眾號(hào):傳感器技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論