📄 testiic.lst
字号:
C51 COMPILER V7.06 TESTIIC 09/23/2008 11:58:23 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE TESTIIC
OBJECT MODULE PLACED IN testiic.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE testiic.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include <reg52.h>
2 #include <intrins.h>
3 #define uchar unsigned char
4
5 sbit sda=P1^0;
6 sbit scl=P1^1;
7
8
9
10 void start ()
11 {
12 1 sda=1;
13 1 _nop_();
14 1 scl=1;
15 1 _nop_();
16 1 sda=0;
17 1 _nop_();
18 1 }
19
20 void stop()
21 {
22 1 sda=0;
23 1 _nop_();
24 1 scl=1;
25 1 _nop_();
26 1 sda=1;
27 1 _nop_();
28 1 }
29
30 bit send_byte(uchar date)
31 {
32 1 uchar i;
33 1 bit ack;
34 1 for(i=0;i<8;i++)
35 1 {
36 2
37 2 if(date&0x80)
38 2 sda=1;
39 2 else
40 2 sda=0;
41 2
42 2
43 2 _nop_();
44 2 scl=1;
45 2 _nop_();
46 2 _nop_();
47 2 _nop_();
48 2 date=date<<1;
49 2 scl=0;
50 2
51 2 }
52 1
53 1 _nop_();
54 1 sda=1;
55 1 _nop_();
C51 COMPILER V7.06 TESTIIC 09/23/2008 11:58:23 PAGE 2
56 1 scl=1;
57 1 _nop_();
58 1 _nop_();
59 1 if(sda==1)
60 1 ack=0;
61 1 else
62 1 ack=1;
63 1 scl=0;
64 1 return ack;
65 1 }
66
67
68
69 void main()
70 {
71 1 uchar date;
72 1 while(1)
73 1 {
74 2 start();
75 2 send_byte(0x88);
76 2 send_byte(date);
77 2 stop();
78 2
79 2 }
80 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 88 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 1
IDATA SIZE = ---- ----
BIT SIZE = ---- 1
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -