嵌入式學(xué)習(xí)筆記21——AVR單片機(jī)之片內(nèi)EEPROM
2. EEPROM存儲(chǔ)器相關(guān)的寄存器
本文引用地址:http://m.butianyuan.cn/article/201611/318410.htm程序中可直接對(duì)地址寄存器EEAR賦值,如EEAR=0x01BA。
控制寄存器EECR用于控制單片機(jī)對(duì)EEPROM的操作
- 位3——EERIE:EEPROM中斷準(zhǔn)備好使能位。當(dāng)EERIE置1而且全局中斷I置位時(shí),如果EEWE為0,則單片機(jī)產(chǎn)生一個(gè)中斷表示寫操作完成。(即置1后,才能在全中斷I為“1”,且EEWE為0時(shí)產(chǎn)生寫操作完成中斷。)
- 位2——EEMWE:EEPROM主寫使能位。當(dāng)EEMWE為“1”時(shí),設(shè)置EEWE為“1”將把EEDR中的數(shù)據(jù)寫入EEAR所選擇的的地址空間中(只是寫入地址空間,還沒有真正寫入到EEPROM)。如果EEMWE為“0”,則EEWE無效。EEMWE在被用戶置“1”后的4個(gè)時(shí)鐘周期后被硬件清“0”。
- 位1——EEWE:EEPROM寫使能位。當(dāng)EEPROM的地址和數(shù)據(jù)準(zhǔn)備好之后,用戶必須設(shè)置EEWE為“1”,才能將數(shù)據(jù)寫入EEPROM中,在置EEWE為“1”之前,EEMWE必須置“1”,否則寫入操作無效。EEPROM數(shù)據(jù)的寫入操作如下:a等待EEWE為“0”;b把EEPROM的地址寫入EEAR;c把EEPROM的數(shù)據(jù)寫入EEDR;d置EEMWE為“1”;e在置EEMWE為“1”的4個(gè)時(shí)鐘周期內(nèi),向EEWE中寫入“1”。
- 位0——EERE:EEPROM讀使能位。EERE用于對(duì)EEPROM的數(shù)據(jù)讀取,當(dāng)EEAR中設(shè)置了EEPROM的讀取地址后,置位EERE將執(zhí)行讀操作。當(dāng)EEPROM中的數(shù)據(jù)被讀取到數(shù)據(jù)寄存器EEDR中后,EERE被硬件清零,用戶可以通過查詢此位來判斷讀操作是否完成。
評(píng)論