📄 24c04.lst
字号:
C51 COMPILER V7.06 24C04 02/01/2009 15:47:26 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE 24C04
OBJECT MODULE PLACED IN 24C04.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE 24C04.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include<reg52.h>
2 #define uchar unsigned char
3
4 sbit scl=P3^0;
5 sbit sda=P3^1;
6
7 void delay()
8 {
9 1 ;;;
10 1 }
11 void delay1(uchar x)
12 {
13 1 int k;
14 1 for(k=250;k>0;k--)
15 1 for(;x>0;x--);
16 1 }
17
18 void start()
19 {
20 1 sda=1;
21 1 scl=1;
22 1 delay();
23 1 sda=0;
24 1 delay();
25 1 }
26
27 void stop()
28 {
29 1 sda=0;
30 1 scl=1;
31 1 delay();
32 1 sda=1;
33 1 delay();
34 1 }
35
36 void init()
37 {
38 1 scl=1;
39 1 sda=1;
40 1 delay();
41 1 }
42
43 void respond()
44 {
45 1 uchar i;
46 1 scl=1;
47 1 delay();
48 1 while((sda==1)&&(i<250))
49 1 i++;
50 1 scl=0;
51 1 delay();
52 1 sda=1;//
53 1 }
54
55 void write_byte(uchar date)
C51 COMPILER V7.06 24C04 02/01/2009 15:47:26 PAGE 2
56 {
57 1 uchar i,temp;
58 1 temp=date;
59 1 for(i=0;i<8;i++)
60 1 {
61 2 scl=0;
62 2 delay();
63 2 temp=temp<<1;
64 2 sda=CY;
65 2 delay();
66 2 scl=1;
67 2 delay();
68 2 }
69 1 scl=0;
70 1 delay();
71 1 // sda=1;
72 1 delay();
73 1 }
74
75 uchar read_byte()
76 {
77 1 uchar i,j,k;
78 1 // scl=0;
79 1 // delay();
80 1 // sda=1;
81 1 delay();
82 1 for(i=0;i<8;i++)
83 1 {
84 2 scl=1;
85 2 delay();
86 2 j=sda;
87 2 k=(k<<1)|j;
88 2 scl=0;
89 2 delay();
90 2 }
91 1 return k;
92 1
93 1 }
94
95 void write_date(uchar address,uchar date)
96 {
97 1 start();
98 1 write_byte(0xa0);
99 1 respond();
100 1 write_byte(address);
101 1 respond();
102 1 write_byte(date);
103 1 respond();
104 1 stop();
105 1 }
106
107 uchar read_date(uchar address)
108 {
109 1 uchar k;
110 1 start();
111 1 write_byte(0xa0);
112 1 respond();
113 1 write_byte(address);
114 1 respond();
115 1 start();
116 1 write_byte(0xa1);
117 1 respond();
C51 COMPILER V7.06 24C04 02/01/2009 15:47:26 PAGE 3
118 1 k=read_byte();
119 1 stop();
120 1 return k;
121 1 }
122
123 void main()
124 {
125 1 init();
126 1 write_date(3,0x99);
127 1 delay1(100);
128 1 P0=read_date(3);
129 1 while(1);
130 1 }
131
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 232 ----
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 + -