本文來源電子發(fā)燒友社區(qū),作者:張一工, 帖子地址:https://bbs.elecfans.com/jishu_2293580_1_1.html
原定的這次開發(fā)版評估的最終目標是實現(xiàn)數(shù)據(jù)采集并通過BLE上傳到手機,通過手機可以看到采集到的數(shù)據(jù),應用場景是電力電子技術(shù)實驗室的實驗數(shù)據(jù)記錄。
目前的情況是因為疫情根本就無法進入學校,當然更無法進入實驗室;而且想到即使可以進入實驗室現(xiàn)場,被采集信號的前端處理要花費很多精力,而目前重要的事情應該是把基本的環(huán)節(jié)跑通,所以,決定采用簡化的方法來完成這次評測。
1 恢復開發(fā)環(huán)境
前一段時間因電腦死掉重新恢復系統(tǒng),原來配置好的Arduino平臺下ESP32開發(fā)環(huán)境需要重新安裝,又是痛苦地重復剛拿到開發(fā)板時的安裝過程,不過畢竟是安裝過一次(其實不止一次),有了些經(jīng)驗,痛苦度低了一些。安裝完成后“D9”接地,編譯下載了“Blink”小程序,沒問題。然后準備開始著手真正的項目,不料下載總是出錯。
上網(wǎng)查詢,發(fā)現(xiàn)遇到這個問題的人不少,但我并沒有找到有效的解決方案。反復試驗各種辦法,甚至重新安裝了Arduino,仍然不行。只好在半夜發(fā)求救帖子到我們的開發(fā)板測試群,馬上就得到了大神“@HonestQiao|喬楚”的回音,非常明確肯定地說:D9先接地再連接電腦。一試果然靈光。現(xiàn)在只要是下載程序就要來這么一下,而以前是不用的呀!無論如何,總算是可以繼續(xù)前進了。
2 搭建實驗電路
采集3路模擬信號,是數(shù)值不同的直流可調(diào)電壓,通過一個可調(diào)直流電源通過電阻分壓得到。本來還想再多采集幾路,編程后發(fā)現(xiàn),只有0、1、2三個引腳可以直接用來做模擬信號采樣,其他引腳大概在初始化程序中設(shè)置成了其他功能(引腳功能復用),實在沒時間仔細研究了,只好先用這三個。
3 編程與實驗
程序主要是由兩個示例程序拼接、修改而來:“BLE_notify”和“AnalogRead”,“BLE_notify”通過藍牙發(fā)送數(shù)據(jù),而“AnalogRead”是模擬量讀取程序。主要的修改包括:“AnologRead”中,原來僅僅是一路模擬量采集,現(xiàn)在擴充成三路,相應地,通過串行口(USB模擬)的輸出數(shù)據(jù)也擴充成三路數(shù)據(jù);“BLE_notify”中,原來是對一個32位變量不斷增1,然后通過BLE的notify方法向外發(fā)送。所做的修改就是把模擬量采集得到的數(shù)據(jù),通過BLE的notify功能發(fā)送出去。在修改過程中遇到的主要麻煩是:示例程序提供的notify發(fā)送函數(shù)所要求的參數(shù)類型是“uint8_t”,和模擬量采集、再經(jīng)過ADC(模/數(shù)轉(zhuǎn)換)后的數(shù)據(jù)類型不符,為了數(shù)據(jù)類型的轉(zhuǎn)換費了點兒周折。
在手機端,用“nRF Connect”APP可以ESP32-C3開發(fā)板建立連接,收到開發(fā)版發(fā)來的數(shù)據(jù)。當改變模擬量輸入電壓時,可以看到數(shù)據(jù)的變化。
?
在PC端,通過Arduino IDE自帶的串口監(jiān)視器,可以看到采集的數(shù)據(jù),與手機端收到的數(shù)據(jù)是一致的。
實驗過程的視頻:
ESP32-C3_評測報告_3(開發(fā)板體驗視頻,詳見作者原文鏈接地址)
-
ESP32
+關(guān)注
關(guān)注
21文章
1012瀏覽量
18982 -
DFRobot
+關(guān)注
關(guān)注
4文章
1160瀏覽量
10629
發(fā)布評論請先 登錄
ESP32-S3開發(fā)板燒錄小智AI系統(tǒng)全流程指南

ESP32-C3開發(fā)板全面支持小智AI!燒錄實戰(zhàn)指南來了!

帶USB接口的基于ESP32-C3的加熱溫控板,附帶原理圖加PCB

【AI技術(shù)支持】ESP32-C3芯片/模組SPI-AT問題處理

PLC模擬量信號數(shù)據(jù)采集如何實現(xiàn)

評論