資料介紹
1 /**————————————————————
2 〖說明〗I2C總線驅(qū)動程序(用兩個普通IO模擬I2C總線)
3 包括100Khz(T=10us)的標(biāo)準(zhǔn)模式(慢速模式)選擇,
4 和400Khz(T=2.5us)的快速模式選擇,
5 默認(rèn)11.0592Mhz的晶振。
6 〖文件〗PCF8563T.C ﹫2001/11/2 7
7 〖作者〗龍嘯九天 c51@yeah.net http://www.c51bbs.co /
8 〖修改〗修改建議請到論壇公布 http://www.c51bbs.co m
9 〖版本〗V1.00A Build 0803
10 —————————————————————*/
11
12 #ifndef SDA
13 #define SDA P0_0
14 #define SCL P0_1
15 #endif
16
17 extern uchar SystemError;
18
19 #define uchar unsigned char
20 #define uint unsigned int
21 #define Byte unsigned char
22 #define Word unsigned int
23 #define bool bit
24 #define true 1
25 #define false 0
26
27 #define SomeNOP(); _nop_();_nop_();_nop_();_nop_();
28
29 /**--------------------------------------------------------------------------------
30 調(diào)用方式:void I2CStart(void) ﹫2001/07/0 4
31 函數(shù)說明:私有函數(shù),I2C專用
32 ---------------------------------------------------------------------------------*/
33 void I2CStart(void)
34 {
35 EA=0;
36 SDA=1; SCL=1; SomeNOP();//INI
37 SDA=0; SomeNOP(); //START
38 SCL=0;
39 }
40
41 /**--------------------------------------------------------------------------------
42 調(diào)用方式:void I2CStop(void) ﹫2001/07/0 4
43 函數(shù)說明:私有函數(shù),I2C專用
44 ---------------------------------------------------------------------------------*/
45 void I2CStop(void)
46 {
47 SCL=0; SDA=0; SomeNOP(); //INI
48 SCL=1; SomeNOP(); SDA=1; //STOP
49 EA=1;
50 }
51
52 /**--------------------------------------------------------------------------------
53 調(diào)用方式:bit I2CAck(void) ﹫2001/07/0 4
54 函數(shù)說明:私有函數(shù),I2C專用,等待從器件接收方的應(yīng)答
55 ---------------------------------------------------------------------------------*/
56 bool WaitAck(void)
57 {
58 uchar errtime=255;//因故障接收方無ACK,超時值為255。
59 SDA=1;SomeNOP();
60 SCL=1;SomeNOP();
61 while(SDA) {errtime--; if (!errtime) {I2CStop();SystemError=0x11;return false;}}
62 SCL=0;
63 return true;
2 〖說明〗I2C總線驅(qū)動程序(用兩個普通IO模擬I2C總線)
3 包括100Khz(T=10us)的標(biāo)準(zhǔn)模式(慢速模式)選擇,
4 和400Khz(T=2.5us)的快速模式選擇,
5 默認(rèn)11.0592Mhz的晶振。
6 〖文件〗PCF8563T.C ﹫2001/11/2 7
7 〖作者〗龍嘯九天 c51@yeah.net http://www.c51bbs.co /
8 〖修改〗修改建議請到論壇公布 http://www.c51bbs.co m
9 〖版本〗V1.00A Build 0803
10 —————————————————————*/
11
12 #ifndef SDA
13 #define SDA P0_0
14 #define SCL P0_1
15 #endif
16
17 extern uchar SystemError;
18
19 #define uchar unsigned char
20 #define uint unsigned int
21 #define Byte unsigned char
22 #define Word unsigned int
23 #define bool bit
24 #define true 1
25 #define false 0
26
27 #define SomeNOP(); _nop_();_nop_();_nop_();_nop_();
28
29 /**--------------------------------------------------------------------------------
30 調(diào)用方式:void I2CStart(void) ﹫2001/07/0 4
31 函數(shù)說明:私有函數(shù),I2C專用
32 ---------------------------------------------------------------------------------*/
33 void I2CStart(void)
34 {
35 EA=0;
36 SDA=1; SCL=1; SomeNOP();//INI
37 SDA=0; SomeNOP(); //START
38 SCL=0;
39 }
40
41 /**--------------------------------------------------------------------------------
42 調(diào)用方式:void I2CStop(void) ﹫2001/07/0 4
43 函數(shù)說明:私有函數(shù),I2C專用
44 ---------------------------------------------------------------------------------*/
45 void I2CStop(void)
46 {
47 SCL=0; SDA=0; SomeNOP(); //INI
48 SCL=1; SomeNOP(); SDA=1; //STOP
49 EA=1;
50 }
51
52 /**--------------------------------------------------------------------------------
53 調(diào)用方式:bit I2CAck(void) ﹫2001/07/0 4
54 函數(shù)說明:私有函數(shù),I2C專用,等待從器件接收方的應(yīng)答
55 ---------------------------------------------------------------------------------*/
56 bool WaitAck(void)
57 {
58 uchar errtime=255;//因故障接收方無ACK,超時值為255。
59 SDA=1;SomeNOP();
60 SCL=1;SomeNOP();
61 while(SDA) {errtime--; if (!errtime) {I2CStop();SystemError=0x11;return false;}}
62 SCL=0;
63 return true;
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 嵌入式內(nèi)核及驅(qū)動開發(fā)-09IIC子系統(tǒng)框架使用(I2C協(xié)議和時序,I2C驅(qū)動框架,I2C從設(shè)備驅(qū)動開發(fā),MPU6050硬件連接
- 51單片機——I2C總線驅(qū)動程序
- 51單片機的I2C總線驅(qū)動程序免費下載
- AT24C02驅(qū)動程序I2C串行總線的組成及工作原理
- 使用51單片機模擬I2C總線的驅(qū)動程序免費下載
- 分析I2C總線云臺電機控制設(shè)計 1次下載
- I2C總線的51單片機通用驅(qū)動程序 28次下載
- I2C總線驅(qū)動程序 15次下載
- 9.2&9.3 鍵盤中斷模塊編程實例 15次下載
- 基于51的I2c總線 34次下載
- 高速公路視頻監(jiān)控下RX-8025實時時鐘系統(tǒng)研究與設(shè)計 17次下載
- 基于I2C總線的EEPROM驅(qū)動程序
- I2C總線規(guī)范與I2C器件C51讀寫程序
- I2C總線器件的C51讀寫程序
- I2C匯編程序
- I2C總線協(xié)議的工作原理和尋址格式 1895次閱讀
- Linux I2C驅(qū)動入門知識科普 1734次閱讀
- i2c總線用來做什么_i2c總線數(shù)據(jù)傳輸過程 7303次閱讀
- I2C總線驅(qū)動的C語言源程序詳細(xì)說明 5261次閱讀
- 基于MCS-51單片機I2C總線接口電路的設(shè)計 3457次閱讀
- I2C總線的工作原理解析 6717次閱讀
- I2C總線的特點與構(gòu)成詳解 1w次閱讀
- 80C51單片機模擬I2C總線的主機程序分享 3482次閱讀
- 基于嵌入式Linux下的I2C設(shè)備驅(qū)動的總體思路與框架設(shè)計 3771次閱讀
- 詳細(xì)講解RT-Thread I2C設(shè)備驅(qū)動框架及相關(guān)函數(shù) 2w次閱讀
- I2C總線的特點、控制技術(shù)與傳輸分析 1w次閱讀
- i2c總線相關(guān)知識 3568次閱讀
- 《振南電子STM32視頻教程》第八講:I2C總線 1119次閱讀
- 基于FPGA的I2C SLAVE模式總線的設(shè)計方案 1.3w次閱讀
- I2C總線鍵盤電路以及驅(qū)動程序設(shè)計 7029次閱讀
下載排行
本周
- 1DH1766系列·三路可編程直流電源技術(shù)手冊
- 1.93 MB | 3次下載 | 免費
- 2智能蓄電池充放電測試儀 蓄電池放電檢測儀專業(yè)防護(hù)功能
- 0.13 MB | 2次下載 | 免費
- 3GD選型手冊
- 6.92 MB | 2次下載 | 免費
- 4FP136 高端電流檢測IC芯片說明書
- 0.62 MB | 1次下載 | 免費
- 533A66-B1 rk3399開發(fā)板規(guī)格書
- 1.15 MB | 1次下載 | 1 積分
- 6FP137 高端電流檢測IC芯片說明書
- 0.68 MB | 1次下載 | 免費
- 7HAL9303線性霍爾效應(yīng)傳感器技術(shù)手冊
- 0.70 MB | 1次下載 | 免費
- 8HC88L051F4低功耗芯片規(guī)格書
- 4.76 MB | 1次下載 | 免費
本月
- 1常用電子元器件使用手冊
- 2.40 MB | 34次下載 | 免費
- 2高功率密度碳化硅MOSFET軟開關(guān)三相逆變器損耗分析
- 2.27 MB | 33次下載 | 10 積分
- 3MS1826 HDMI 多功能視頻處理器數(shù)據(jù)手冊
- 4.51 MB | 8次下載 | 免費
- 4USB拓展塢PCB圖資料
- 0.57 MB | 8次下載 | 免費
- 5經(jīng)典1000W純正弦波逆變器原理圖資料
- 0.08 MB | 8次下載 | 10 積分
- 6TYPEC電路原理圖資料
- 0.14 MB | 7次下載 | 免費
- 7SR520-SR5100肖特基二極管規(guī)格書
- 0.11 MB | 4次下載 | 免費
- 8DH1766系列·三路可編程直流電源技術(shù)手冊
- 1.93 MB | 3次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935134次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191424次下載 | 10 積分
- 5十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183352次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81600次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費下載
- 0.02 MB | 73818次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App






創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論