下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、/=頭文件加載=#include /加載52系列單片機頭文件/=端口聲明=sbit CLK=P36; /74hc574時鐘信號線sbit G=P24; /74hc574使能sbit IIC_SDA=P26; /聲明IIC總線的數(shù)據(jù)線接在單片機的P2.5端口。sbit IIC_SCL=P25; /聲明IIC總線的時鐘線接在單片機的P2.7端口。unsigned char tabl=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x0BF,0x8C;/0,1,2,3,4,5,6,7,8,9,-,P/=函數(shù)聲明=void display(unsi
2、gned char aa);void delay(unsigned int t);void delay_IIC(void);void IIC_Init(void);void IIC_start(void);void IIC_stop(void);bit IIC_Tack(void);void IIC_single_byte_write(unsigned char Daddr,unsigned char Waddr,unsigned char Data);unsigned char IIC_single_byte_read(unsigned char Daddr,unsigned char Wa
3、ddr);void IIC_write_byte(unsigned char Data);unsigned char IIC_read_byte(void);/=主函數(shù)=void main() /主函數(shù)unsigned char Data=2,addr=0x01; /-系統(tǒng)初始化- IIC_Init();/初始化IIC總線。 /P1=0x7f;/LED8先亮。 while(1) /死循環(huán) IIC_single_byte_write(0xa0,0x02,Data);/保存LED的狀態(tài) delay(50000);/延時約0.5S Data=IIC_single_byte_read(0xa0,0x0
4、2);/讀出LED的狀態(tài)if(Data10)Data+;elseData=0;display(Data);delay(50000);/延時約0.5S /=功能子函數(shù)=void delay(unsigned int t)/延時函數(shù) while(t)t-; /延時循環(huán)計數(shù)/-void delay_IIC(void) /IIC總線限速延時函數(shù)。/該函數(shù)是空函數(shù),延時4個機器周期。;/-void IIC_Init(void)/IIC總線初始化函數(shù) IIC_SDA=1;/釋放IIC總線的數(shù)據(jù)線。 IIC_SCL=1;/釋放IIC總線的時鐘線。/-void IIC_start(void)/IIC總線產(chǎn)生起
5、始信號函數(shù) IIC_SDA=1;/拉高數(shù)據(jù)線 IIC_SCL=1;/拉高時鐘線 delay_IIC(); IIC_SDA=0;/在時鐘線為高電平時,拉低數(shù)據(jù)線,產(chǎn)生起始信號。 delay_IIC(); IIC_SCL=0;/拉低時鐘線/-void IIC_stop(void) /IIC總線產(chǎn)生停止信號函數(shù) IIC_SDA=0;/拉低數(shù)據(jù)線 delay_IIC(); IIC_SCL=1;/拉高時鐘線。 delay_IIC(); IIC_SDA=1;/時鐘時線為高電平時,拉高數(shù)據(jù)線,產(chǎn)生停止信號。 delay_IIC();/-bit IIC_Tack(void)/接收應(yīng)答信號函數(shù) bit ack;
6、/定義一個位變量,來暫存應(yīng)答狀態(tài)。 IIC_SDA=1;/釋放數(shù)據(jù)總線,準備接收應(yīng)答信號。 delay_IIC(); IIC_SCL=1;/拉高時鐘線。 delay_IIC(); ack=IIC_SDA;/讀取應(yīng)答信號的狀態(tài)。 delay_IIC(); IIC_SCL=0;/拉低時鐘線。 delay_IIC(); return ack;/返回應(yīng)答信號的狀態(tài),0表示應(yīng)答,1表示非應(yīng)答。/-void IIC_write_byte(unsigned char Data)/向IIC總線寫入一個字節(jié)的數(shù)據(jù)函數(shù) unsigned char i; for(i=0;i8;i+)/有8位數(shù)據(jù) IIC_SDA=D
7、ata&0x80;/寫最高位的數(shù)據(jù) delay_IIC(); IIC_SCL=1; /拉高時鐘線,將數(shù)寫入到設(shè)備中。 delay_IIC(); IIC_SCL=0;/拉低時鐘線,允許改變數(shù)據(jù)線的狀態(tài) delay_IIC(); Data=Data1;/數(shù)據(jù)左移一位,把次高位放在最高位,為寫入次高位做準備 /-unsigned char IIC_read_byte()/從IIC總線讀取一個字節(jié)的數(shù)據(jù)函數(shù) unsigned char i; unsigned char Data; /定義一個緩沖寄存器。 for(i=0;i8;i+)/有8位數(shù)據(jù) IIC_SCL=1;/拉高時鐘線,為讀取下一位數(shù)據(jù)做準備
8、。 delay_IIC(); Data=Data1;/將緩沖字節(jié)的數(shù)據(jù)左移一位,準備讀取數(shù)據(jù)。 delay_IIC(); if(IIC_SDA)/如果數(shù)據(jù)線為高平電平。 Data=Data|0x1;/則給緩沖字節(jié)的最低位寫1。 IIC_SCL=0;/拉低時鐘線,為讀取下一位數(shù)據(jù)做準備。 delay_IIC(); return Data;/返回讀取的一個字節(jié)數(shù)據(jù)。/-void IIC_single_byte_write(unsigned char Daddr,unsigned char Waddr,unsigned char Data)/向任意地址寫入一個字節(jié)數(shù)據(jù)函數(shù) IIC_start();/
9、產(chǎn)生起始信號 IIC_write_byte(Daddr);/寫入設(shè)備地址(寫) IIC_Tack();/等待設(shè)備的應(yīng)答 IIC_write_byte(Waddr);/寫入要操作的單元地址。 IIC_Tack();/等待設(shè)備的應(yīng)答。 IIC_write_byte(Data);/寫入數(shù)據(jù)。 IIC_Tack();/等待設(shè)備的應(yīng)答。 IIC_stop();/產(chǎn)生停止符號。/-unsigned char IIC_single_byte_read(unsigned char Daddr,unsigned char Waddr)/從任意地址讀取一個字節(jié)數(shù)據(jù)函數(shù) unsigned char Data;/定義一個緩沖寄存器。 IIC_start();/產(chǎn)生起始信號 IIC_write_byte(Daddr);/寫入設(shè)備地址(寫) IIC_Tack();/等待設(shè)備的應(yīng)答 IIC_write_byte(Waddr);/寫入要操作的單元地址。 IIC_Tack();/等待設(shè)備的應(yīng)答。 IIC_start();/產(chǎn)生起始信號 IIC_write_byte(Daddr+1);/寫入設(shè)備地址(讀)。 IIC_Tack();/等待設(shè)備的應(yīng)答。 Data=IIC_read_byte();/寫入數(shù)據(jù)。 IIC_sto
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 衛(wèi)生系統(tǒng)平安建設(shè)活動方案(3篇)
- 質(zhì)控小組職責模版(2篇)
- 施工人員管理制度(3篇)
- 二零二五年度建筑工程施工服務(wù)外包合同2篇
- 課題申報書:大語言模型驅(qū)動三語教學的能動性分析和應(yīng)用路徑研究
- 裝飾圖案課程設(shè)計理念
- 二零二五年度新能源設(shè)備技術(shù)出口服務(wù)協(xié)議3篇
- 2024年規(guī)范化勞務(wù)輸出協(xié)議模板
- 材料員崗位的具體職責說明范文(2篇)
- 課題申報書:大學生數(shù)字化生存境況及優(yōu)化路向研究
- 中東及非洲注塑成型模具行業(yè)現(xiàn)狀及發(fā)展機遇分析2024-2030
- JGJ276-2012 建筑施工起重吊裝安全技術(shù)規(guī)范 非正式版
- QCT1067.4-2023汽車電線束和電器設(shè)備用連接器第4部分:設(shè)備連接器(插座)的型式和尺寸
- VDA6.3-2023過程審核檢查表
- 一年級數(shù)學下冊平面圖形數(shù)個數(shù)問題詳解+練習
- 錦綸纖維研究報告-中國錦綸纖維行業(yè)競爭格局分析及發(fā)展前景研究報告2020-2023年
- 浙江省舟山市2023-2024學年高二上學期1月期末檢測地理試題(解析版)
- 國家電網(wǎng)有限公司架空輸電線路帶電作業(yè)工作管理規(guī)定
- 計算機安全弱口令風險
- 《寫字樓招商方案》課件
- 文旅劇本殺項目策劃方案
評論
0/150
提交評論