91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

單片機(jī)為何需要Flash和EEPROM?它們有何作用

454398 ? 來(lái)源:alpha007 ? 作者:alpha007 ? 2022-12-06 11:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

單片機(jī)運(yùn)行時(shí)的數(shù)據(jù)都存在于 RAM(隨機(jī)存儲(chǔ)器)中,在掉電后 RAM 中的數(shù)據(jù)是無(wú)法保留的,那么怎樣使數(shù)據(jù)在掉電后不丟失呢?這就需要使用 EEPROM 或 FLASHROM 等存儲(chǔ)器來(lái)實(shí)現(xiàn)。

插播一段:ROM 最初不能編程,出廠(chǎng)什么內(nèi)容就永遠(yuǎn)什么內(nèi)容,不靈活。后來(lái)出現(xiàn)了 PROM,可以自己寫(xiě)入一次,要是寫(xiě)錯(cuò)了,只能換一片。隨著不斷改進(jìn),終于出現(xiàn)了可多次擦除寫(xiě)入的 EPROM,每次擦除要把芯片拿到紫外線(xiàn)上照一下,想一下你往單片機(jī)上下了一個(gè)程序之后發(fā)現(xiàn)有個(gè)地方需要加一句話(huà),為此你要把單片機(jī)放紫外燈下照半小時(shí),然后才能再下一次,這么折騰一天也改不了幾次。歷史的車(chē)輪不斷前進(jìn),偉大的 EEPROM 出現(xiàn)了,拯救了一大批程序員,終于可以隨意的修改 ROM 中的內(nèi)容了。

EEPROM 的全稱(chēng)是“電可擦除可編程只讀存儲(chǔ)器”,即 Electrically Erasable Programmable Read-Only Memory。是相對(duì)于紫外擦除的 rom 來(lái)講的。但是今天已經(jīng)存在多種 EEPROM 的變種,變成了一類(lèi)存儲(chǔ)器的統(tǒng)稱(chēng)。

狹義的 EEPROM:

這種 rom 的特點(diǎn)是可以隨機(jī)訪(fǎng)問(wèn)和修改任何一個(gè)字節(jié),可以往每個(gè) bit 中寫(xiě)入 0 或者 1。這是最傳統(tǒng)的一種 EEPROM,掉電后數(shù)據(jù)不丟失,可以保存 100 年,可以擦寫(xiě) 100w 次。具有較高的可靠性,但是電路復(fù)雜 / 成本也高。因此目前的 EEPROM 都是幾十千字節(jié)到幾百千字節(jié)的,絕少有超過(guò) 512K 的。

Flash:

Flash 屬于廣義的 EEPROM,因?yàn)樗彩请姴脸?ROM。但是為了區(qū)別于一般的按字節(jié)為單位的擦寫(xiě)的 EEPROM,我們都叫它 Flash。

既然兩者差不多,為什么單片機(jī)中還要既有 Flash 又有 EEPROM 呢?

通常,單片機(jī)里的 Flash 都用于存放運(yùn)行代碼,在運(yùn)行過(guò)程中不能改;EEPROM 是用來(lái)保存用戶(hù)數(shù)據(jù),運(yùn)行過(guò)程中可以改變,比如一個(gè)時(shí)鐘的鬧鈴時(shí)間初始化設(shè)定為 12:00,后來(lái)在運(yùn)行中改為 6:00,這是保存在 EEPROM 里,不怕掉電,就算重新上電也不需要重新調(diào)整到 6:00。

但最大區(qū)別是其實(shí)是:FLASH 按扇區(qū)操作,EEPROM 則按字節(jié)操作,二者尋址方法不同,存儲(chǔ)單元的結(jié)構(gòu)也不同,F(xiàn)LASH 的電路結(jié)構(gòu)較簡(jiǎn)單,同樣容量占芯片面積較小,成本自然比 EEPROM 低,因而適合用作程序存儲(chǔ)器,EEPROM 則更多的用作非易失的數(shù)據(jù)存儲(chǔ)器。當(dāng)然用 FLASH 做數(shù)據(jù)存儲(chǔ)器也行,但操作比 EEPROM 麻煩的多,所以更“人性化”的 MCU 設(shè)計(jì)會(huì)集成 FLASH 和 EEPROM 兩種非易失性存儲(chǔ)器,而廉價(jià)型設(shè)計(jì)往往只有 FLASH,早期可電擦寫(xiě)型 MCU 則都是 EEPRM 結(jié)構(gòu),現(xiàn)在已基本上停產(chǎn)了。

