?? memory clock?
字號:
C51 COMPILER V9.00 24C02 10/29/2012 15:18:33 PAGE 1
C51 COMPILER V9.00, COMPILATION OF MODULE 24C02
OBJECT MODULE PLACED IN 24c02.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 24c02.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include<reg52.h>
2 #include "24c02.h"
3 #include "MacroAndConst.h"
4 #include "Lcd.h"
5 #include "Assistance.h"
6
7 void delay0()
8 { ;; }
9
10 void start() //開始信號
11 {
12 1 sda=1;
13 1 delay0();
14 1 scl=1;
15 1 delay0();
16 1 sda=0;
17 1 delay0();
18 1 }
19 void stop() //停止
20 {
21 1 sda=0;
22 1 delay0();
23 1 scl=1;
24 1 delay0();
25 1 sda=1;
26 1 delay0();
27 1 }
28
29 void respons() //應答
30 {
31 1 uchar i;
32 1 scl=1;
33 1 delay0();
34 1 while((sda==1)&&(i<250))i++;
35 1 scl=0;
36 1 delay0();
37 1 }
38 void init_24c02()//IIC初始化函數
39 {
40 1 sda=1;
41 1 delay0();
42 1 scl=1;
43 1 delay0();
44 1 }
45
46 void write_byte(uchar date)//寫一個字節函數
47 {
48 1 uchar i,temp;
49 1 temp=date;
50 1 for(i=0;i<8;i++)
51 1 {
52 2 temp=temp<<1;
53 2 scl=0;
54 2 delay0();
55 2 sda=CY;
C51 COMPILER V9.00 24C02 10/29/2012 15:18:33 PAGE 2
56 2 delay0();
57 2 scl=1;
58 2 delay0();
59 2 }
60 1 scl=0;
61 1 delay0();
62 1 sda=1;
63 1 delay0();
64 1 }
65
66 //void write_longbyte(uint date)//寫一個字節函數
67 //{
68 // uint i,temp;
69 // temp=date;
70 // for(i=0;i<16;i++)
71 // {
72 // temp=temp<<1;
73 // scl=0;
74 // delay0();
75 // sda=CY;
76 // delay0();
77 // scl=1;
78 // delay0();
79 // }
80 // scl=0;
81 // delay0();
82 // sda=1;
83 // delay0();
84 //}
85
86
87 uchar read_byte()//讀一個字節函數
88 {
89 1 uchar i,k;
90 1 scl=0;
91 1 delay0();
92 1 sda=1;
93 1 delay0();
94 1 for(i=0;i<8;i++)
95 1 {
96 2 scl=1;
97 2 delay0();
98 2 k=(k<<1)|sda;
99 2 scl=0;
100 2 delay0();
101 2 }
102 1 return k;
103 1 }
104
105 //uchar read_longbyte()//讀一個字節函數
106 //{
107 // uchar i,k;
108 // scl=0;
109 // delay0();
110 // sda=1;
111 // delay0();
112 // for(i=0;i<16;i++)
113 // {
114 // scl=1;
115 // delay0();
116 // k=(k<<1)|sda;
117 // scl=0;
C51 COMPILER V9.00 24C02 10/29/2012 15:18:33 PAGE 3
118 // delay0();
119 // }
120 // return k;
121 //}
122
123 void write_addbyte(uchar address,uchar date)//指定地址寫一個字節
124 {
125 1 start();
126 1 write_byte(0xa0);
127 1 respons();
128 1 write_byte(address);
129 1 respons();
130 1 write_byte(date);
131 1 respons();
132 1 stop();
133 1 }
134
135 //void write_addpage(uchar address, uint date)//指定地址寫一個字節
136 //{
137 // start();
138 // write_byte(0xa0);
139 // respons();
140 // write_byte(address);
141 // respons();
142 // write_longbyte(date);
143 // respons();
144 // stop();
145 //}
146
147
148 char read_add(uchar address)//指定地址讀一個字節
149 {
150 1 uchar date;
151 1 start();
152 1 write_byte(0xa0);
153 1 respons();
154 1 write_byte(address);
155 1 respons();
156 1 start();
157 1 write_byte(0xa1);
158 1 respons();
159 1 date=read_byte();
160 1 stop();
161 1 return date;
162 1 }
163
164 //uint read_addContinuous(uchar address)//指定地址讀一個字節
165 //{
166 // uint date;
167 // start();
168 // write_byte(0xa0);
169 // respons();
170 // write_byte(address);
171 // respons();
172 // start();
173 // write_byte(0xa1);
174 // respons();
175 // date=read_longbyte();
176 // stop();
177 // return date;
178 //}
C51 COMPILER V9.00 24C02 10/29/2012 15:18:33 PAGE 4
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 190 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 1
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -