《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 微波|射頻 > 設(shè)計(jì)應(yīng)用 > 基于STM8S微處理器內(nèi)部EEPROM的數(shù)據(jù)存儲(chǔ)方法
基于STM8S微處理器內(nèi)部EEPROM的數(shù)據(jù)存儲(chǔ)方法
摘要: EEPROM(ElectricallyErasableProgrammableRead-OnlyMemory)指的是電子擦除式只讀存儲(chǔ)器,它是一種非易失的存儲(chǔ)器,供電消失后,存儲(chǔ)的數(shù)據(jù)依然保留,要擦除或改寫其中的內(nèi)容只要以電子信號(hào)的方式直接操作即可。EEPROM廣泛應(yīng)用于單片機(jī)數(shù)據(jù)存儲(chǔ)領(lǐng)域,主要形式是串行I2C總線控制獨(dú)立EEPROM元器件。隨著單片機(jī)的集成度越來(lái)越高,許多芯片廠家在單片機(jī)的內(nèi)部集成有一定數(shù)量的EEPROM存儲(chǔ)空間,如Microchip、ST等等。
Abstract:
Key words :

  EEPROM" title="EEPROM">EEPROM(Electrically Erasable Programmable Read-Only Memory)指的是電子擦除式只讀存儲(chǔ)器,它是一種非易失的存儲(chǔ)器,供電消失后,存儲(chǔ)的數(shù)據(jù)依然保留,要擦除或改寫其中的內(nèi)容只要以電子信號(hào)的方式直接操作即可。EEPROM廣泛應(yīng)用于單片機(jī)數(shù)據(jù)存儲(chǔ)" title="數(shù)據(jù)存儲(chǔ)">數(shù)據(jù)存儲(chǔ)領(lǐng)域,主要形式是串行I2C總線控制獨(dú)立EEPROM元器件。隨著單片機(jī)的集成度越來(lái)越高,許多芯片廠家在單片機(jī)的內(nèi)部集成有一定數(shù)量的EEPROM存儲(chǔ)空間,如Microchip、ST等等。本文首先介紹了比較典型的串行EEPROM和集成EEPROM的單片機(jī)并比較了各自的優(yōu)點(diǎn)與缺點(diǎn),并在分析單片機(jī)數(shù)據(jù)存儲(chǔ)特點(diǎn)的基礎(chǔ)上引用實(shí)例說(shuō)明如何采用STM8S" title="STM8S">STM8S內(nèi)置EEPROM設(shè)計(jì)數(shù)據(jù)存儲(chǔ)。

  1.器件簡(jiǎn)介

  1.1.STM8S系列微處理器

  ST公司的STM8S系列通用8位微處理器" title="微處理器">微處理器采用STM8內(nèi)核,具備真嵌入式EEPROM和可校準(zhǔn)RC晶振,大大降低了產(chǎn)品的研發(fā)和生產(chǎn)成本。以STM8S105xx為例,該微處理器是具備16MHz時(shí)鐘主頻的8位單片機(jī)。最大可提供32K字節(jié)ROM和2K字節(jié)RAM。其片內(nèi)的真EEPROM存儲(chǔ)器最大1K字節(jié),至少可以擦寫循環(huán)30萬(wàn)次。同時(shí)具備四路定時(shí)器和豐富的外設(shè)接口,如UART、SPI、I2C等等。

  1.2.串行EEPROM

  串行EEPROM中,較為典型的有ATMEL公司的AT24CXX系列產(chǎn)品。AT24CXX支持I2C總線數(shù)據(jù)傳送協(xié)議,最高時(shí)鐘頻率400KHz,器件連接到總線上串行器件不僅占用很少的資源和I/O線,而且體積大大縮小,同時(shí)具有工作電源寬、抗干擾能力強(qiáng)、功耗低、數(shù)據(jù)不易丟失和支持在線編程等特點(diǎn)。

  1.3.不同存儲(chǔ)方式的比較

  表1中羅列了三種不同存儲(chǔ)方式的不同,由于片內(nèi)EEPROM和串行EEPROM的存儲(chǔ)介質(zhì)均為EEPROM,所以其擦寫的操作時(shí)間是差不多的,不同之處是串行EEPROM在進(jìn)行寫操作時(shí)會(huì)受到I2C總線速度的影響。相比而言讀時(shí)間則是片內(nèi)器件占有優(yōu)勢(shì),因?yàn)槠瑑?nèi)EEPROM是直接訪問(wèn)片內(nèi)地址的方式讀出數(shù)據(jù),效率上比總線方式訪問(wèn)會(huì)快很多。

  表 1兩種EEPROM的比較

  2.單片機(jī)存儲(chǔ)的特點(diǎn)

  單片機(jī)的數(shù)據(jù)存儲(chǔ)模式與一般計(jì)算機(jī)系統(tǒng)的有所不同,主要特點(diǎn)有數(shù)據(jù)量一般不大,很少每次刷新整個(gè)存儲(chǔ)區(qū)域,如果是作為記錄作用的單片機(jī)系統(tǒng),一般數(shù)據(jù)呈線性方式增長(zhǎng),少有刪除或插入的操作。另一方面,單片機(jī)存儲(chǔ)對(duì)數(shù)據(jù)的安全性要求比較高,要求至少有兩個(gè)以上的熱備份數(shù)據(jù)以防止意外造成的數(shù)據(jù)丟失。因此,在實(shí)際應(yīng)用場(chǎng)合時(shí)就需要考慮如下幾個(gè)方面的因素:存儲(chǔ)的數(shù)據(jù)量的大小;每次更新數(shù)據(jù)量的大小;數(shù)據(jù)量更新的頻度;是否為增量數(shù)據(jù)的存儲(chǔ);對(duì)于數(shù)據(jù)校驗(yàn)和冗余的考慮。

  3.應(yīng)用實(shí)例

  本節(jié)以應(yīng)用實(shí)例分析不同場(chǎng)合的數(shù)據(jù)存儲(chǔ)應(yīng)用。以下應(yīng)用方案的主控單片機(jī)均采用STM8S105K4,片內(nèi)集成1K字節(jié)EEPROM存儲(chǔ)器。

  3.1.智能電表應(yīng)用

  在智能電表應(yīng)用中的一個(gè)重要的問(wèn)題就是數(shù)據(jù)的保存和數(shù)據(jù)的安全,不僅要求數(shù)據(jù)要及時(shí)的保存而且要求所保存的數(shù)據(jù)不能有錯(cuò)誤,所以重點(diǎn)需要考慮的是數(shù)據(jù)的冗余和校驗(yàn)。出于成本和數(shù)據(jù)安全的考慮,可以采用兩種方案實(shí)現(xiàn)電量計(jì)量,一是當(dāng)電量有變化時(shí)周期性將當(dāng)前的電量存入EEPROM中;二是只在意外斷電時(shí)將當(dāng)前電量存入EEPROM中。第一種方案需要考慮的是EEPROM的擦寫次數(shù)是否能滿足使用要求。第二種方案需要考慮的是備用電源的供電時(shí)間能否滿足存儲(chǔ)時(shí)間的要求。

  前一種方案,單片機(jī)每隔10秒向EEPROM存入寫入一次當(dāng)前的電量,如果當(dāng)前電量與前一次寫入的值相等則不寫入以節(jié)約EEPROM的寫入壽命。存儲(chǔ)時(shí)采用不固定的存儲(chǔ)地址,從0地址開始每次寫入兩次數(shù)據(jù),占用8個(gè)字節(jié),作為備份。下次寫入時(shí)將寫入地址向后移動(dòng)2個(gè)數(shù)據(jù)的寬度,即8個(gè)字節(jié)。循環(huán)寫入整個(gè)EEPROM的空間,如此可以計(jì)算出(1024 * 300,000次) / 8 = 38,400,000次,每隔10秒存儲(chǔ)一次大約可以使用12年。

  后一種方案,單片機(jī)的ADC管腳連接電壓采集轉(zhuǎn)換,利用采集到的ADC值判斷當(dāng)前主電源的供給狀況。一旦ADC值降低的某一閥值則認(rèn)為主電源斷電,開始采用備用電源供給。備用電源采用大電容的方案,單片機(jī)寫入雙備份8個(gè)字節(jié)的時(shí)間大約為50ms,寫入時(shí)的電流約為2mA,單片機(jī)的運(yùn)行電流(5V)約為8mA。假設(shè)電容從5V放電到3.8V,通過(guò)計(jì)算可以得知0.05s * 0.01A / (5V - 3.8V) = 417uF。故在系統(tǒng)的供電電源上并聯(lián)兩個(gè)470uF的電容即可完全滿足主電源掉電后的存儲(chǔ)電源供給。

  3.2.車載收音機(jī)應(yīng)用

  車載收音機(jī)的應(yīng)用方案需要考慮兩塊存儲(chǔ)空間的安排,一塊是寄存 器表區(qū)域,存儲(chǔ)收音機(jī)調(diào)諧器寄存器表的信息。數(shù)據(jù)量大約68個(gè)字節(jié),這部分存儲(chǔ)信息在出廠時(shí)寫入后禁止修改。一塊是用戶參數(shù)值區(qū)域,用于保存收音機(jī)運(yùn)行時(shí)用戶設(shè)置值的空間。大約需要100個(gè)字節(jié),其中包括開關(guān)機(jī)信息、收音機(jī)頻率信息、音量音色信息等等,存儲(chǔ)時(shí)不會(huì)一次刷新整片存儲(chǔ)區(qū)域,一般只會(huì)修改幾個(gè)字節(jié)的信息。

 

  按照車載收音機(jī)存儲(chǔ)空間的安排,可以將1K的EEPROM空間按照128個(gè)字節(jié)一塊的大小分割成8個(gè)塊。第0塊用于存儲(chǔ)寄存器表,出廠時(shí)一次寫入后禁止改寫。從第1塊到第7塊組成一個(gè)循環(huán)鏈表作為用戶數(shù)據(jù)的存儲(chǔ),每次上電選擇相鄰的兩個(gè)塊作為當(dāng)前存儲(chǔ)空間,下一次上電選擇的兩個(gè)存儲(chǔ)空間向后移一個(gè)。如第一次上電選擇1、2兩個(gè)塊,第二次上電選擇2、3兩個(gè)塊,以此類推,使得EEPROM的每個(gè)塊的擦寫次數(shù)平均化。EEPROM空間分配如下圖1所示,開機(jī)流程如下圖2所示,遍歷每個(gè)塊直到找到有效的塊并讀出上次斷電前存儲(chǔ)的設(shè)置值,如果直到第7塊都沒有找到有效塊則載入默認(rèn)值。確定有效的設(shè)置值后初始化寫入主數(shù)據(jù)塊和備份數(shù)據(jù)塊一次,程序運(yùn)行時(shí)如果有設(shè)置值的改變則依次修改主數(shù)據(jù)塊和備份數(shù)據(jù)塊。如果遇到意外斷電,至少可以保證一個(gè)數(shù)據(jù)塊中的內(nèi)容是合法有效的。

  圖 1存儲(chǔ)塊分配

  圖 2程序開機(jī)流程

  4.總結(jié)

  綜上所述,本文介紹了兩種常見的單片機(jī)存儲(chǔ)應(yīng)用實(shí)例,均通過(guò)STM8S內(nèi)置EEPROM實(shí)現(xiàn)存儲(chǔ)。設(shè)計(jì)的方案符合設(shè)計(jì)要求并具備低成本、抗干擾等優(yōu)點(diǎn),適用于一般單片機(jī)存儲(chǔ)的應(yīng)用。

  參考文獻(xiàn):

  [1]STM8 CPU programming manual, STMicroelectronics, 2009.

  [2]How to program STM8S Flash program memory and data EEPROM, STMicroelectronics, 2009.

  [3]AT24WCxx DataSheet,ATMEL,2000.

  [4]《一種延長(zhǎng)EEPROM使用壽命的方法》,《航空計(jì)算技術(shù)》1995年 第2期

  [5]《24系列串行EEPROM的正確選用》,《電子技術(shù)(上海)》1998年 第2期

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产专区综合网| 日韩一级不卡| 欧美日韩国产成人在线91| 久久精品论坛| 午夜精品久久久99热福利| 日韩一级在线观看| 亚洲国产成人91精品| 久久国产精品久久久久久| 亚洲一级影院| 亚洲视频在线二区| 99香蕉国产精品偷在线观看| 亚洲国产欧美一区二区三区久久 | 国产精品久久久久久久免费软件| 欧美久久精品午夜青青大伊人| 女女同性精品视频| 欧美成人性生活| 欧美成人精品1314www| 免费看黄裸体一级大秀欧美| 麻豆久久婷婷| 嫩模写真一区二区三区三州| 欧美成人免费小视频| 免费成人在线观看视频| 欧美本精品男人aⅴ天堂| 欧美不卡一卡二卡免费版| 久久综合99re88久久爱| 免费成人黄色片| 欧美激情精品久久久久久大尺度 | 欧美国产日产韩国视频| 欧美国产精品v| 欧美激情视频在线播放| 欧美日本在线看| 国产精品swag| 国产欧美精品久久| 国产一区二区福利| 在线观看日韩国产| 亚洲精品一二| 亚洲视频在线观看一区| 亚洲欧美成人一区二区三区| 欧美亚洲日本一区| 亚洲国产欧美日韩另类综合| 亚洲美女91| 亚洲一二三区精品| 欧美在线视频播放| 久久这里只精品最新地址| 欧美高清一区| 国产精品黄色在线观看| 国产精自产拍久久久久久蜜| 狠狠色狠狠色综合| 亚洲人成在线观看| 亚洲网站在线观看| 欧美在线观看视频一区二区| 亚洲国产女人aaa毛片在线| 日韩一区二区精品视频| 亚洲欧美在线免费| 久久精品视频免费| 欧美精品日韩一本| 国产精品美女在线观看| 国产主播一区二区三区| 亚洲日本中文字幕区| 亚洲午夜国产一区99re久久 | 久色婷婷小香蕉久久| 欧美人与性动交cc0o| 国产麻豆精品theporn| 亚洲第一精品在线| 中文av字幕一区| 久久精品国产精品亚洲| 9久草视频在线视频精品| 欧美一级成年大片在线观看| 麻豆91精品| 国产精品久久久久久久免费软件| 一区在线观看视频| 亚洲图片你懂的| 亚洲国产高清aⅴ视频| 亚洲一区视频在线| 奶水喷射视频一区| 国产精品视频第一区| 在线观看精品| 亚洲一区日本| 亚洲毛片在线观看.| 久久av二区| 欧美日韩一卡二卡| 在线播放中文字幕一区| 亚洲一区二区三区三| 亚洲蜜桃精久久久久久久| 欧美一区二区三区免费视| 欧美精品久久一区二区| 国际精品欧美精品| 亚洲网站视频| 亚洲最新在线视频| 麻豆精品一区二区av白丝在线| 国产精品久久网| 亚洲三级视频在线观看| 亚洲福利视频网站| 香蕉久久夜色精品国产| 欧美日产在线观看| 影音欧美亚洲| 香蕉成人啪国产精品视频综合网| 在线视频欧美日韩精品| 欧美a级理论片| 国产色爱av资源综合区| 亚洲深夜影院| 在线亚洲自拍| 欧美精品久久一区| 在线看片一区| 久久精品理论片| 久久爱www久久做| 国产精品久久久久久久久果冻传媒 | 亚洲第一精品夜夜躁人人躁| 亚洲欧美bt| 欧美日韩中字| 亚洲国产欧美不卡在线观看| 久久精品免费看| 久久精品人人做人人爽电影蜜月| 欧美性天天影院| 一本大道av伊人久久综合| 99国产精品99久久久久久| 你懂的成人av| 在线观看精品视频| 久久精品国产欧美激情| 欧美影院成人| 国产精品专区第二| 亚洲欧美在线一区| 欧美一区二区三区在线免费观看| 国产精品jvid在线观看蜜臀 | 一区二区冒白浆视频| 欧美国产精品久久| 亚洲日本成人网| 日韩一级欧洲| 欧美日韩国产首页| 这里只有精品在线播放| 亚洲性人人天天夜夜摸| 国产精品激情电影| 亚洲一区二区欧美日韩| 亚洲欧美在线一区二区| 国产精品自拍在线| 欧美诱惑福利视频| 裸体素人女欧美日韩| 亚洲国产精品成人综合色在线婷婷 | 亚洲国产精品久久人人爱蜜臀| 久久综合九色九九| 影音先锋在线一区| 亚洲茄子视频| 欧美日韩国产精品成人| 一区二区三区免费观看| 午夜日韩激情| 国产主播精品| 91久久在线视频| 欧美日韩精品一区视频| 亚洲一区二区高清视频| 久久激情五月婷婷| 精品电影一区| 一区二区电影免费在线观看| 国产精品福利影院| 欧美在现视频| 欧美韩日精品| 亚洲小视频在线| 久久精品国产69国产精品亚洲| 狠狠色噜噜狠狠狠狠色吗综合| 亚洲欧洲综合| 欧美少妇一区| 午夜精品国产更新| 美女啪啪无遮挡免费久久网站| 亚洲破处大片| 亚洲欧美国产精品专区久久| 国产一区清纯| 99re6热在线精品视频播放速度| 欧美性视频网站| 欧美在线视频网站| 欧美精品久久99| 亚洲一区二区在线播放| 久久综合99re88久久爱| 日韩视频在线观看国产| 久久精品免费看| 亚洲人成小说网站色在线| 性xx色xx综合久久久xx| 在线日韩一区二区| 亚洲免费av观看| 国产欧美精品日韩精品| 亚洲精品视频一区二区三区| 国产精品爽爽ⅴa在线观看| 欧美专区18| 欧美日韩视频免费播放| 欧美中文字幕久久| 欧美日韩精品二区| 欧美在线一二三区| 欧美日韩国产综合新一区| 欧美在线一区二区| 欧美日韩免费视频| 亚洲第一黄网| 国产精品久久久久久户外露出| 亚洲国产日韩一区| 国产精品人人爽人人做我的可爱 | 国外精品视频| 亚洲综合999| 在线看片成人| 午夜在线不卡| 亚洲片在线观看| 久久久综合视频| 亚洲一区二区三区高清不卡| 欧美大片国产精品|