单片机_CT107D训练平台电路原理图\蓝桥杯训练板\ 存储/IO 扩展模块\ 8255 扩展芯片\EEPROM 芯片 AT24C02\
存儲(chǔ)/IO 擴(kuò)展
8255 擴(kuò)展芯片原理圖:
8255芯片是Intel公司生產(chǎn)的可編程并行I/O接口芯片,有3個(gè)8位并行I/O口。具有3個(gè)通道3種工作方式的可編程并行接口芯片(40引腳)。 其各口功能可由軟件選擇,使用靈活,通用性強(qiáng)。8255可作為單片機(jī)與多種外設(shè)連接時(shí)的中間接口電路。
1、8255內(nèi)部結(jié)構(gòu)和引腳功能:
RESET: 復(fù)位輸入線,當(dāng)該輸入端處于高電平時(shí),所有內(nèi)部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成輸入方式。
CS: 芯片選擇信號(hào)線,當(dāng)這個(gè)輸入引腳為低電平時(shí),即/CS=0時(shí),表示芯片被選中,允許8255與CPU進(jìn)行通訊;/CS=1時(shí),8255無(wú)法與CPU做數(shù)據(jù)傳輸.
RD: 讀信號(hào)線,當(dāng)這個(gè)輸入引腳為低跳變沿時(shí),即/RD產(chǎn)生一個(gè)低脈沖且/CS=0時(shí),允許8255通過數(shù)據(jù)總線向CPU發(fā)送數(shù)據(jù)或狀態(tài)信息,即CPU從8255讀取信息或數(shù)據(jù)。
WR: 寫入信號(hào),當(dāng)這個(gè)輸入引腳為低跳變沿時(shí),即/WR產(chǎn)生一個(gè)低脈沖且/CS=0時(shí),允許CPU將數(shù)據(jù)或控制字寫入8255。
D0~D7: 三態(tài)雙向數(shù)據(jù)總線,8255與CPU數(shù)據(jù)傳送的通道,當(dāng)CPU 執(zhí)行輸入輸出指令時(shí),通過它實(shí)現(xiàn)8位數(shù)據(jù)的讀/寫操作,控制字和狀態(tài)信息也通過數(shù)據(jù)總線傳送。
PA7~PA0: A口輸入/輸出線PB7~PB0: B口輸入/輸出線PC7~PC0: C口輸入/輸出線A0、A1: 地址線,用來選擇內(nèi)部端口2、8255的工作方式:
3、8255的控制字:
8255A有兩個(gè)控制字,分別為方式控制字和C口置位/復(fù)位控制字,這兩個(gè)控制字公用一個(gè)地址通過最高位來選擇使用那個(gè)控制字
(1)工作方式選擇字
(2)C口置位/清零控制字:
可對(duì)8255的C口的每一位進(jìn)行清零操作,該操作通過設(shè)置C口置位/復(fù)位來實(shí)現(xiàn)
EEPROM 芯片 AT24C02原理圖:
特性
256 x 8 (2K)
IIC接口、施密特觸發(fā)器、噪聲抑制
用于硬件數(shù)據(jù)保護(hù)的寫保護(hù)引腳
8字節(jié)頁(yè)(1K, 2K)
允許部分頁(yè)寫
寫周期(最大5ms)
描述
AT24C02提供2048位的電可擦和可編程只讀存儲(chǔ)器(EEPROM)
組織為256, 8位字。該裝置經(jīng)過優(yōu)化,可用于許多工業(yè)和商業(yè)應(yīng)用。
引腳描述:
SERIAL CLOCK (SCL):
SCL輸入用于將正邊緣時(shí)鐘數(shù)據(jù)輸入到每個(gè)EEPROM設(shè)備,并將負(fù)邊緣時(shí)鐘數(shù)據(jù)輸出到每個(gè)設(shè)備。
SERIAL DATA (SDA):
SDA引腳是雙向的,用于串行數(shù)據(jù)傳輸。
DEVICE/PAGE ADDRESSES (A2, A1, A0):
A2、A1和AO引腳是硬接線AT24C02的設(shè)備地址輸入。多達(dá)8個(gè)1K/2K設(shè)備可以在一個(gè)總線系統(tǒng)上被尋址。
WRITE PROTECT (WP):
AT24C02有一個(gè)寫保護(hù)引腳,提供硬件數(shù)據(jù)保護(hù)。當(dāng)連接到地(GND)時(shí),寫保護(hù)引腳允許正常讀/寫操作。當(dāng)引腳連接到Vcc時(shí),就會(huì)啟用Write protection特性,不允許讀寫。
存儲(chǔ)組織:
AT24C02, 2K SERIAL EEPROM:
內(nèi)部組織32頁(yè),每個(gè)8字節(jié)2K需要8位數(shù)據(jù)字地址用于隨機(jī)字尋址也就是說有32頁(yè),每一頁(yè)8Byte,每1Byte是8位,總共就是2Kbit的存儲(chǔ)空間
設(shè)備操作(IIC)
時(shí)鐘和數(shù)據(jù)轉(zhuǎn)換:
SDA引腳通常與外部設(shè)備拉高。SDA引腳上的數(shù)據(jù)只能在SCL低時(shí)間段內(nèi)改變。在SCL高時(shí)間段內(nèi)的數(shù)據(jù)改變將表明如下定義的啟動(dòng)或停止條件。
啟動(dòng)條件:
SCL高的時(shí)候SDA從高到低的過渡是一個(gè)啟動(dòng)條件。
停止條件:
SCL高的SDA從低到高的轉(zhuǎn)變是停止條件。在讀取序列之后,stop命令將EEPROM置于備用電源模式。
確認(rèn):
所有地址和數(shù)據(jù)字都以8位字串行地傳送到EEPROM或從它傳送出來。EEPROM發(fā)送一個(gè)0來確認(rèn)它已經(jīng)接收到每個(gè)字。
待機(jī)模式:
AT24C01A/02/04/08A/16A具有低功率待機(jī)模式
啟用:
(a)上電后
(b)在收到停止位和完成任何內(nèi)部操作后。
設(shè)備地址
設(shè)備需要一個(gè)8位的設(shè)備地址字,后面跟著一個(gè)啟動(dòng)條件,以使芯片能夠進(jìn)行讀或?qū)懖僮?br /> 設(shè)備地址字由一個(gè)強(qiáng)制的1,0序列的前四個(gè)最有效的位,如所示。這是所有EEPROM設(shè)備的共同特點(diǎn)。
接下來的3位是1K/2K EEPROM的A2、A1和AO設(shè)備地址位。這3位必須與相應(yīng)的硬接線輸入引腳相比較。
最后一位為0表示寫。最后一位為1表示讀!
寫操作
字節(jié)寫:
寫操作需要在設(shè)備地址字和確認(rèn)之后有一個(gè)8位的數(shù)據(jù)字地址。一旦收到這個(gè)地址,EEPROM將再次響應(yīng)一個(gè)零,然后在第一個(gè)8位數(shù)據(jù)字時(shí)鐘。接收到8位數(shù)據(jù)字后,EEPROM將輸出一個(gè)零。主機(jī)必須用一個(gè)停止條件終止寫序列。此時(shí),EEPROM進(jìn)入一個(gè)內(nèi)部計(jì)時(shí)的寫周期,到非易失性存儲(chǔ)器。在這個(gè)寫周期中,所有輸入都被禁用,EEPROM直到寫完成才會(huì)響應(yīng)。
頁(yè)寫入:
1K/2K EEPROM能夠進(jìn)行8字節(jié)的頁(yè)寫入,4K、8K和16K設(shè)備能夠進(jìn)行16字節(jié)的頁(yè)寫入。
頁(yè)寫的初始化過程與字節(jié)寫的初始化過程相同。但是微控制器在第一個(gè)數(shù)據(jù)字被寫入后并沒有發(fā)送一個(gè)停止條件。
相反,在EEPROM承認(rèn)接收到第一個(gè)數(shù)據(jù)字之后。該微控制器可以傳輸多達(dá)7 (1K/2K)或15 (4K, 8K, 16K)更多的數(shù)據(jù)字。EEPROM在接收到每個(gè)數(shù)據(jù)字后將以一個(gè)零響應(yīng)。微控制器必須用一個(gè)停止條件終止頁(yè)寫序列。
當(dāng)內(nèi)部生成的字到達(dá)頁(yè)面邊界時(shí),下面的字節(jié)被放置在同一頁(yè)面的開頭。
如果有超過8個(gè)(1K/2K)或16個(gè)(4K, 8K, 16K)數(shù)據(jù)字傳輸?shù)紼EPROM,數(shù)據(jù)字地址將“翻轉(zhuǎn)”,先前的數(shù)據(jù)將被覆蓋。
確認(rèn)輪詢:
一旦內(nèi)部計(jì)時(shí)的寫周期已經(jīng)開始并且EEPROM輸入被禁用,確認(rèn)輪詢可以被啟動(dòng)。這包括發(fā)送一個(gè)起始條件,后面跟著設(shè)備地址字。讀/寫位代表所需的操作。只有當(dāng)內(nèi)部寫周期已經(jīng)完成,EEPROM才會(huì)以零響應(yīng),允許讀或?qū)懶蛄欣^續(xù)。
讀操作
確認(rèn)輪詢:
一旦內(nèi)部計(jì)時(shí)的寫周期已經(jīng)開始并且EEPROM輸入被禁用,確認(rèn)輪詢可以被啟動(dòng)。這包括發(fā)送一個(gè)起始條件,后面跟著設(shè)備地址字。讀/寫位代表所需的操作。只有當(dāng)內(nèi)部寫周期已經(jīng)完成,EEPROM才會(huì)以零響應(yīng),允許讀或?qū)懶蛄欣^續(xù)。
讀操作和寫操作的初始化方式相同,只是設(shè)備地址字的讀/寫選擇位被設(shè)置為1。讀操作有三種:
讀當(dāng)前地址
任意地址讀
連續(xù)順序讀
當(dāng)前地址讀取:
內(nèi)部數(shù)據(jù)字地址計(jì)數(shù)器維護(hù)上次讀或?qū)懖僮髌陂g訪問的最后一個(gè)地址,該地址加1。這個(gè)地址在操作之間保持有效,只要芯片電源是保持的。讀取期間的地址“翻轉(zhuǎn)”是從最后一個(gè)內(nèi)存頁(yè)的最后一個(gè)字節(jié)到第一個(gè)頁(yè)的第一個(gè)字節(jié)。寫過程中的地址“翻轉(zhuǎn)”是從當(dāng)前頁(yè)的最后一個(gè)字節(jié)到同一頁(yè)的第一個(gè)字節(jié)一旦具有讀/寫選擇位設(shè)置為1的設(shè)備地址被打卡并被EEPROM確認(rèn)。
任意地址讀:
隨機(jī)讀需要一個(gè)“虛擬”字節(jié)寫序列來加載數(shù)據(jù)字地址。一旦設(shè)備地址字和數(shù)據(jù)字地址被輸入并且被EEPROM確認(rèn)
微控制器必須產(chǎn)生另一個(gè)啟動(dòng)條件,微控制器現(xiàn)在通過發(fā)送帶讀設(shè)備地址來啟動(dòng)當(dāng)前讀地址。
EEPROM確認(rèn)設(shè)備地址并報(bào)出數(shù)據(jù)字。微控制器后跟隨停止條件結(jié)束。
連續(xù)順序讀:
順序讀由當(dāng)前地址讀或任意地址讀發(fā)起。在微控制器收到一個(gè)數(shù)據(jù)字后,它以一個(gè)確認(rèn)響應(yīng)。只要EEPROM收到一個(gè)確認(rèn),它就會(huì)繼續(xù)增加數(shù)據(jù)字地址,并連續(xù)地以時(shí)鐘的方式中斷連續(xù)的數(shù)據(jù)字。當(dāng)達(dá)到內(nèi)存地址限制時(shí),數(shù)據(jù)字地址將“翻轉(zhuǎn)”,順序讀取將繼續(xù)。順序讀操作被終止時(shí),后跟停止條件。
總結(jié)
以上是生活随笔為你收集整理的单片机_CT107D训练平台电路原理图\蓝桥杯训练板\ 存储/IO 扩展模块\ 8255 扩展芯片\EEPROM 芯片 AT24C02\的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 文库发表评论奖励规则说明
- 下一篇: 往年双十一,你都买过哪些坑爹货?