1EEPROM 簡介
EEPROM全稱為EEPROM(Electrically Erasable Programmable Read Only Memory)是電可擦除可編程只讀存儲器。雖然名稱為只讀存儲器,但是擦除和寫入都是直接使用電路控制,不需要再使用外部設(shè)備來擦寫,即設(shè)備在運行過程中即可隨時擦除和寫入。可以按字節(jié)為單位修改數(shù)據(jù),無需整個芯片擦除,且掉電后數(shù)據(jù)不丟失,一般用來存儲一些配置信息,以便系統(tǒng)重新上電的時候加載。
2EPROM 操作說明
2.1 通訊方式
主要通訊方式有 I2C 和 SPI 協(xié)議,本文將介紹如何通過 I2C 來驅(qū)動EEPROM。
2.2 設(shè)備地址
如果僅接入一個AT24C02,可以將設(shè)備的A0、A1、A2引腳全部接入低電平,那么此時該設(shè)備的地址為0xA0。
? ?
2.3 I2C配置流程
開時鐘,外設(shè)清零,參數(shù)配置,初始化,引腳配置,使能
? ?
2.4 寫入數(shù)據(jù)
寫入一個字節(jié):
MCU先向AT24C02寫入一個地址,然后再寫入數(shù)據(jù)。
寫入一頁:
MCU先向AT24C02寫入一個地址,然后再依次寫入數(shù)據(jù),注意AT24C02一頁有8個字節(jié),每頁開始地址均是8的整數(shù)倍,一次頁寫入操作地址不能超過當前頁的尾地址。
連續(xù)寫入:
AT24C02本身沒有提供連續(xù)寫入的操作,因此必須先將數(shù)據(jù)按頁地址分為若干頁,然后再依次調(diào)用頁寫入操作進行寫入。
? ?
2.5 讀出數(shù)據(jù)
讀取當前字節(jié):
MCU直接發(fā)起讀操作,設(shè)備返回當前字節(jié),當前字節(jié)自動加1,該操作較少使用。
讀取指定地址一個字節(jié):
MCU先向AT24C02寫入一個地址,然后再發(fā)起一個讀操作,AT24C02返回該地址存儲的字節(jié)。
連續(xù)讀取:
MCU發(fā)起讀當前字節(jié),或者讀指定地址字節(jié),設(shè)備返回數(shù)據(jù),MCU發(fā)送ACK,設(shè)備繼續(xù)返回后續(xù)地址數(shù)據(jù),直到MCU發(fā)送NACK,設(shè)備不再返回數(shù)據(jù)。
? ?
2.6 樣例測試
初始化兩個數(shù)組,配置I2C,調(diào)用寫入和讀取的函數(shù)操作EEPROM,通過串口打印觀察結(jié)果。
運行實例
審核編輯:湯梓紅
-
芯片
+關(guān)注
關(guān)注
459文章
52481瀏覽量
440558 -
存儲器
+關(guān)注
關(guān)注
38文章
7649瀏覽量
167320 -
通訊
+關(guān)注
關(guān)注
9文章
927瀏覽量
35654 -
EEPROM
+關(guān)注
關(guān)注
9文章
1086瀏覽量
83720 -
I2C
+關(guān)注
關(guān)注
28文章
1541瀏覽量
127782
原文標題:靈動微課堂 (第256講)|MM32G0140 I2C驅(qū)動EEPROM
文章出處:【微信號:MindMotion-MMCU,微信公眾號:靈動MM32MCU】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
基于I2C總線的EEPROM驅(qū)動程序
I2C—讀寫EEPROM
STM32學(xué)習(xí)之I2C協(xié)議(讀寫EEPROM)

基于MM32生態(tài)實現(xiàn)I2C接口通訊的方式
靈動微MM32G0140完美替換兼容STM32G031系列

MM32G0140 I2C驅(qū)動EEPROM

使用C2000 I2C模塊連接EEPROM

評論