在工作中,凡是涉及到產(chǎn)品開發(fā)幾乎都會(huì)實(shí)現(xiàn)參數(shù)存儲(chǔ)功能,一般參數(shù)存儲(chǔ)會(huì)采用如下的存儲(chǔ)介質(zhì)進(jìn)行,如:eeprom、spi flash、nand flash、SD 卡等等,至于怎么存儲(chǔ)那就多種多樣了,以我之前開發(fā)的產(chǎn)品為例,目前在碼云倉(cāng)庫(kù)上我開源了幾種方法:
地址:https://gitee.com/morixinguan/stm32-development-scheme
例程大部分基于小熊派開發(fā)板進(jìn)行模擬以及測(cè)試通過。
1、使用 eeprom(以 at24c02 為例)
定義一個(gè)結(jié)構(gòu)體,然后定義兩個(gè)結(jié)構(gòu)體變量,一個(gè)用來讀取參數(shù),一個(gè)用來將修改的參數(shù)一次性寫入。
參考:
2、使用 spi_flash(以 w25q64 為例)
- 方法 1
與使用 eeprom 方法一樣
- 方法 2
使用文件系統(tǒng),建立 ini 文件方式來獲取參數(shù)
參考之前的開源項(xiàng)目,其實(shí)都有:
開源作品:基于 RT-Thread 智慧農(nóng)業(yè)監(jiān)測(cè)系統(tǒng)產(chǎn)品級(jí)開發(fā)
開源作品:基于 TencentOS tiny 英國(guó)達(dá)特甲醛探測(cè)儀產(chǎn)品級(jí)開發(fā)(二)
TencentOS tiny 危險(xiǎn)氣體探測(cè)儀產(chǎn)品級(jí)開發(fā)
3、使用 SD 卡為例
- 方法 1
與使用 eeprom 方法一樣,但是現(xiàn)實(shí)中沒人會(huì)這么做。
- 方法 2
參考之前的開源項(xiàng)目,其實(shí)都有:
開源作品:基于 RT-Thread 智慧農(nóng)業(yè)監(jiān)測(cè)系統(tǒng)產(chǎn)品級(jí)開發(fā)
開源作品:基于 TencentOS tiny 英國(guó)達(dá)特甲醛探測(cè)儀產(chǎn)品級(jí)開發(fā)(二)
TencentOS tiny 危險(xiǎn)氣體探測(cè)儀產(chǎn)品級(jí)開發(fā)
- 其它方法
使用其它格式的文件,目前個(gè)人還在編寫相應(yīng)的例程繼續(xù)整理中,后續(xù)發(fā)布。
4、開源項(xiàng)目收集整理
地址:https://gitee.com/morixinguan/mcu-product
目前一共整理了 20 多個(gè)項(xiàng)目,大部分代碼都寫得還不錯(cuò),該倉(cāng)庫(kù)目前非常受歡迎,我也將繼續(xù)更新下去,讓嵌入式沒有難做的項(xiàng)目,讓小白入門嵌入式產(chǎn)品開發(fā)從此不會(huì)找不到方向。