<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > avr單片機(jī)eeprom初始化配置及說(shuō)明

          avr單片機(jī)eeprom初始化配置及說(shuō)明

          作者: 時(shí)間:2016-11-18 來(lái)源:網(wǎng)絡(luò) 收藏
          ATmega16 包含 512 字節(jié)的 EEPROM 數(shù)據(jù)存儲(chǔ)器。它是作為一個(gè)獨(dú)立的數(shù)據(jù)空間而存在的,可以按字節(jié)讀寫。 EEPROM 的壽命至少為 100,000 次擦除周期。 EEPROM 的訪問(wèn) 由地址寄存器、數(shù)據(jù)寄存器和控制寄存器決定。

          /*
          EEPROM 數(shù)據(jù)存儲(chǔ)器

          本文引用地址:http://www.ex-cimer.com/article/201611/315762.htm

          EEPROM 地址寄存器(EEARH 和 EEARL)

          bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0

          EEAR7 EEAR6 EEAR5 EEAR4 EEAR3 EEAR2 EEAR1 EEAR0

          Res: 保留

          保留位,讀操作返回值為零。

          EEAR8..0: EEPROM 地址

          EEPROM地址寄存器 – EEARH和EEARL指定了512字節(jié)的EEPROM空間。EEPROM地址是線性

          的,從0 到511。EEAR的初始值沒(méi)有定義。在訪問(wèn)EEPROM之前必須為其賦予正確的數(shù)據(jù)。
          EEPROM數(shù)據(jù)寄存器 EEDR

          bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
          MSB LSB

          EEDR7.0: EEPROM 數(shù)據(jù)

          對(duì)于EEPROM寫操作, EEDR是需要寫到EEAR單元的數(shù)據(jù);對(duì)于讀操作,EEDR 是從

          地址EEAR讀取的數(shù)據(jù)。

          EEPROM控制寄存器 EECR

          bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0

          – – – – EERIE EEMWE EEWE EERE

          Res: 保留

          保留位,讀操作返回值為零。

          EERIE: 使能EEPROM 準(zhǔn)備好中斷

          若SREG 的I 為"1",則置位EERIE 將使能EEPROM 準(zhǔn)備好中斷。清零EERIE 則禁止此

          中斷。當(dāng)EEWE 清零時(shí)EEPROM 準(zhǔn)備好中斷即可發(fā)生。

          EEMWE: EEPROM 主機(jī)寫使能

          EEMWE決定了EEWE置位是否可以啟動(dòng)EEPROM寫操作。當(dāng)EEMWE為"1"時(shí),在4個(gè)時(shí)鐘周

          期內(nèi)置位EEWE將把數(shù)據(jù)寫入EEPROM的指定地址;若EEMWE為"0“,則操作EEWE不起

          作用。EEMWE置位后4個(gè)周期,硬件對(duì)其清零。見(jiàn)EEPROM 寫過(guò)程中對(duì)EEWE 位的描述。

          EEWE: EEPROM寫使能

          EEWE為EEPROM寫操作的使能信號(hào)。當(dāng)EEPROM數(shù)據(jù)和地址設(shè)置好之后,需置位EEWE以便將

          數(shù)據(jù)寫入EEPROM。此時(shí)EEMWE必須置位,否則EEPROM寫操作將不會(huì)發(fā)生。


          */

          #include
          #include
          /*EEPROM的512字節(jié)讀寫操作*/
          void EEPROM_write(unsigned int uiAddress, unsigned char ucData)//寫數(shù)據(jù).存數(shù)據(jù)的地址0-511之間
          {

          while(EECR & (1<EEAR = uiAddress;//設(shè)置地址
          EEDR = ucData;//設(shè)置數(shù)據(jù)
          EECR |= (1<EECR |= (1<}


          unsigned char EEPROM_read(unsigned int uiAddress)//讀數(shù)據(jù)
          {
          while(EECR & (1<EEAR = uiAddress;//設(shè)置地址
          EECR |= (1<return EEDR;//返回?cái)?shù)據(jù)寄存器里面的數(shù)據(jù),讀操作完成,
          }



          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();