卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

怎樣把單片機(jī)的數(shù)據(jù)存儲起來(51單片機(jī)如何存儲數(shù)據(jù)?)

51單片機(jī)如何存儲數(shù)據(jù)?沒有 不知道要保存哪種數(shù)據(jù),斷電保護(hù)還是緩存?如果是為了保存不受掉電保護(hù)的緩存數(shù)據(jù),可以使用單片機(jī)內(nèi)部的RAM空間,包括20H~7FH的直接尋址區(qū),不被SFR占用的80H~FF

怎樣把單片機(jī)的數(shù)據(jù)存儲起來(51單片機(jī)如何存儲數(shù)據(jù)?)

51單片機(jī)如何存儲數(shù)據(jù)?

沒有 不知道要保存哪種數(shù)據(jù),斷電保護(hù)還是緩存?

如果是為了保存不受掉電保護(hù)的緩存數(shù)據(jù),可以使用單片機(jī)內(nèi)部的RAM空間,包括20H~7FH的直接尋址區(qū),不被SFR占用的80H~FFH的間接尋址區(qū),也可以使用STC單片機(jī)內(nèi)部的擴(kuò)展RAM。

如果是保存掉電保護(hù)的數(shù)據(jù),可以在單片機(jī)外面掛上flash或者eeprom芯片。目前常用的51單片機(jī)的某些型號可以配置ROM的頂部空間作為eeprom來存儲這類掉電保護(hù)的數(shù)據(jù)。

請教單片機(jī)掉電后,如何快速的保存數(shù)據(jù)問題?

;關(guān)于這個問題,我認(rèn)為我們應(yīng)該從以下幾個方面著手:

盡量使用內(nèi)部閃存存儲數(shù)據(jù)。內(nèi)部flash讀寫速度快,可靠性高。

如果使用外部flash或eeprom進(jìn)行存儲,flash通常是一個spi接口??紤]到電磁干擾和MCU的響應(yīng)速度,即使使用MCU的硬件SPI模塊進(jìn)行通信,SPI的最大時鐘也在1MHz左右,發(fā)送一個字節(jié)的數(shù)據(jù)大約需要10us。不考慮擦除閃存的時間,存儲100字節(jié)的數(shù)據(jù)大約需要5ms。如果考慮可靠性,需要閱讀和驗證。

Eeprom一般采用IIC接口,類似SPI接口,高速IIC存儲100字節(jié)數(shù)據(jù)至少需要5ms。

FLASH的特點(diǎn)是寫數(shù)據(jù)只能從1重寫到0,從0重寫到1需要擦除整個頁面,或者整個扇區(qū),或者整個塊。

以STM32F051為例。一個頁面是1kb,一個塊是64kByte。擦除一頁大約需要20毫秒。在整個擦除過程中,整個MCU被掛起,即不執(zhí)行任何操作。另一方面,閃存是一種快速寫入操作,一個字節(jié)大約需要1us。

需要掉電檢測電路,掉電檢測需要檢測給MCU供電的LDO或DC-DC的前級電壓。

比如MCU采用12V-3.3V LDO供電,需要檢測12V的電壓來決定是否斷電。

通過電阻分壓12V的電壓,然后連接到MCU的A/D檢測口,判斷是否斷電。

MCU供電的LDO或DC-DC的前級并聯(lián)足夠的電容,保證電容的供電能保證MCU能寫數(shù)據(jù)。

電容器的尺寸可通過以下步驟確定:

評估斷電時前一電壓提供的工作電流。一旦單片機(jī)檢測到掉電,就需要切斷耗電輸出,比如控制繼電器輸出的I/O口。比如20mA。

確認(rèn)LDO的最低輸入電壓,如5.3。

確認(rèn)和判斷電的電壓,例如10V,確定電源故障開始和LDO的最低輸入電壓之間的電壓差,例如4.7V

確認(rèn)寫入所有數(shù)據(jù)所需的時間,例如20 ms。

根據(jù)公式計算所需電容,C=I*T/U=20mA*20mS/4.7V=85uF??梢赃x擇100uF的電容。

一旦MCU檢測到掉電,需要切斷耗電輸出,比如控制繼電器輸出的I/O口需要立即斷開。

在正常操作中,預(yù)先準(zhǔn)備一個存儲空間并將其擦除到0xFF中。

檢測到掉電后,可以直接寫入數(shù)據(jù),無需擦除FLASH內(nèi)容,可以節(jié)省大量時間。