最近實(shí)在是太忙了TAT,忙于畢業(yè)設(shè)計(jì)的報(bào)告和考研的事情估計(jì)得到四月中旬才能夠真正的抽開身,本期總結(jié)一下自己的畢設(shè):基于STM32的便攜式多參數(shù)測量儀的進(jìn)度。
系統(tǒng)架構(gòu)
首先系統(tǒng)架構(gòu),主要受限于Flash的大小,我早知道真應(yīng)該選一個(gè)Flash大點(diǎn)的芯片了,由于只有256K的Flash所以在GUI和操作系統(tǒng)幾乎只能二選一。
最終經(jīng)過慎重考慮還是選擇了使用TouchGFX+狀態(tài)機(jī)的開發(fā)模式。
現(xiàn)在光使用TouchGFX和系統(tǒng)驅(qū)動就幾乎要占滿了Flash。
關(guān)于是否會使用FreeRTOS,還需要這段時(shí)間再進(jìn)行考慮,主要是畫GUI花的時(shí)間有點(diǎn)多了,不舍得丟掉。
GUI組成
主要的界面由兩個(gè)部分,屏幕上方的時(shí)間和電池電量等基本信息,以及屏幕下面的六個(gè)滑動菜單。
滑動菜單由六個(gè)部分組成:溫濕度單元,空氣質(zhì)量監(jiān)測單元,磁場強(qiáng)度單元,六軸加速度計(jì)單元,血氧心率測試單元以及系統(tǒng)設(shè)置單元。
當(dāng)然還沒有做完,只是目前進(jìn)度。
當(dāng)然還單獨(dú)的為加速度和心率血氧部分設(shè)計(jì)了波形圖,這里相機(jī)看起來不太好看。
顯示屏背光部分,修改后會把修改后的值存入外部Flash(W25Q64)實(shí)現(xiàn)斷電保存功能。
藍(lán)牙與手機(jī)APP
設(shè)計(jì)時(shí)為系統(tǒng)添加有低功耗藍(lán)牙,因此還要設(shè)計(jì)上位機(jī)。
目前上位機(jī)設(shè)計(jì)剛起步,采用的框架是微軟的.NET MAUI。
目前完成的主界面(這個(gè)調(diào)試框后面會刪)還有溫濕度數(shù)據(jù)的顯示。
點(diǎn)擊連接設(shè)備后會自動連接到設(shè)備并開始接收數(shù)據(jù),由于BLE藍(lán)牙發(fā)送的包數(shù)量有上限,因此對數(shù)據(jù)進(jìn)行打包和格式安排再上傳。
點(diǎn)擊溫濕度傳感器界面后進(jìn)入溫濕度傳感器的界面,之后將會把溫濕度數(shù)據(jù)顯示出來以及歷史曲線,不過還在完善中。
等到這段時(shí)間忙完了就可以繼續(xù)寫啦!
前言
當(dāng)然關(guān)于整個(gè)系統(tǒng)還沒有系統(tǒng)的整上低功耗,不過還是先測了一下功耗。
在沒有引入低功耗優(yōu)化的情況下,系統(tǒng)的工作電流在0.34mA~0.46mA之間(取決于屏幕背光調(diào)節(jié))
整機(jī)功耗在1.25mW~1.7mW之間。