在芯片的內(nèi)電路中,F(xiàn)LASH 和 EEPROM 不僅電路不同,地址空間也不同,操作方法和指令自然也不同,不論馮諾伊曼結(jié)構(gòu)還是哈佛結(jié)構(gòu)都是這樣。技術(shù)上,程序存儲(chǔ)器和非易失數(shù)據(jù)存儲(chǔ)器都可以只用 FALSH 結(jié)構(gòu)或 EEPROM 結(jié)構(gòu),甚至可以用“變通”的技術(shù)手段在程序存儲(chǔ)區(qū)模擬“數(shù)據(jù)存儲(chǔ)區(qū)”,但就算如此,概念上二者依然不同,這是基本常識(shí)問(wèn)題。

EEPROM:電可擦除可編程只讀存儲(chǔ)器,F(xiàn)lash 的操作特性完全符合 EEPROM 的定義,屬 EEPROM 無(wú)疑,首款 Flash 推出時(shí)其數(shù)據(jù)手冊(cè)上也清楚的標(biāo)明是 EEPROM,現(xiàn)在的多數(shù) Flash 手冊(cè)上也是這么標(biāo)明的,二者的關(guān)系是“白馬”和“馬”。至于為什么業(yè)界要區(qū)分二者,主要的原因是 Flash EEPROM 的操作方法和傳統(tǒng) EEPROM 截然不同,次要的原因是為了語(yǔ)言的簡(jiǎn)練,非正式文件和口語(yǔ)中 Flash EEPROM 就簡(jiǎn)稱(chēng)為 Flash,這里要強(qiáng)調(diào)的是白馬的“白”屬性而非其“馬”屬性以區(qū)別 Flash 和傳統(tǒng) EEPROM。

Flash 的特點(diǎn)是結(jié)構(gòu)簡(jiǎn)單,同樣工藝和同樣晶元面積下可以得到更高容量且大數(shù)據(jù)量下的操作速度更快,但缺點(diǎn)是操作過(guò)程麻煩,特別是在小數(shù)據(jù)量反復(fù)重寫(xiě)時(shí),所以在 MCU 中 Flash 結(jié)構(gòu)適于不需頻繁改寫(xiě)的程序存儲(chǔ)器。

很多應(yīng)用中,需要頻繁的改寫(xiě)某些小量數(shù)據(jù)且需掉電非易失,傳統(tǒng)結(jié)構(gòu)的 EEPROM 在此非常適合,所以很多 MCU 內(nèi)部設(shè)計(jì)了兩種 EEPROM 結(jié)構(gòu),F(xiàn)LASH 的和傳統(tǒng)的,以期獲得成本和功能的均衡,這極大的方便了使用者。隨著 ISP、IAP 的流行,特別是在程序存儲(chǔ)地址空間和數(shù)據(jù)存儲(chǔ)地址空間重疊的 MCU 系中,現(xiàn)在越來(lái)越多的 MCU 生產(chǎn)商用支持 IAP 的程序存儲(chǔ)器來(lái)模擬 EEPROM 對(duì)應(yīng)的數(shù)據(jù)存儲(chǔ)器,這是低成本下實(shí)現(xiàn)非易失數(shù)據(jù)存儲(chǔ)器的一種變通方法。為在商業(yè)宣傳上取得和雙 EEPROM 工藝的“等效”性,不少采用 Flash 程序存儲(chǔ)器“模擬”(注意,技術(shù)概念上并非真正的模擬)EEPROM 數(shù)據(jù)存儲(chǔ)器的廠(chǎng)家紛紛宣稱(chēng)其產(chǎn)品是帶 EEPROM 的,嚴(yán)格說(shuō),這是非常不嚴(yán)謹(jǐn)?shù)?,但商人有商人的目的和方法,?Flash“模擬”EEPROM 可以獲取更大商業(yè)利益,所以在事實(shí)上,技術(shù)概念混淆的始作俑者正是他們。

