版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、I2C總線器件的擴展,一、擴展電路,基于IIC總線的E2PROM AT24C02,特性 與 400KHz IIC 總線兼容 1.8 到 6.0 伏工作電壓范圍 低功耗 CMOS 技術 寫保護功能 當 WP 為高電平時進入寫保護狀態(tài) 頁寫緩沖器 自定時擦寫周期 1,000,000 編程/擦除周期 可保存數(shù)據(jù) 100 年 8 腳 DIP SOIC 或 TSSOP 封裝 溫度范圍 商業(yè)級 工業(yè)級和汽車級,串行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 寫保護 如果WP 管腳連接到 Vcc 所有的內(nèi)容都被寫保護,只能讀。當 WP 管腳連接到Vss或懸空,允許器件進行正常的讀/寫操作,AT24C02讀寫時間周期,AT24WC01/02/04/08/16支持I2C總線數(shù)據(jù)傳送協(xié)議和I2C總線協(xié)議規(guī)定。 任何將數(shù)據(jù)傳送到總線的器件作為發(fā)送器,任何從總線接收數(shù)據(jù)的器件為接收器。 數(shù)據(jù)傳送是由產(chǎn)生串行時鐘和所有起始停止信號的主器件控制的,主器件和從器件都可以作為發(fā)送器或接收器,但由主器件控制傳送數(shù)據(jù)(發(fā)送或接收)的模式,通過器件地址輸入端A0、A1和A2可以實
3、現(xiàn)將最多8個24WC01和24WC02器件,4個24WC04器件(僅使用A1A2 地址管腳),2個24WC08器件(僅使用地址管腳 A2 A0)和 1個 24WC16器件連接到總線上(所有地址管腳 A0 A1 A2 都未用,AT24C02功能描述,I2C總線協(xié)議,1、只有在總線空閑時才允許啟動數(shù)據(jù)傳送; 2、在數(shù)據(jù)傳送過程中,當SCL=1時,數(shù)據(jù)線SDA必須保持穩(wěn)定狀態(tài),不允許有跳變;SCL=1時,數(shù)據(jù)線SDA的任何電平變化將被看作總線的起始或停止信號,起始信號 時鐘線SCL保持高電平期間,數(shù)據(jù)線SDA電平從高到低的跳變作為I2C總線的起始信號。 停止信號 時鐘線SCL保持高電平期間,數(shù)據(jù)線S
4、DA電平從低到高的跳變作為I2C總線的停止信號,器件尋址,主器件通過發(fā)送一個起始信號啟動發(fā)送過程,然后發(fā)送它所要尋址的從器件的地址: 8位從器件地址的高4位固定為1010,接下來的3位A2A1A0 為器件的地址位,用來定義哪個器件以及器件的哪個部分被主器件訪問。 最低位作為讀寫控制位: 1 表示對從器件進行讀操作 0 表示對從器件進行寫操作,在主器件發(fā)送起始信號和從器件地址字節(jié)后24C02監(jiān)視總線并當其地址與發(fā)送的從地址相符時,響應一個應答信號(通過SDA線),24C02根據(jù)讀寫控制位(R/W)的狀態(tài)進行讀或寫操作,應答信號,I2C總線數(shù)據(jù)傳送時,每成功地傳送一個字節(jié)數(shù)據(jù)后,接收器都必須產(chǎn)生一
5、個應答信號,應答的器件在第9個時鐘周期時,將SDA線拉低,表示其已收到一個8位數(shù)據(jù),24C02在接收到起始信號和從器件地址之后響應一個應答信號,如果器件已選擇了寫操作,則在每接收一個8位字節(jié)之后響應一個應答信號,當24C02工作于讀模式時,在發(fā)送一個 8 位數(shù)據(jù)后釋放SDA線并監(jiān)視一個應答信號,一旦接收到應答信號,24C02繼續(xù)發(fā)送數(shù)據(jù),如主器件沒有發(fā)送應答信號器件停止傳送數(shù)據(jù)且等待一個停止信號,應答時序,主機時鐘,發(fā)送器輸出的數(shù)據(jù),接收器輸出的數(shù)據(jù),2)寫入過程 AT24C系列E2PROM芯片地址的固定部分為1010,A2、A1、A0引腳接高、低電平后得到確定的3位編碼。形成的7位編碼即為該
6、器件的地址碼,單片機進行寫操作時,首先發(fā)送該器件的7位地址碼和寫方向位“0”(共8位,即一個字節(jié)),發(fā)送完后釋放SDA線并在SCL線上產(chǎn)生第9個時鐘信號;被選中的存儲器器件在確認是自己的地址后,在SDA線上產(chǎn)生一個應答信號作為相應,單片機收到應答后就可以傳送數(shù)據(jù)了,傳送數(shù)據(jù)時,單片機首先發(fā)送一個字節(jié)的被寫入器件的存儲區(qū)的首地址,收到存儲器器件的應答后,單片機就逐個發(fā)送各數(shù)據(jù)字節(jié),但每發(fā)送一個字節(jié)后都要等待應答,AT24C系列器件片內(nèi)地址在接收到每一個數(shù)據(jù)字節(jié)地址后自動加1,在芯片的“一次裝載字節(jié)數(shù)”(不同芯片字節(jié)數(shù)不同)限度內(nèi),只需輸入首地址。裝載字節(jié)數(shù)超過芯片的“一次裝載字節(jié)數(shù)”時,數(shù)據(jù)地址
7、將“上卷”,前面的數(shù)據(jù)將被覆蓋,當要寫入的數(shù)據(jù)傳送完后,單片機應發(fā)出終止信號以結束寫入操作。寫入n個字節(jié)的數(shù)據(jù)格式,寫入時序,頁寫,頁寫操作的啟動和字節(jié)寫一樣,不同在于傳送了一字節(jié)數(shù)據(jù)后并不產(chǎn)生停止信號,主器件被允許再發(fā)送 P=15個額外的字節(jié),每發(fā)送一個字節(jié)數(shù)據(jù)后24C02產(chǎn)生一個應答位并將字節(jié)地址低位加 1 高位保持不變 ,如果在發(fā)送停止信號之前主器件發(fā)送超過P+1個字節(jié) 地址計數(shù)器將自動翻轉,先前寫入的數(shù)據(jù)被覆蓋,24C02可以一次寫入 16 個字節(jié)的數(shù)據(jù),接收到P+1字節(jié)數(shù)據(jù)和主器件發(fā)送的停止信號后 24C02 啟動內(nèi)部寫周期將數(shù)據(jù)寫到數(shù)據(jù)區(qū),所有接收的數(shù)據(jù)在一個寫周期內(nèi)寫入24C02
8、,頁寫時序,寫保護操作特性可使用戶避免由于不當操作而造成對存儲區(qū)域內(nèi)部數(shù)據(jù)的改寫。 當 WP管腳接高時,整個寄存器區(qū)全部被保護起來而變?yōu)橹豢勺x??;24C02可以接收從器件地址和字節(jié)地址,但是裝置在接收到第一個數(shù)據(jù)字節(jié)后不發(fā)送應答信號從而避免寄存器區(qū)域被編程改寫,寫保護,讀操作,24C02 讀操作的初始化方式和寫操作時一樣,僅把 位置為 1 ,有三種不同的讀操作方式:立即地址讀、選擇讀和連續(xù)讀,立即地址讀,AT24C02的地址計數(shù)器內(nèi)容為最后操作字節(jié)的地址加 1。也就是說,如果上次讀/寫的操作地址為 N,則立即讀的地址從地址 N+1開始。如果 N=E(這里對24WC01, E=127;對 24W
9、C02,E=255;對24WC04,E=511;對24WC08,E=1023;對 24WC16,E=2047)則計數(shù)器將翻轉到 0 且繼續(xù)輸出數(shù)據(jù),AT24C02 接收到從器件地址信號后R/W 位置 1,它首先發(fā)送一個應答信號,然后發(fā)送一個8 位字節(jié)數(shù)據(jù),主器件不需發(fā)送一個應答信號,但要產(chǎn)生一個停止信號,立即地址讀時序,選擇性讀,選擇性讀操作允許主器件對寄存器的任意字節(jié)進行讀操作,主器件首先通過發(fā)送起始信號、從器件地址和它想讀取的字節(jié)數(shù)據(jù)的地址執(zhí)行一個偽寫操作,在24C02應答之后,主器件重新發(fā)送起始信號和從器件地址,此時R/W位置1,24C02響應并發(fā)送應答信號,然后輸出所要求的一個8 位字
10、節(jié)數(shù)據(jù),主器件不發(fā)送應答信號但產(chǎn)生一個停止信號,選擇性讀時序,連續(xù)讀,連續(xù)讀操作可通過立即讀或選擇性讀操作啟動,在24C02發(fā)送完一個 8 位字節(jié)數(shù)據(jù)后,主器件產(chǎn)生一個應答信號來響應,告知24C02主器件要求更多的數(shù)據(jù),對應每個主機產(chǎn)生的應答信號,24C02將發(fā)送一個 8 位數(shù)據(jù)字節(jié),當主器件不發(fā)送應答信號而發(fā)送停止位時結束此操作。 從24C02輸出的數(shù)據(jù)按順序由 N 到 N+1 輸出,讀操作時,地址計數(shù)器在24C02 整個地址內(nèi)增加,這樣整個寄存器區(qū)域在可在一個讀操作內(nèi)全部讀出。當讀取的字節(jié)超過E (這里對24WC01, E=127;對 24WC02,E=255;對24WC04,E=511;
11、對24WC08,E=1023;對 24WC16,E=2047),計數(shù)器將翻轉到零并繼續(xù)輸出數(shù)據(jù)字節(jié),連續(xù)讀時序,小結讀出過程 單片機先發(fā)送該器件的7位地址碼和寫方向位“0”(“偽寫”),發(fā)送完后釋放SDA線并在SCL線上產(chǎn)生第9個時鐘信號。被選中的存儲器器件在確認是自己的地址后,在SDA線上產(chǎn)生一個應答信號作為回應,然后,再發(fā)一個字節(jié)的要讀出器件的存儲區(qū)的首地址,收到應答后,單片機要重復一次起始信號并發(fā)出器件地址和讀方向位(“1”),收到器件應答后就可以讀出數(shù)據(jù)字節(jié),每讀出一個字節(jié),單片機都要回復應答信號。當最后一個字節(jié)數(shù)據(jù)讀完后,單片機應返回以“非應答”(高電平),并發(fā)出終止信號以結束讀出操
12、作,大賽24C02部分電路圖,sbit SCL = P20; sbit SDA = P21; /用單片機的兩個I/O口模擬I2C接口,void iic_start(void) SDA = 1; /釋放SDA總線 somenop; SCL = 1; somenop; SDA = 0; somenop;,define somenop _nop_();_nop_();_nop_();_nop_();_nop_(,起始信號 /開始信號SCL在高電平期間,SDA一個下降沿則表示啟動信號,void iic_stop(void) SDA = 0; somenop; SCL = 1; somenop; SDA
13、 = 1; somenop;,終止信號 /停止SCL在高電平期間,SDA一個上升沿則表示停止信號,sbit SCL = P20; sbit SDA = P21,define somenop _nop_();_nop_();_nop_();_nop_();_nop_(,void iic_ack(bit ackbit) if(ackbit) SDA = 0; /第9個周期拉低,表示應答 else SDA = 1; /第9個周期拉高,表示非應答 somenop; SCL = 1; somenop; SCL = 0; SDA = 1; /釋放數(shù)據(jù)總線,單片機向24C02的應答信號,單片機,24C02,
14、I2C總線數(shù)據(jù)傳送時,每成功地傳送一個字節(jié)數(shù)據(jù)后,接收器都必須產(chǎn)生一個應答信號,應答的器件在第9個時鐘周期時,將SDA線拉低,表示其已收到一個8位數(shù)據(jù)。 /形參ackbit=1表示應答,0表示非應答,bit iic_waitack(void) SDA = 1;/釋放總線 somenop; SCL = 1; somenop; if(SDA) SCL = 0; iic_stop(); return 0; /無應答 else SCL = 0; return 1; /有應答,單片機等待來自24C02的應答信號,單片機,24C02,SCL在高電平期間,SDA被從設備拉為低電平表示應答,void iic_
15、sendbyte(unsigned char byt) unsigned char i; for(i=0;i8;i+) if(byt,單片機向從機發(fā)送一個字節(jié),每次程序的開始都默認SCL=0,因此程序最后要將SCL=0 SCL低電平期間才可以寫數(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;,單片機從從機讀取一個字節(jié),每次程序
16、的開始都默認SCL=0,因此程序最后要將SCL=0 SCL高電平期間才可以讀數(shù)據(jù),void wrbyte_24c02(unsigned char add,unsigned char dat) / Device Address 1010 000 R/W iic_start(); /啟動 iic_sendbyte(0 xa0); /發(fā)送從設備地址 iic_waitack(); /等待從設備的響應 iic_sendbyte(add); /發(fā)出芯片內(nèi)地址 iic_waitack(); /等待從設備的響應 iic_sendbyte(dat); /發(fā)送數(shù)據(jù) iic_waitack(); /等待從設備的響應
17、 iic_stop(); /停止,單片機向從機的add地址上,寫入char型的數(shù)dat,unsigned char rdbyte_24c02(unsigned char add) / Device Address 1100 000 R/W unsigned char da; iic_start(); /啟動 iic_sendbyte(0 xa0); /發(fā)送發(fā)送從設備地址寫操作 iic_waitack(); /等待從設備的響應 iic_sendbyte(add); /發(fā)送芯片內(nèi)地址 iic_waitack(); /等待從設備的響應 iic_start(); /啟動 iic_sendbyte(0
18、xa1); /發(fā)送發(fā)送從設備地址讀操作 iic_waitack(); /等待從設備的響應 da = iic_recbyte(); /獲取數(shù)據(jù) iic_ack(0); /可省去 iic_stop(); /停止 return da;,單片機從24C02的add地址上讀取一個數(shù),temp = rdbyte_24c02(0 x00); /從24C02的0 x00地址上讀取一個字節(jié)到temp中,主程序調用,wrbyte_24c02(0 x00,a0); /向24C02的0 x00地址寫入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);,單片機向24C02的ad
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 貴州城市職業(yè)學院《安全評價理論與技術》2023-2024學年第一學期期末試卷
- 貴陽職業(yè)技術學院《人機工程研究》2023-2024學年第一學期期末試卷
- 2025青海省建筑安全員《A證》考試題庫
- 生態(tài)保護修復和水土流失綜合治理項目可行性研究報告-生態(tài)修復需求迫切
- 貴陽人文科技學院《工科大學化學-有機化學基礎》2023-2024學年第一學期期末試卷
- 廣州中醫(yī)藥大學《物流信息系統(tǒng)》2023-2024學年第一學期期末試卷
- 2025陜西建筑安全員C證考試題庫
- 2025云南省建筑安全員《A證》考試題庫
- 廣州應用科技學院《鋼筋混凝土原理》2023-2024學年第一學期期末試卷
- 2025山西省建筑安全員C證(專職安全員)考試題庫
- 17J008擋土墻(重力式、衡重式、懸臂式)圖示圖集
- 2025年濟南鐵路局招聘筆試參考題庫含答案解析
- 2024至2030年中國大顆粒尿素行業(yè)投資前景及策略咨詢研究報告
- 《長方體和正方體》復習(教案)
- 超聲技術報告范文
- 思想道德與法治(同濟大學)知到智慧樹章節(jié)答案
- 小學語文閱讀理解24個萬能答題公式
- 湖南省懷化市2023-2024學年七年級上學期語文期末試卷(含答案)
- 《廊坊市綠色建筑專項規(guī)劃(2020-2025)》
- 2024-2030年中國濕巾行業(yè)發(fā)展趨勢及競爭策略分析報告
- 2023-2024學年全國小學二年級上語文人教版期末試卷(含答案解析)
評論
0/150
提交評論