亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? iic總線模擬程序.txt

?? 這是單片機C51的各種代碼包
?? TXT
字號:
IIC總線模擬程序 
發布時間:2005年2月19日 
點擊次數:2572 
 
詳細內容:IIC總線模擬程序

文件: PCF8563T.C 
1 /**————————————————————
2 〖說明〗I2C總線驅動程序(用兩個普通IO模擬I2C總線)
3 包括100Khz(T=10us)的標準模式(慢速模式)選擇,
4 和400Khz(T=2.5us)的快速模式選擇,
5 默認11.0592Mhz的晶振。

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 調用方式:void I2CStart(void) ﹫2001/07/0 4
31 函數說明:私有函數,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 調用方式:void I2CStop(void) ﹫2001/07/0 4
43 函數說明:私有函數,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 調用方式:bit I2CAck(void) ﹫2001/07/0 4
54 函數說明:私有函數,I2C專用,等待從器件接收方的應答
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;
第1 頁
文件: PCF8563T.C 2001-11-27, 18:39:20
64 }
65
66 /**--------------------------------------------------------------------------------
67 調用方式:void SendAck(void) ﹫2001/07/0 4
68 函數說明:私有函數,I2C專用,主器件為接收方,從器件為發送方時,應答信號。
69 ---------------------------------------------------------------------------------*/
70 void SendAck(void)
71 {
72 SDA=0; SomeNOP();
73 SCL=1; SomeNOP();
74 SCL=0;
75 }
76
77 /**--------------------------------------------------------------------------------
78 調用方式:void SendAck(void) ﹫2001/07/0 4
79 函數說明:私有函數,I2C專用,主器件為接收方,從器件為發送方時,非應答信號。
80 }**--------------------------------------------------------------------------------
81 void SendNotAck(void)
82 {
83 SDA=1; SomeNOP();
84 SCL=1; SomeNOP();
85 SCL=0;
86 }
87
88 /**--------------------------------------------------------------------------------
89 調用方式:void I2CSend(uchar ch) ﹫2001/07/0 5
90 函數說明:私有函數,I2C專用
91 ---------------------------------------------------------------------------------*/
92 void I2CSendByte(Byte ch)
93 {
94 uchar i=8;
95 while (i--)
96 {
97 SCL=0;_nop_();
98 SDA=(bit)(ch&0x80); ch<<=1; SomeNOP();
99 SCL=1; SomeNOP();
100 }
101 SCL=0;
102 }
103
104 /**--------------------------------------------------------------------------------
105 調用方式:uchar I2CReceive(void) ﹫2001/07/0 5
106 函數說明:私有函數,I2C專用
107 ---------------------------------------------------------------------------------*/
108 Byte I2CReceiveByte(void)
109 {
110 uchar i=8;
111 Byte ddata=0;
112 SDA=1;
113 while (i--)
114 {
115 ddata<<=1;
116 SCL=0;SomeNOP();
117 SCL=1;SomeNOP();
118 ddata|=SDA;
119 }
120 SCL=0;
121 return ddata;
122 }
123
124
125 //---------------------------------------------------------------------------
126 //開始PCF8563T驅動程序
第2 頁
文件: PCF8563T.C 2001-11-27, 18:39:20
127 /**--------------------------------------------------------------------------------
128 調用方式:void GetPCF8563(uchar firsttype,uchar count,uchar *buff) ﹫2001/08/0 7
129 函數說明:讀取時鐘芯片PCF8563的時間,設置要讀的第一個時間類型firsttype,并設置讀取
130 的字節數,則會一次把時間讀取到buff中。順序是:
131 0x02:秒/0x03:分/0x04:小時/0x05:日/0x06:星期/0x07:月(世紀)/0x08:年
132 ---------------------------------------------------------------------------------*/
133 void GetPCF8563(uchar firsttype,uchar count,uchar *buff)
134 {
135 uchar i;
136 I2CStart();
137 I2CSendByte(0xA2);
138 WaitAck();
139 I2CSendByte(firsttype);
140 WaitAck();
141
142 I2CStart();
143 I2CSendByte(0xA3);
144 WaitAck();
145
146 for (i=0;i 147 {
148 buff[i]=I2CReceiveByte();
149 if (i!=count-1) SendAck();//除最后一個字節外,其他都要從MASTER發應答。
150 }
151
152 SendNotAck();
153 I2CStop();
154 }
155
156
157 /**--------------------------------------------------------------------------------
158 調用方式:void SetPCF8563(uchar timetype,uchar value) ﹫2001/08/0 7
159 函數說明:調整時鐘。timetype是要改的時間類型,value是新設置的時間值(BCD格式)。
160 0x02:秒/0x03:分/0x04:小時/0x05:日/0x06:星期/0x07:月(世紀)/0x08:年
161 ---------------------------------------------------------------------------------*/
162 void SetPCF8563(uchar timetype,uchar value)
163 {
164 I2CStart();
165 I2CSendByte(0xA2);
166 WaitAck();
167 I2CSendByte(timetype);
168 WaitAck();
169 I2CSendByte(value);
170 WaitAck();
171 I2CStop();
172 }
173
174 /**--------------------------------------------------------------------------------
175 調用方式:void SetAlarmHour(uchar count) ﹫2001/08/0 7
176 函數說明:設置報警鬧鐘在一天的第count點報警。例如:count=23,則在晚上11點報警。
177 ---------------------------------------------------------------------------------*/
178 void SetAlarm(uchar alarmtype,uchar count)
179 {
180 SetPCF8563(0x01,0x02);
181 SetPCF8563(alarmtype,count);
182 }
183
184 /**--------------------------------------------------------------------------------
185 調用方式:void CleanAlarm(void) ﹫2001/08/0 7
186 函數說明:清除所有報警設置。
187 ---------------------------------------------------------------------------------*/
188 void CleanAlarm(void)
189 {
第3 頁
文件: PCF8563T.C 2001-11-27, 18:39:20
190 SetPCF8563(0x01,0x00);
191 SetPCF8563(0x09,0x80);
192 SetPCF8563(0x0A,0x80);
193 SetPCF8563(0x0B,0x80);
194 SetPCF8563(0x0C,0x80);
195 // SetPCF8563(0x0D,0x00);
196 // SetPCF8563(0x0E,0x03);
197 }
198
199
200 /*--------------------------------------------------------------------------------
201 調用方式:uchar read1380(uchar command )
202 函數說明:read1380()返回當前時間, command指要返回的時間類型。
203 秒:81H 分鐘:83H 小時:85H 日期:87H 星期:89H 星期幾:8BH 年:8D H
204 ---------------------------------------------------------------------------------*/
205 uchar read1380 (uchar command)
206 {
207 uchar time;
208 GetPCF8563(command,1,&time);
209 return time;
210 }
211
212 /*--------------------------------------------------------------------------------
213 調用方式:void write1380(uchar command ,uchar time )
214 函數說明:write1380()往HT1380寫命令和數據,command是命令字, time是后寫入的數據
215 ---------------------------------------------------------------------------------*/
216 void write1380(uchar command ,uchar time)
217 {
218 SetPCF8563(command,time);
219 }
220
221
222 /*--------------------------------------------------------------------------------
223 調用方式:void time_display(uchar x0,uchar y0 )
224 函數說明:time_display()在指定的x0,y0坐標,以00:00:00格式顯示當前時間。
225 ---------------------------------------------------------------------------------*/
226 //uchar time[]="00:11:11";
227
228 void time_display(uchar x0,uchar y0,bit type) //液晶時間顯示
229 {
230 uchar time[]="00:00:00";
231 uchar con[3];
232 uchar time_type;
233 GetPCF8563(0x02,3,con);
234
235 time[0]=(con[2]>>4)+'0';
236 time[1]=(con[2]&0x0f)+'0';
237 time[3]=(con[1]>>4)+'0';
238 time[4]=(con[1]&0x0f)+'0';
239 time[6]=(con[0]>>4)+'0';
240 time[7]=(con[0]&0x0f)+'0';
241
242 time[8]=0;
243 if(type==1)
244 {
245 time_type=0xff;
246 }
247 else
248 {
249 time_type=0;
250 }
251 dipchar0(x0,y0,F57,1,time_type,time);
252 }
 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品一区二区三区在线播放| 一区二区三区免费看视频| 天天亚洲美女在线视频| 在线播放91灌醉迷j高跟美女| 亚洲一区二区不卡免费| 欧美精选一区二区| 精彩视频一区二区| 国产精品情趣视频| 欧美午夜精品免费| 久久精品免费看| 国产视频在线观看一区二区三区 | 欧美体内she精视频| 午夜激情综合网| 精品成人一区二区三区四区| 丁香婷婷综合色啪| 亚洲夂夂婷婷色拍ww47| 欧美一区二区视频免费观看| 国产福利一区二区| 夜夜夜精品看看| 精品国产伦一区二区三区观看体验 | 日韩成人精品在线| 国产日韩欧美制服另类| 99在线热播精品免费| 亚洲一二三级电影| 2020日本不卡一区二区视频| 北岛玲一区二区三区四区| 亚洲动漫第一页| 精品久久久久久久久久久久包黑料 | 91精品国产91热久久久做人人| 国产一区二区三区电影在线观看 | 亚洲国产精品av| 欧美日韩在线三级| 国产精品一级二级三级| 亚洲国产一区二区三区青草影视| 日韩一区二区三区电影在线观看| 成人一区二区三区| 免费成人av资源网| 亚洲精品国产第一综合99久久| 欧美α欧美αv大片| 91免费小视频| 国产一区二区毛片| 石原莉奈一区二区三区在线观看| 久久精品亚洲精品国产欧美| 欧美日韩激情一区二区三区| 岛国精品一区二区| 久久福利视频一区二区| 亚洲一区二区三区不卡国产欧美| 国产欧美日韩在线观看| 日韩欧美在线123| 欧美色图天堂网| 成人性视频免费网站| 久久国产三级精品| 丝袜美腿高跟呻吟高潮一区| 亚洲视频香蕉人妖| 中文字幕精品三区| 久久久99精品久久| 欧美大片国产精品| 欧美一二三四在线| 欧美日韩精品免费| 欧美在线看片a免费观看| 成人avav在线| 成人激情午夜影院| 国产盗摄视频一区二区三区| 美美哒免费高清在线观看视频一区二区 | 91在线无精精品入口| 极品少妇一区二区| 美国av一区二区| 欧美aⅴ一区二区三区视频| 亚洲与欧洲av电影| 一区二区三区在线观看国产| 1000精品久久久久久久久| 中文字幕不卡三区| 欧美国产禁国产网站cc| 国产午夜精品久久久久久免费视| 精品国产污网站| 精品欧美久久久| 久久久久久久久久久久电影| 欧美精品一区视频| 国产午夜亚洲精品不卡| 中文字幕av不卡| 国产日韩av一区二区| 国产女人18毛片水真多成人如厕| 久久青草欧美一区二区三区| 久久精品亚洲乱码伦伦中文| 亚洲国产高清在线| 亚洲免费资源在线播放| 亚洲精品久久久久久国产精华液| 亚洲一区二区三区影院| 日韩黄色在线观看| 精品一区二区三区在线视频| 久久69国产一区二区蜜臀| 国产自产视频一区二区三区| 国产精品1024| 97国产精品videossex| 色综合久久66| 3d动漫精品啪啪一区二区竹菊| 91精品国产一区二区三区蜜臀| 精品国产露脸精彩对白| 欧美激情综合网| 玉足女爽爽91| 日韩精品1区2区3区| 国产最新精品免费| 91一区一区三区| 69精品人人人人| 欧美国产禁国产网站cc| 亚洲成人综合网站| 国内精品伊人久久久久影院对白| 成人高清视频免费观看| 欧美日韩视频在线一区二区| 日韩精品一区二区三区swag| 国产三级精品三级| 亚洲福利一二三区| 国产老肥熟一区二区三区| 色综合久久中文综合久久97 | 久久国产婷婷国产香蕉| www.欧美日韩| 91麻豆精品国产91久久久久 | 亚洲三级免费观看| 婷婷国产v国产偷v亚洲高清| 国精产品一区一区三区mba视频| jlzzjlzz国产精品久久| 欧美精品色一区二区三区| 国产免费成人在线视频| 午夜私人影院久久久久| 国产高清亚洲一区| 欧美精品 国产精品| 欧美激情综合五月色丁香小说| 亚洲国产一区二区三区| 国产一区二区三区在线看麻豆| 91美女蜜桃在线| 久久精品欧美一区二区三区不卡| 亚洲美女电影在线| 国产91综合网| 日韩网站在线看片你懂的| 亚洲欧洲制服丝袜| 国产91对白在线观看九色| 欧美一区二区三区公司| 亚洲欧洲综合另类| 国产成人8x视频一区二区| 日韩一本二本av| 亚洲一二三专区| av网站一区二区三区| 国产三级欧美三级日产三级99| 日韩高清欧美激情| 在线免费观看日本一区| 国产精品免费网站在线观看| 久久国产精品99久久久久久老狼 | 精品一区二区三区免费观看| 欧美女孩性生活视频| 亚洲欧洲三级电影| 粉嫩久久99精品久久久久久夜| 日韩三级精品电影久久久| 亚洲一区二区精品视频| 在线观看免费亚洲| 亚洲免费av高清| 91老师片黄在线观看| 17c精品麻豆一区二区免费| 成人在线视频一区| 中文乱码免费一区二区| 粉嫩av亚洲一区二区图片| 欧美va亚洲va| 美女任你摸久久| 精品国产sm最大网站免费看| 蜜臀精品久久久久久蜜臀| 日韩亚洲欧美在线观看| 麻豆一区二区三| 日韩亚洲欧美综合| 精品一区二区三区香蕉蜜桃 | 欧美喷潮久久久xxxxx| 亚洲高清一区二区三区| 欧美日韩一区二区三区四区五区| 亚洲午夜激情av| 欧美日韩精品一二三区| 日韩高清不卡一区二区| 日韩一区二区三区在线观看| 男人的天堂久久精品| 精品国内二区三区| 国产九九视频一区二区三区| 久久久久国产免费免费| 成人av电影在线播放| 亚洲同性gay激情无套| 色丁香久综合在线久综合在线观看| 亚洲青青青在线视频| 欧美婷婷六月丁香综合色| 五月天亚洲精品| 欧美一区二区福利在线| 国产呦萝稀缺另类资源| 日本一二三四高清不卡| 日本道免费精品一区二区三区| 亚洲一区二区欧美| 日韩欧美国产麻豆| 成人午夜在线播放| 亚洲午夜久久久久中文字幕久| 日韩视频在线你懂得| 国产精品一卡二| 亚洲一区中文日韩| 欧美成人aa大片| thepron国产精品| 午夜视频在线观看一区二区三区| 精品国产乱码久久久久久免费 |