從成本上講,用 Flash“模擬”EEPROM 是合算的,反之不會(huì)有人干,用 EEPROM 模擬 Flash 是怎么回事呢?這可能出在某些程序存儲(chǔ)空間和數(shù)據(jù)存儲(chǔ)空間連續(xù)的 MCU 上。這類(lèi) MCU 中特別是存儲(chǔ)容量不大的低端 MCU 依然采用 EEPROM 作為非易失存儲(chǔ)器,這在成本上反而比采用 Flash 和傳統(tǒng) EEPROM 雙工藝的設(shè)計(jì)更低,但這種現(xiàn)象僅僅限于小容量前提下。因 Flash 工藝的流行,現(xiàn)在很多商人和不夠嚴(yán)謹(jǐn)?shù)募夹g(shù)人員將程序存儲(chǔ)器稱(chēng)為 Flash,對(duì)于那些僅采用傳統(tǒng) EEPROM 工藝的 MCU 而言,他們不求甚解,故而錯(cuò)誤的將 EEPROM 程序存儲(chǔ)器稱(chēng)為“ 模擬 Flash”,根本的原因是他們未理解 Flash 只是一種存儲(chǔ)器結(jié)構(gòu)而非存儲(chǔ)器的用途,錯(cuò)誤的前提自然導(dǎo)致錯(cuò)誤的結(jié)論。商業(yè)上講,用 EEPROM 模擬 Flash 是不會(huì)有人真去做的愚蠢行為,這違背商業(yè)追求最大利益的原則,技術(shù)上也不可行,而對(duì)于技術(shù)人員而言。本質(zhì)的問(wèn)題是 Flash 是一種存儲(chǔ)器類(lèi)型而非 MCU 中的程序存儲(chǔ)器,即使 MCU 的程序存儲(chǔ)器用的是 Flash,但其逆命題不成立。

一家之言,你有什么看法呢?

