韩国美女高清爽快一级毛片-韩国美女毛片-韩国美女人成网站在线看看-韩国美女丝袜一区二区-韩国美女一级毛片-韩国美女一级片

24小時聯系電話:18217114652、13661815404

中文

您當前的位置:
首頁>
電子資訊>
技術專題>
如何在STM32系統中保...

技術專題

如何在STM32系統中保護數據免受斷電影響


在嵌入式設備的開發中,斷電時通常需要保存一些非易失性數據。如果添加了系統配置,用戶定義的信息等,并且添加了額外的ROM IC(例如基于I2C24C02等),則額外的PCB空間將增加,硬件成本將增加,并且產品將減少。如果僅從實用角度出發,在諸如STM32系統的應用中,作者建議可以嘗試以下兩種方法并作為參考。

基于備份寄存器

原理:對于大容量MCU系列,它具有4216位備份寄存器,而中小型微處理器僅具有1016位備份寄存器。以stm32f103c8t6為例,這42個備份寄存器的地址偏移量為:0x04?0x280x40?0xbc,可以存儲84個字節的數據。備用寄存器取決于備用電源。當外部VDD掉電時,只要系統的Vbat可以正常存在,Bakeup domaain寄存器的內容就可以正常保存。

軟件編程的要點如下:以一個項目中常用的案例為例

函數初始化:

讀取備份寄存器:void BKP_ WriteBackupRegisteruint16_ t BKP_ DRuint16_ t Data

讀取備份寄存器:uint16_ t BKP_ ReadBackupRegisteruint16_ t BKP_ DR

此方法簡單明了,但由于缺少可用空間,因此僅適用于保存少量數據,例如用戶在可穿戴設備中的通用配置數據。

基于內部閃存

原理:閃存,也稱為閃存,也是可以重寫的存儲器。它分為nor flashNAND flash。閃存通常不用于代碼存儲場合,例如嵌入式控制器中的程序存儲空間。而NAND閃存通常用于大數據存儲場合,例如U盤和固態硬盤,它們通常是NAND閃存類型。

STM32芯片中,閃存的讀寫單位均基于頁面。以stm32f103c8t6為例,每頁大小為2K字節;

軟件編程要點

釋放寫保護釋放:此方法基于以下前提:允許當前的讀寫Flash,并且允許當前的Flash進行寫操作。因此,目前暫時不討論某些API,例如optionbytes操作和flash讀寫保護操作。

Flashwrite:單個uint32_ T數據寫入的簡單流程圖如下:

Flashread:對于單個int數據讀取,它相對簡單,可以通過以下語句完成:rddata =*()__ IOuint32_ t *dataAddr);

由于SW中涉及許多API,并且編碼人員還需要理解許多其他背景知識,因此使用此方法相對復雜。但是,由于數據保存在頁面中,因此頁面大小最大為2048字節,因此該方法可用于保存掉電時不容易丟失的大數據。考慮到閃存讀寫保護的邏輯機制,最好在不考慮數據安全性的情況下使用此方法。

對于這種斷電保護數據方法,這里只是丟磚引玉,歡迎您提出更好的方案。

 

請輸入搜索關鍵字

確定
主站蜘蛛池模板: 欧美日韩亚毛片免费观看 | 黄色福利在线观看 | 久久国产亚洲高清观看5388 | 亚洲欧美精品久久 | 中文字幕一二三区乱码老 | 国产成人8x视频一区二区 | 亚洲a成人7777777久久 | 九九热在线免费 | 色综合天天综合网国产国产人 | 天天爽天天 | 2级毛片 | 国产视频福利 | 日韩五月天 | 欧美特黄一级大黄录像 | 国产精品99久久免费观看 | 天天靠天天擦天天摸 | 免费一级a毛片夜夜看 | 国产一级毛片夜一级毛片 | 丁香婷婷网 | 精品一区视频 | 久青草国产视频 | 波多野结衣av1区2区3区 | 成人午夜爱爱爱爱爱 | 日日摸夜夜爽夜夜爽出水 | 国产精品久久久久久久久久一区 | 欧美一级刺激毛片 | 欧美一级二级aaa免费视频 | 国产精品嘿咻嘿咻在线播放 | 国产成人精品高清在线 | 久久午夜宅男免费网站 | 国产成人精品高清在线观看99 | 欧美日韩亚洲第一页 | 在线观看日韩欧美 | 亚洲一区二区三区久久久久 | 欧美一级特黄aaa大片 | 私人午夜影院 | 久久综合九色综合97欧美 | 国产成人亚洲毛片 | 日本xxxxx18护士xxx| 91成人国产网站在线观看 | 狠狠色噜噜狠狠狠狠69 |