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

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

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

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

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

沒(méi)有 不知道要保存哪種數(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ī)的某些型號(hào)可以配置ROM的頂部空間作為eeprom來(lái)存儲(chǔ)這類掉電保護(hù)的數(shù)據(jù)。

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

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

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

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

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

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

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

需要掉電檢測(cè)電路,掉電檢測(cè)需要檢測(cè)給MCU供電的LDO或DC-DC的前級(jí)電壓。

比如MCU采用12V-3.3V LDO供電,需要檢測(cè)12V的電壓來(lái)決定是否斷電。

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

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

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

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

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

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

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

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

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

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

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