審核編輯黃昊宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FlaSh
    +關(guān)注

    關(guān)注

    10

    文章

    1749

    瀏覽量

    155556
  • EEPROM
    +關(guān)注

    關(guān)注

    9

    文章

    1137

    瀏覽量

    86060
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    單片機(jī)中有FLASH為啥還需要EEROM?

    單片機(jī)里明明FLASH,為啥還要再塞個(gè)EEPROM?不少剛接觸嵌入式的小伙伴估計(jì)都有過(guò)這樣的疑惑:FLASH能存程序,容量大,讀取又快,干
    的頭像 發(fā)表于 03-05 13:39 ?73次閱讀
    <b class='flag-5'>單片機(jī)</b>中有<b class='flag-5'>FLASH</b>為啥還<b class='flag-5'>需要</b>EEROM?

    單片機(jī)Flash是什么類(lèi)型

    最近看到交流群小伙伴在討論單片機(jī)Flash的話(huà)題,比如:Flash類(lèi)型、速度等。 我們平時(shí)在單片機(jī)開(kāi)發(fā)過(guò)程中也會(huì)遇到各種各樣的Flash,比
    發(fā)表于 01-04 07:10

    單片機(jī)引腳中的VCC和VDD什么區(qū)別

    的應(yīng)用與其它數(shù)字電路中的應(yīng)用基本相同。VCC和VDD用于提供單片機(jī)運(yùn)行所需的電源電壓,確保單片機(jī)可以正常工作。此外,單片機(jī)的其他引腳也需要與VCC和VDD連接,以確保
    發(fā)表于 12-16 06:19

    單片機(jī)程序的執(zhí)行

    。 但是單片機(jī)上只有幾K的RAM,而flash一般幾十K甚至1M,這個(gè)時(shí)候指令和數(shù)據(jù)都在內(nèi)存中嗎(這里指的內(nèi)存僅指RAM,因?yàn)镻C上我們常說(shuō)的內(nèi)存就是DDR RAM memory,先入為主以至于認(rèn)為
    發(fā)表于 12-04 06:20

    單片機(jī)和嵌入式,到底是什么關(guān)系?

    很多人初次接觸嵌入式開(kāi)發(fā)時(shí),都會(huì)聽(tīng)到一句話(huà):“嵌入式其實(shí)就是單片機(jī)?!笨僧?dāng)你真正開(kāi)始學(xué)習(xí)時(shí),會(huì)發(fā)現(xiàn)嵌入式和單片機(jī)雖然經(jīng)常“捆綁”在一起提,但它們好像又不是一回事。這篇文章,我們就來(lái)厘清這兩個(gè)概念
    的頭像 發(fā)表于 11-14 10:28 ?1560次閱讀
    <b class='flag-5'>單片機(jī)</b>和嵌入式,到底是什么關(guān)系?

    請(qǐng)問(wèn)辦法在嵌入式單片機(jī)上實(shí)現(xiàn)對(duì)片外Flash的數(shù)據(jù)增刪功能嗎?

    客戶(hù)一個(gè)需求, 想要?jiǎng)h除已保存的數(shù)據(jù), 單片機(jī)使用的是STM32F407, 存儲(chǔ)的是有序的遞增數(shù)據(jù), 刪除功能我一直不知道怎么做空間回收, Flash的擦除壽命有影響嗎, 單片機(jī)內(nèi)存
    發(fā)表于 09-23 06:10

    單片機(jī)燒錄原理是怎樣的?輝芒微單片機(jī)燒錄程序詳細(xì)步驟講解

    燒錄(Programming)就是把 .hex/.bin 文件里的機(jī)器碼搬運(yùn)進(jìn)單片機(jī)片內(nèi) Flash 的過(guò)程。輝芒微(FMD)單片機(jī)內(nèi)部一塊 自舉 BootROM,上電時(shí)會(huì)先跑這段程
    的頭像 發(fā)表于 09-17 16:14 ?2371次閱讀
    <b class='flag-5'>單片機(jī)</b>燒錄原理是怎樣的?輝芒微<b class='flag-5'>單片機(jī)</b>燒錄程序詳細(xì)步驟講解

    單片機(jī)怎么驅(qū)動(dòng)電機(jī)?

    在各類(lèi)自動(dòng)化設(shè)備和智能裝置中,電機(jī)是重要的執(zhí)行部件,而單片機(jī)作為控制核心,需要通過(guò)特定的方式驅(qū)動(dòng)電機(jī)運(yùn)轉(zhuǎn)。單片機(jī)驅(qū)動(dòng)電機(jī)并非直接連接即可,而是要根據(jù)電機(jī)類(lèi)型和功率,搭配合適的驅(qū)動(dòng)電路,才能實(shí)現(xiàn)穩(wěn)定
    的頭像 發(fā)表于 07-25 09:31 ?942次閱讀

    單片機(jī)怎么燒程序

    驟,才能讓單片機(jī)發(fā)揮作用。 燒程序前的準(zhǔn)備工作 單片機(jī)燒程序前,需要做好硬件和軟件兩方面的準(zhǔn)備。硬件方面,核心設(shè)備包括目標(biāo)單片機(jī)、編程器(或
    的頭像 發(fā)表于 07-23 11:47 ?1349次閱讀

    FLASH模擬EEPROM

    FLASH模擬EEPROM 由于 AT32 單片機(jī)沒(méi)有 EEPROM 功能,但是在一些應(yīng)用中需要使用
    發(fā)表于 07-16 15:13

    單片機(jī)實(shí)例項(xiàng)目:AT24C02EEPROM存儲(chǔ)器

    單片機(jī)實(shí)例項(xiàng)目:AT24C02EEPROM存儲(chǔ)器,推薦下載!
    發(fā)表于 06-03 20:50

    單片機(jī)和伺服什么區(qū)別

    單片機(jī)和伺服的區(qū)別 單片機(jī)(Microcontroller)和伺服(Servo System)是兩種完全不同的技術(shù)概念,分別屬于 控制系統(tǒng)硬件 和 運(yùn)動(dòng)控制執(zhí)行系統(tǒng) 。以下是它們的詳細(xì)對(duì)比和區(qū)別
    的頭像 發(fā)表于 05-26 09:18 ?868次閱讀

    扒一扒單片機(jī)與存儲(chǔ)器的那些事

    單片機(jī)與存儲(chǔ)器的關(guān)系像什么?單片機(jī)里的存儲(chǔ)都是一樣的嗎?為什么有的單片機(jī)既有EEPROM又有Flash?
    的頭像 發(fā)表于 04-10 10:06 ?1690次閱讀
    扒一扒<b class='flag-5'>單片機(jī)</b>與存儲(chǔ)器的那些事

    PLC和單片機(jī)到底什么區(qū)別?

    在自動(dòng)化和嵌入式開(kāi)發(fā)領(lǐng)域,PLC和單片機(jī)是兩種常見(jiàn)的控制系統(tǒng)。雖然它們許多相似之處,但它們的功能、應(yīng)用范圍、開(kāi)發(fā)成本等方面也存在顯著差異。本文將從多個(gè)角度詳細(xì)探討這兩者的不同之處,幫
    的頭像 發(fā)表于 04-07 11:58 ?6448次閱讀
    PLC和<b class='flag-5'>單片機(jī)</b>到底<b class='flag-5'>有</b>什么區(qū)別?

    單片機(jī)方面的大佬嗎?幾個(gè)單片機(jī)方面的問(wèn)題需要請(qǐng)教一下

    如題,單片機(jī)方面的內(nèi)容需要請(qǐng)教一下 (先疊個(gè)甲)純小白 我需要一個(gè)單片機(jī)控制模塊,我現(xiàn)在的想法是:在一個(gè)
    發(fā)表于 03-29 18:35