串行E2PROM 24LC65在單片機(jī)中的應(yīng)用
1. 概述
本文引用地址:http://2s4d.com/article/171989.htm24LC65是目前容量較大的一種串行E2PROM 芯片,具有8kB的存儲(chǔ)容量,體積小,功耗低,可掉電保護(hù)。AT89C52單片機(jī)亦具有8kB內(nèi)部ROM,同樣具備低功耗和控制功能強(qiáng)等特點(diǎn),由兩者構(gòu)成的單片機(jī)小系統(tǒng)硬件開銷少,數(shù)據(jù)可串行傳送,功耗低,非常實(shí)用。但是,讀、寫24LC65的程序編寫卻比較麻煩,本文將介紹對(duì)其編程的方法,并介紹采用子程序結(jié)構(gòu)編寫的已通過的寫、讀24LC65的應(yīng)用編程。
2. 24LC65與單片機(jī)的連接
2.1 24LC65的引腳功能
24LC65采用8腳DIP封裝,引腳功能如下:
1~3腳(A0、A1、A2)為三位地址輸入端;
4腳GND為接地端;
5腳SDA為二進(jìn)制數(shù)據(jù)輸入輸出端;
6腳SCL為時(shí)鐘輸入端;
7腳NC懸空;
8腳VCC為5V正電源。
2.2 24LC65與單片機(jī)的連接
連接電路如圖1所示,圖中共接有8片24LC65芯片,芯片的三位地址A2、A1、A0接成8種組態(tài),由A2、A1、A0排列組成8個(gè)片選地址,因此在兩線上最多可選用8片,可尋址64kB存儲(chǔ)空間,每片尋址8kB,其中,1#芯片地址范圍是0000H~1FFFH,8#芯片地址范圍是 E000H~FFFFH。SDA為串行數(shù)據(jù)輸入輸出線,SCL是時(shí)鐘輸入端,每次訪問24LC65之前,必須執(zhí)行啟動(dòng)I2C數(shù)據(jù)總線操作,每次結(jié)束訪問時(shí),也必須執(zhí)行停止I2C數(shù)據(jù)總線操作,其操作時(shí)序由SCL與SDA的關(guān)系確定,如圖2的示,可以看出,當(dāng)SCL為高電平時(shí),SDA由高變低時(shí)啟動(dòng)I2C總線,而SDA由低變高時(shí),停止總線操作。若啟動(dòng)總線為讀操作,則在SCL脈沖的下降沿讀出1 bit的數(shù)據(jù),若啟動(dòng)寫操作,則在SCL脈沖的上升沿寫入1 bit 的數(shù)據(jù)。
3. 數(shù)據(jù)格式
對(duì)E2PROM 24LC65每次寫一個(gè)字節(jié)操作的數(shù)據(jù)格式由4個(gè)字節(jié)構(gòu)成。第1字節(jié)為:
其中,×為任意,A12、A11、A10、A9、A8為E2PROM 24LC65的高5位地址。
第3字節(jié)是E2PROM 24LC65的低8位地址A7~A0。第4字節(jié)才是8位數(shù)據(jù)。注意,每個(gè)字節(jié)后緊跟一個(gè)回答(ACK)信號(hào)。
4. 寫24LC65程序
用MCS-51單片機(jī)的指令編寫對(duì)24LC65寫一字節(jié)的子程序是關(guān)鍵,主程序連續(xù)調(diào)四次便可實(shí)現(xiàn)對(duì)24LC65寫一字節(jié)數(shù)據(jù)的目的。假設(shè)待寫入字節(jié)在單片機(jī)內(nèi)字節(jié)地址分別是6FH、6EH、…、68H,并分別存放在待寫入字節(jié)的D7、D6、…、D0位,作為調(diào)用寫一字節(jié)子程序的入口參數(shù)。由主程序啟動(dòng),并停止總線。其程序分別如下:
評(píng)論