📄 24c02.lst
字号:
C51 COMPILER V7.06 24C02 12/07/2006 03:10:11 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE 24C02
OBJECT MODULE PLACED IN 24c02.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 24c02.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include "24c02.h"
2
3 void x24c02_delay(char x)
4 {
5 1 int i;
6 1 for(i=0;i<x;i++);
7 1 }
8
9 void x24c02_start()
10 {
11 1 SDA = 1;
12 1 SCL = 1;
13 1 SDA = 0;
14 1 SCL = 0;
15 1 }
16
17 void x24c02_stop()
18 {
19 1 SDA=0;
20 1 SCL=1;
21 1 SDA=1;
22 1 }
23 void x24c02_writex(char j)
24 {
25 1 char i,temp;
26 1 temp=j;
27 1 for (i=0;i<8;i++)
28 1 {
29 2 temp=temp<<1;
30 2 SCL=0;
31 2 SDA=CY;
32 2 SCL=1;
33 2 }
34 1 SCL=0;
35 1 SDA=1;
36 1 }
37 char x24c02_readx()
38 {
39 1 char i,j,k=0;
40 1 SCL=0;
41 1 SDA=1;
42 1 for (i=0;i<8;i++)
43 1 {
44 2 SCL=1;
45 2 if (SDA==1) j=1;
46 2 else j=0;
47 2 k=(k<<1)|j;
48 2 SCL=0;
49 2 }
50 1 return(k);
51 1 }
52 void x24c02_clock()
53 {
54 1 char i=0;
55 1 SCL=1;
C51 COMPILER V7.06 24C02 12/07/2006 03:10:11 PAGE 2
56 1 while ((SDA==1)&&(i<155))i++;//while ((SDA==1)&&(i<255))i++; 155
57 1 SCL=0;
58 1 }
59
60 void x24c02_init()
61 {
62 1 SCL = 1;
63 1 SDA = 1;
64 1 }
65
66 char x24c02_read(unsigned int address)
67 {
68 1 char i;
69 1 x24c02_start();
70 1 x24c02_writex(0xa0);
71 1 x24c02_clock();
72 1 x24c02_writex(address);
73 1 x24c02_clock();
74 1 x24c02_start();
75 1 x24c02_writex(0xa1);
76 1 x24c02_clock();
77 1 i=x24c02_readx();
78 1 x24c02_stop();
79 1 x24c02_delay(10);
80 1 return(i);
81 1 }
82
83 void x24c02_write(unsigned int address, char info)
84 {
85 1 EA=0;
86 1 x24c02_start();
87 1 x24c02_writex(0xa0);
88 1 x24c02_clock();
89 1 x24c02_writex(address);
90 1 x24c02_clock();
91 1 x24c02_writex(info);
92 1 x24c02_clock();
93 1 x24c02_stop();
94 1 EA=1;
95 1 //x24c02_delay(10);//x24c02_delay(50);
96 1 }
97
98 /*void x24c02_writestr(char address, unsigned char *wdata, unsigned char wlen)
99 {
100 unsigned char k=0;
101 do
102 {
103 x24c02_write(address+k, *(wdata + k));
104 k++;
105 } while(k < wlen);
106 } */
107
108 /*void x24c02_readstr(unsigned int address, unsigned char *rdata, unsigned char rlen)
109 {
110 unsigned char k=0;
111 do
112 {
113 rdata[k] = x24c02_read(address+k);
114 k++;
115 } while(k < rlen);
116 } */
C51 COMPILER V7.06 24C02 12/07/2006 03:10:11 PAGE 3
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 212 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
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 + -