![IIC總線協(xié)議及EEPROMAT24C02_第1頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-3/23/2b880c42-6fbf-408f-9d9d-ce51db9485d4/2b880c42-6fbf-408f-9d9d-ce51db9485d41.gif)
![IIC總線協(xié)議及EEPROMAT24C02_第2頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-3/23/2b880c42-6fbf-408f-9d9d-ce51db9485d4/2b880c42-6fbf-408f-9d9d-ce51db9485d42.gif)
![IIC總線協(xié)議及EEPROMAT24C02_第3頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-3/23/2b880c42-6fbf-408f-9d9d-ce51db9485d4/2b880c42-6fbf-408f-9d9d-ce51db9485d43.gif)
![IIC總線協(xié)議及EEPROMAT24C02_第4頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-3/23/2b880c42-6fbf-408f-9d9d-ce51db9485d4/2b880c42-6fbf-408f-9d9d-ce51db9485d44.gif)
![IIC總線協(xié)議及EEPROMAT24C02_第5頁(yè)](http://file2.renrendoc.com/fileroot_temp3/2021-3/23/2b880c42-6fbf-408f-9d9d-ce51db9485d4/2b880c42-6fbf-408f-9d9d-ce51db9485d45.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、I2C總線器件的擴(kuò)展,一、擴(kuò)展電路,基于IIC總線的E2PROM AT24C02,特性 與 400KHz IIC 總線兼容 1.8 到 6.0 伏工作電壓范圍 低功耗 CMOS 技術(shù) 寫(xiě)保護(hù)功能 當(dāng) WP 為高電平時(shí)進(jìn)入寫(xiě)保護(hù)狀態(tài) 頁(yè)寫(xiě)緩沖器 自定時(shí)擦寫(xiě)周期 1,000,000 編程/擦除周期 可保存數(shù)據(jù) 100 年 8 腳 DIP SOIC 或 TSSOP 封裝 溫度范圍 商業(yè)級(jí) 工業(yè)級(jí)和汽車(chē)級(jí),串行E2PROM典型產(chǎn)品,AT24C01:128字節(jié)(1288位); AT24C02:256字節(jié)(2568位); AT24C04:512字節(jié)(5128位)AT24C08:1K字節(jié)(1K8位); AT
2、24C16:2K字節(jié)(2K8位,ATMEL公司的AT24C系列,AT24C02引腳分布,WP 寫(xiě)保護(hù) 如果WP 管腳連接到 Vcc 所有的內(nèi)容都被寫(xiě)保護(hù),只能讀。當(dāng) WP 管腳連接到Vss或懸空,允許器件進(jìn)行正常的讀/寫(xiě)操作,AT24C02讀寫(xiě)時(shí)間周期,AT24WC01/02/04/08/16支持I2C總線數(shù)據(jù)傳送協(xié)議和I2C總線協(xié)議規(guī)定。 任何將數(shù)據(jù)傳送到總線的器件作為發(fā)送器,任何從總線接收數(shù)據(jù)的器件為接收器。 數(shù)據(jù)傳送是由產(chǎn)生串行時(shí)鐘和所有起始停止信號(hào)的主器件控制的,主器件和從器件都可以作為發(fā)送器或接收器,但由主器件控制傳送數(shù)據(jù)(發(fā)送或接收)的模式,通過(guò)器件地址輸入端A0、A1和A2可以實(shí)
3、現(xiàn)將最多8個(gè)24WC01和24WC02器件,4個(gè)24WC04器件(僅使用A1A2 地址管腳),2個(gè)24WC08器件(僅使用地址管腳 A2 A0)和 1個(gè) 24WC16器件連接到總線上(所有地址管腳 A0 A1 A2 都未用,AT24C02功能描述,I2C總線協(xié)議,1、只有在總線空閑時(shí)才允許啟動(dòng)數(shù)據(jù)傳送; 2、在數(shù)據(jù)傳送過(guò)程中,當(dāng)SCL=1時(shí),數(shù)據(jù)線SDA必須保持穩(wěn)定狀態(tài),不允許有跳變;SCL=1時(shí),數(shù)據(jù)線SDA的任何電平變化將被看作總線的起始或停止信號(hào),起始信號(hào) 時(shí)鐘線SCL保持高電平期間,數(shù)據(jù)線SDA電平從高到低的跳變作為I2C總線的起始信號(hào)。 停止信號(hào) 時(shí)鐘線SCL保持高電平期間,數(shù)據(jù)線S
4、DA電平從低到高的跳變作為I2C總線的停止信號(hào),器件尋址,主器件通過(guò)發(fā)送一個(gè)起始信號(hào)啟動(dòng)發(fā)送過(guò)程,然后發(fā)送它所要尋址的從器件的地址: 8位從器件地址的高4位固定為1010,接下來(lái)的3位A2A1A0 為器件的地址位,用來(lái)定義哪個(gè)器件以及器件的哪個(gè)部分被主器件訪問(wèn)。 最低位作為讀寫(xiě)控制位: 1 表示對(duì)從器件進(jìn)行讀操作 0 表示對(duì)從器件進(jìn)行寫(xiě)操作,在主器件發(fā)送起始信號(hào)和從器件地址字節(jié)后24C02監(jiān)視總線并當(dāng)其地址與發(fā)送的從地址相符時(shí),響應(yīng)一個(gè)應(yīng)答信號(hào)(通過(guò)SDA線),24C02根據(jù)讀寫(xiě)控制位(R/W)的狀態(tài)進(jìn)行讀或?qū)懖僮?應(yīng)答信號(hào),I2C總線數(shù)據(jù)傳送時(shí),每成功地傳送一個(gè)字節(jié)數(shù)據(jù)后,接收器都必須產(chǎn)生一
5、個(gè)應(yīng)答信號(hào),應(yīng)答的器件在第9個(gè)時(shí)鐘周期時(shí),將SDA線拉低,表示其已收到一個(gè)8位數(shù)據(jù),24C02在接收到起始信號(hào)和從器件地址之后響應(yīng)一個(gè)應(yīng)答信號(hào),如果器件已選擇了寫(xiě)操作,則在每接收一個(gè)8位字節(jié)之后響應(yīng)一個(gè)應(yīng)答信號(hào),當(dāng)24C02工作于讀模式時(shí),在發(fā)送一個(gè) 8 位數(shù)據(jù)后釋放SDA線并監(jiān)視一個(gè)應(yīng)答信號(hào),一旦接收到應(yīng)答信號(hào),24C02繼續(xù)發(fā)送數(shù)據(jù),如主器件沒(méi)有發(fā)送應(yīng)答信號(hào)器件停止傳送數(shù)據(jù)且等待一個(gè)停止信號(hào),應(yīng)答時(shí)序,主機(jī)時(shí)鐘,發(fā)送器輸出的數(shù)據(jù),接收器輸出的數(shù)據(jù),2)寫(xiě)入過(guò)程 AT24C系列E2PROM芯片地址的固定部分為1010,A2、A1、A0引腳接高、低電平后得到確定的3位編碼。形成的7位編碼即為該
6、器件的地址碼,單片機(jī)進(jìn)行寫(xiě)操作時(shí),首先發(fā)送該器件的7位地址碼和寫(xiě)方向位“0”(共8位,即一個(gè)字節(jié)),發(fā)送完后釋放SDA線并在SCL線上產(chǎn)生第9個(gè)時(shí)鐘信號(hào);被選中的存儲(chǔ)器器件在確認(rèn)是自己的地址后,在SDA線上產(chǎn)生一個(gè)應(yīng)答信號(hào)作為相應(yīng),單片機(jī)收到應(yīng)答后就可以傳送數(shù)據(jù)了,傳送數(shù)據(jù)時(shí),單片機(jī)首先發(fā)送一個(gè)字節(jié)的被寫(xiě)入器件的存儲(chǔ)區(qū)的首地址,收到存儲(chǔ)器器件的應(yīng)答后,單片機(jī)就逐個(gè)發(fā)送各數(shù)據(jù)字節(jié),但每發(fā)送一個(gè)字節(jié)后都要等待應(yīng)答,AT24C系列器件片內(nèi)地址在接收到每一個(gè)數(shù)據(jù)字節(jié)地址后自動(dòng)加1,在芯片的“一次裝載字節(jié)數(shù)”(不同芯片字節(jié)數(shù)不同)限度內(nèi),只需輸入首地址。裝載字節(jié)數(shù)超過(guò)芯片的“一次裝載字節(jié)數(shù)”時(shí),數(shù)據(jù)地址
7、將“上卷”,前面的數(shù)據(jù)將被覆蓋,當(dāng)要寫(xiě)入的數(shù)據(jù)傳送完后,單片機(jī)應(yīng)發(fā)出終止信號(hào)以結(jié)束寫(xiě)入操作。寫(xiě)入n個(gè)字節(jié)的數(shù)據(jù)格式,寫(xiě)入時(shí)序,頁(yè)寫(xiě),頁(yè)寫(xiě)操作的啟動(dòng)和字節(jié)寫(xiě)一樣,不同在于傳送了一字節(jié)數(shù)據(jù)后并不產(chǎn)生停止信號(hào),主器件被允許再發(fā)送 P=15個(gè)額外的字節(jié),每發(fā)送一個(gè)字節(jié)數(shù)據(jù)后24C02產(chǎn)生一個(gè)應(yīng)答位并將字節(jié)地址低位加 1 高位保持不變 ,如果在發(fā)送停止信號(hào)之前主器件發(fā)送超過(guò)P+1個(gè)字節(jié) 地址計(jì)數(shù)器將自動(dòng)翻轉(zhuǎn),先前寫(xiě)入的數(shù)據(jù)被覆蓋,24C02可以一次寫(xiě)入 16 個(gè)字節(jié)的數(shù)據(jù),接收到P+1字節(jié)數(shù)據(jù)和主器件發(fā)送的停止信號(hào)后 24C02 啟動(dòng)內(nèi)部寫(xiě)周期將數(shù)據(jù)寫(xiě)到數(shù)據(jù)區(qū),所有接收的數(shù)據(jù)在一個(gè)寫(xiě)周期內(nèi)寫(xiě)入24C02
8、,頁(yè)寫(xiě)時(shí)序,寫(xiě)保護(hù)操作特性可使用戶避免由于不當(dāng)操作而造成對(duì)存儲(chǔ)區(qū)域內(nèi)部數(shù)據(jù)的改寫(xiě)。 當(dāng) WP管腳接高時(shí),整個(gè)寄存器區(qū)全部被保護(hù)起來(lái)而變?yōu)橹豢勺x?。?4C02可以接收從器件地址和字節(jié)地址,但是裝置在接收到第一個(gè)數(shù)據(jù)字節(jié)后不發(fā)送應(yīng)答信號(hào)從而避免寄存器區(qū)域被編程改寫(xiě),寫(xiě)保護(hù),讀操作,24C02 讀操作的初始化方式和寫(xiě)操作時(shí)一樣,僅把 位置為 1 ,有三種不同的讀操作方式:立即地址讀、選擇讀和連續(xù)讀,立即地址讀,AT24C02的地址計(jì)數(shù)器內(nèi)容為最后操作字節(jié)的地址加 1。也就是說(shuō),如果上次讀/寫(xiě)的操作地址為 N,則立即讀的地址從地址 N+1開(kāi)始。如果 N=E(這里對(duì)24WC01, E=127;對(duì) 24W
9、C02,E=255;對(duì)24WC04,E=511;對(duì)24WC08,E=1023;對(duì) 24WC16,E=2047)則計(jì)數(shù)器將翻轉(zhuǎn)到 0 且繼續(xù)輸出數(shù)據(jù),AT24C02 接收到從器件地址信號(hào)后R/W 位置 1,它首先發(fā)送一個(gè)應(yīng)答信號(hào),然后發(fā)送一個(gè)8 位字節(jié)數(shù)據(jù),主器件不需發(fā)送一個(gè)應(yīng)答信號(hào),但要產(chǎn)生一個(gè)停止信號(hào),立即地址讀時(shí)序,選擇性讀,選擇性讀操作允許主器件對(duì)寄存器的任意字節(jié)進(jìn)行讀操作,主器件首先通過(guò)發(fā)送起始信號(hào)、從器件地址和它想讀取的字節(jié)數(shù)據(jù)的地址執(zhí)行一個(gè)偽寫(xiě)操作,在24C02應(yīng)答之后,主器件重新發(fā)送起始信號(hào)和從器件地址,此時(shí)R/W位置1,24C02響應(yīng)并發(fā)送應(yīng)答信號(hào),然后輸出所要求的一個(gè)8 位字
10、節(jié)數(shù)據(jù),主器件不發(fā)送應(yīng)答信號(hào)但產(chǎn)生一個(gè)停止信號(hào),選擇性讀時(shí)序,連續(xù)讀,連續(xù)讀操作可通過(guò)立即讀或選擇性讀操作啟動(dòng),在24C02發(fā)送完一個(gè) 8 位字節(jié)數(shù)據(jù)后,主器件產(chǎn)生一個(gè)應(yīng)答信號(hào)來(lái)響應(yīng),告知24C02主器件要求更多的數(shù)據(jù),對(duì)應(yīng)每個(gè)主機(jī)產(chǎn)生的應(yīng)答信號(hào),24C02將發(fā)送一個(gè) 8 位數(shù)據(jù)字節(jié),當(dāng)主器件不發(fā)送應(yīng)答信號(hào)而發(fā)送停止位時(shí)結(jié)束此操作。 從24C02輸出的數(shù)據(jù)按順序由 N 到 N+1 輸出,讀操作時(shí),地址計(jì)數(shù)器在24C02 整個(gè)地址內(nèi)增加,這樣整個(gè)寄存器區(qū)域在可在一個(gè)讀操作內(nèi)全部讀出。當(dāng)讀取的字節(jié)超過(guò)E (這里對(duì)24WC01, E=127;對(duì) 24WC02,E=255;對(duì)24WC04,E=511;
11、對(duì)24WC08,E=1023;對(duì) 24WC16,E=2047),計(jì)數(shù)器將翻轉(zhuǎn)到零并繼續(xù)輸出數(shù)據(jù)字節(jié),連續(xù)讀時(shí)序,小結(jié)讀出過(guò)程 單片機(jī)先發(fā)送該器件的7位地址碼和寫(xiě)方向位“0”(“偽寫(xiě)”),發(fā)送完后釋放SDA線并在SCL線上產(chǎn)生第9個(gè)時(shí)鐘信號(hào)。被選中的存儲(chǔ)器器件在確認(rèn)是自己的地址后,在SDA線上產(chǎn)生一個(gè)應(yīng)答信號(hào)作為回應(yīng),然后,再發(fā)一個(gè)字節(jié)的要讀出器件的存儲(chǔ)區(qū)的首地址,收到應(yīng)答后,單片機(jī)要重復(fù)一次起始信號(hào)并發(fā)出器件地址和讀方向位(“1”),收到器件應(yīng)答后就可以讀出數(shù)據(jù)字節(jié),每讀出一個(gè)字節(jié),單片機(jī)都要回復(fù)應(yīng)答信號(hào)。當(dāng)最后一個(gè)字節(jié)數(shù)據(jù)讀完后,單片機(jī)應(yīng)返回以“非應(yīng)答”(高電平),并發(fā)出終止信號(hào)以結(jié)束讀出操
12、作,大賽24C02部分電路圖,sbit SCL = P20; sbit SDA = P21; /用單片機(jī)的兩個(gè)I/O口模擬I2C接口,void iic_start(void) SDA = 1; /釋放SDA總線 somenop; SCL = 1; somenop; SDA = 0; somenop;,define somenop _nop_();_nop_();_nop_();_nop_();_nop_(,起始信號(hào) /開(kāi)始信號(hào)SCL在高電平期間,SDA一個(gè)下降沿則表示啟動(dòng)信號(hào),void iic_stop(void) SDA = 0; somenop; SCL = 1; somenop; SDA
13、 = 1; somenop;,終止信號(hào) /停止SCL在高電平期間,SDA一個(gè)上升沿則表示停止信號(hào),sbit SCL = P20; sbit SDA = P21,define somenop _nop_();_nop_();_nop_();_nop_();_nop_(,void iic_ack(bit ackbit) if(ackbit) SDA = 0; /第9個(gè)周期拉低,表示應(yīng)答 else SDA = 1; /第9個(gè)周期拉高,表示非應(yīng)答 somenop; SCL = 1; somenop; SCL = 0; SDA = 1; /釋放數(shù)據(jù)總線,單片機(jī)向24C02的應(yīng)答信號(hào),單片機(jī),24C02,
14、I2C總線數(shù)據(jù)傳送時(shí),每成功地傳送一個(gè)字節(jié)數(shù)據(jù)后,接收器都必須產(chǎn)生一個(gè)應(yīng)答信號(hào),應(yīng)答的器件在第9個(gè)時(shí)鐘周期時(shí),將SDA線拉低,表示其已收到一個(gè)8位數(shù)據(jù)。 /形參ackbit=1表示應(yīng)答,0表示非應(yīng)答,bit iic_waitack(void) SDA = 1;/釋放總線 somenop; SCL = 1; somenop; if(SDA) SCL = 0; iic_stop(); return 0; /無(wú)應(yīng)答 else SCL = 0; return 1; /有應(yīng)答,單片機(jī)等待來(lái)自24C02的應(yīng)答信號(hào),單片機(jī),24C02,SCL在高電平期間,SDA被從設(shè)備拉為低電平表示應(yīng)答,void iic_
15、sendbyte(unsigned char byt) unsigned char i; for(i=0;i8;i+) if(byt,單片機(jī)向從機(jī)發(fā)送一個(gè)字節(jié),每次程序的開(kāi)始都默認(rèn)SCL=0,因此程序最后要將SCL=0 SCL低電平期間才可以寫(xiě)數(shù)據(jù),unsigned char iic_recbyte(void) unsigned char da; unsigned char i; for(i=0;i8;i+) SCL = 1; somenop; da = 1; if(SDA) da |= 0 x01; SCL = 0; somenop; return da;,單片機(jī)從從機(jī)讀取一個(gè)字節(jié),每次程序
16、的開(kāi)始都默認(rèn)SCL=0,因此程序最后要將SCL=0 SCL高電平期間才可以讀數(shù)據(jù),void wrbyte_24c02(unsigned char add,unsigned char dat) / Device Address 1010 000 R/W iic_start(); /啟動(dòng) iic_sendbyte(0 xa0); /發(fā)送從設(shè)備地址 iic_waitack(); /等待從設(shè)備的響應(yīng) iic_sendbyte(add); /發(fā)出芯片內(nèi)地址 iic_waitack(); /等待從設(shè)備的響應(yīng) iic_sendbyte(dat); /發(fā)送數(shù)據(jù) iic_waitack(); /等待從設(shè)備的響應(yīng)
17、 iic_stop(); /停止,單片機(jī)向從機(jī)的add地址上,寫(xiě)入char型的數(shù)dat,unsigned char rdbyte_24c02(unsigned char add) / Device Address 1100 000 R/W unsigned char da; iic_start(); /啟動(dòng) iic_sendbyte(0 xa0); /發(fā)送發(fā)送從設(shè)備地址寫(xiě)操作 iic_waitack(); /等待從設(shè)備的響應(yīng) iic_sendbyte(add); /發(fā)送芯片內(nèi)地址 iic_waitack(); /等待從設(shè)備的響應(yīng) iic_start(); /啟動(dòng) iic_sendbyte(0
18、xa1); /發(fā)送發(fā)送從設(shè)備地址讀操作 iic_waitack(); /等待從設(shè)備的響應(yīng) da = iic_recbyte(); /獲取數(shù)據(jù) iic_ack(0); /可省去 iic_stop(); /停止 return da;,單片機(jī)從24C02的add地址上讀取一個(gè)數(shù),temp = rdbyte_24c02(0 x00); /從24C02的0 x00地址上讀取一個(gè)字節(jié)到temp中,主程序調(diào)用,wrbyte_24c02(0 x00,a0); /向24C02的0 x00地址寫(xiě)入a0的內(nèi)容,void wrbyte_24c02(uchar add, uchar dat0, uchar dat1,) / Device Address 1010 000 R/W iic_start(); iic_sendbyte(0 xa0); iic_waitack(); iic_sendbyte(add); iic_waitack(); iic_sendbyte(dat0); iic_waitack(); iic_sendbyte(dat1); iic_waitack(); iic_stop(); delay(10);,單片機(jī)向24C02的ad
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度辦事處知識(shí)產(chǎn)權(quán)專利實(shí)施許可與授權(quán)合同
- 家裝項(xiàng)目監(jiān)管合同
- 二零二五年度辦公室清潔與員工健康關(guān)懷合同
- 農(nóng)產(chǎn)品銷(xiāo)售居間合同委托書(shū)
- 有保證人借款合同
- 全新借錢(qián)的合同
- 制造業(yè)自動(dòng)化技術(shù)指南
- 醫(yī)院技術(shù)合作協(xié)議
- 工程建設(shè)項(xiàng)目招標(biāo)代理協(xié)議書(shū)
- 商標(biāo)權(quán)轉(zhuǎn)讓合同
- 運(yùn)輸管理實(shí)務(wù)課件4.5鐵路運(yùn)費(fèi)計(jì)算1
- 垃圾清運(yùn)服務(wù)投標(biāo)方案技術(shù)方案
- 化學(xué)品安全員勞動(dòng)合同
- 民政局版離婚協(xié)議書(shū)模板
- 腎病科血栓性微血管病診療規(guī)范2023版
- 六年級(jí)英語(yǔ)完形填空60篇含答案及講解
- 新時(shí)代中小學(xué)教師職業(yè)行為十項(xiàng)準(zhǔn)則
- 《幼兒園英語(yǔ)口語(yǔ)》
- 2024年人教版(新起點(diǎn))三年級(jí)英語(yǔ)下冊(cè)知識(shí)點(diǎn)匯總
- 高考作文復(fù)習(xí):議論文的8種常見(jiàn)的論證方法寫(xiě)作指導(dǎo)+課件
- 新生兒肛管排氣的課件
評(píng)論
0/150
提交評(píng)論