標(biāo)題: STC89C52單片機(jī)內(nèi)部的8KFlash和5K EEPROM是做什么用的呀? [打印本頁]

作者: ZMRGHY    時(shí)間: 2021-9-7 01:13
標(biāo)題: STC89C52單片機(jī)內(nèi)部的8KFlash和5K EEPROM是做什么用的呀?
STC89C52內(nèi)部的8KFlash和5K EEPROM是做什么用的呀?

EEPROM好像是保存編寫的單片機(jī)程序用的。

8K Flash做什么用的呀?

能不能像24C02哪樣保存變量,掉電不丟失呀!

作者: lkc8210    時(shí)間: 2021-9-7 02:09
8K Flash才是保存編寫的單片機(jī)程序用的!
5K EEPROM要用EEPROM函數(shù)讀寫,STC_ISP里有例程
Flash和EEPROM都是可掉電保存的
但只有EEPROM可以在運(yùn)行期間讀寫

作者: wulin    時(shí)間: 2021-9-7 05:52
8K flash用于儲(chǔ)存用戶應(yīng)用程序,4K EEPROM等同于24C02。
作者: man1234567    時(shí)間: 2021-9-7 08:34
Flash 和 EEPROM 其實(shí)都是可擦寫的EEPROM相當(dāng)于電腦的硬盤。
Flash 是個(gè)特殊的分區(qū),內(nèi)有用戶程序,無論是否支持在線升級(jí)都是整個(gè)分區(qū)內(nèi)容一次性全部擦寫(可反復(fù)擦寫),罕有支持部分擦寫 Flash 內(nèi)容的芯片;
EEPROM 相當(dāng)于用戶分區(qū),這個(gè)里面可以自由存取信息,可看作內(nèi)建了多個(gè)24C02。
那么這個(gè)“電腦”的啟動(dòng)系統(tǒng)在哪里 ? 答案是隱藏在芯片里除非廠家專用程序是沒辦法讀取和修改的,同一芯片所謂的版本號(hào)不同就是指這個(gè)系統(tǒng)的版本不同,廠家修正芯片BUG除了硬件還有這個(gè)軟件。當(dāng)然,部分廠家也會(huì)適時(shí)開放一些相關(guān)的讀寫權(quán)限或方法,包括但不限于可以讀出芯片的序列號(hào)等。
作者: rayin    時(shí)間: 2021-9-7 08:45
8K flash 是單片機(jī)跑的代碼,還有不用變動(dòng)的常量比如3.1415等等的這些東西的存放空間。 4K e2prom 相當(dāng)于硬盤,存放需要掉電保持,但又需要能夠改寫內(nèi)容的存放空間。
作者: 鄭漢松    時(shí)間: 2021-9-7 17:57
FLASH一般是保存編譯后的代碼用的,燒錄的hex文件一般就保存于這個(gè)區(qū)域。EPPROM一般用于保存掉電不丟失的數(shù)據(jù)。
作者: ZMRGHY    時(shí)間: 2022-6-2 23:36
wulin 發(fā)表于 2021-9-7 05:52
8K flash用于儲(chǔ)存用戶應(yīng)用程序,4K EEPROM等同于24C02。

程序運(yùn)行產(chǎn)生的數(shù)據(jù),可以保存在EEPROM內(nèi)。
單片機(jī),啟動(dòng)時(shí),可以從EEPROM讀取數(shù)據(jù),作為運(yùn)行參數(shù)。。。

這樣理解對(duì)嗎。。。
作者: 188610329    時(shí)間: 2022-6-3 16:14
ZMRGHY 發(fā)表于 2022-6-2 23:36
程序運(yùn)行產(chǎn)生的數(shù)據(jù),可以保存在EEPROM內(nèi)。
單片機(jī),啟動(dòng)時(shí),可以從EEPROM讀取數(shù)據(jù),作為運(yùn)行參數(shù)。。。 ...

基本正確,
Eeprom 就是用來存儲(chǔ)掉電后可以不丟失的數(shù)據(jù)的。
只不過讀寫方式比起變量,要來的復(fù)雜而已。
極端情況下,在對(duì)速度沒有要求時(shí),通過合適的代碼,把Eeprom 做成虛擬內(nèi)存也不是不可以。
作者: 啤酒瓶子老大    時(shí)間: 2022-6-4 18:31
EEPROM用在另外的一種方式,叫做掉電儲(chǔ)存。
比如鬧鐘。就可以存儲(chǔ)在EEPROM 里。就是89C52掉電了,只要1302有備用電池,系統(tǒng)就不會(huì)有影響。上電后時(shí)間繼續(xù)走,鬧鐘也還在。
主要用來保存系統(tǒng)設(shè)置。比如一臺(tái)機(jī)器的運(yùn)行有許多的參數(shù),可以存儲(chǔ)在EEPROM里。如果遇到停電,參數(shù)不好丟失。上電后可以繼續(xù)工作?茨阍趺从昧恕
作者: 1124858447    時(shí)間: 2022-6-4 20:49
電容 掉電存儲(chǔ)
作者: 君工創(chuàng)    時(shí)間: 2022-6-4 23:25
8KFlash是存放編程生成的hex的,5K EEPROM是存儲(chǔ)要保存的變量數(shù)據(jù)的。
作者: ephzq    時(shí)間: 2022-6-5 22:42
Flash是記錄程序數(shù)據(jù)的,只能通過燒錄形式寫入
EEPROM,是可以通過程序進(jìn)行讀寫,清除,通過程序形式寫入,讀出,實(shí)現(xiàn)斷電記憶
作者: 17337161031    時(shí)間: 2022-6-8 18:59
可以實(shí)現(xiàn)掉電不丟失數(shù)據(jù)
作者: wuwuwuwuwukk    時(shí)間: 2022-8-13 15:31
8K Flash應(yīng)該是一個(gè)存儲(chǔ)器和ROM不同,是不可更改的,當(dāng)定義一個(gè)數(shù)表里面元素太多時(shí),可以將數(shù)表存到Flash里面,F(xiàn)lash內(nèi)存也大
作者: npn    時(shí)間: 2022-8-13 19:25
EEPROM數(shù)據(jù)斷電不丟失,擦/寫有壽命次數(shù)限制 (讀無限制)。
片內(nèi)EEPROM 字節(jié)讀、字節(jié)寫、只有扇區(qū)擦除,沒有字節(jié)擦除。
24C02只有字節(jié)讀/字節(jié)寫,沒有扇區(qū)的說法,存儲(chǔ)原理不同。

作者: ningsy    時(shí)間: 2022-9-20 20:45
片上5K EEPROM寫之前要擦除扇區(qū)嗎?官方給的例程是先擦除再寫數(shù)據(jù),對(duì)壽命有無影響?
作者: Hephaestus    時(shí)間: 2022-9-21 16:05
關(guān)于作用,樓主理解反了。EEPROM只能把1寫成0,無法把0寫成1,所以寫之前必須要擦除成0xff才可以,至于是擦除扇區(qū)和擦除字節(jié),要看具體單片機(jī)手冊,沒有統(tǒng)一的說法。




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1