📄 main.lst
字号:
C51 COMPILER V8.02 MAIN 11/08/2007 17:32:50 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg51.h>
2 #define uchar unsigned char
3 #define uint unsigned int
4
5 sbit pData = P1^0;
6 sbit pClk = P1^1;
7 sbit pCs = P1^2;
8 sbit pNP = P1^3;
9
10 void dly_us(uchar t)
11 {
12 1 uchar i;
13 1 for(i=0;i<t;i++);
14 1 }
15
16 uchar tlc1549_R(void)
17 {
18 1 uchar cAD;
19 1 uchar i;
20 1 cAD=0;
21 1 pCs=0;
22 1 for(i=0;i<9;i++)
23 1 {
24 2 pClk=1;
25 2 dly_us(2);
26 2 pClk=0;
27 2
28 2 cAD<<=1;
29 2 cAD|=pData;
30 2 }
31 1 pCs=1;
32 1 dly_us(25);
33 1 return cAD;
34 1 }
35
36 void dly_ms(uint k)
37 {
38 1 uint i;
39 1 TMOD=0x10;
40 1 TF1=0;
41 1 TR1=1;
42 1 for(i=0;i<k;i++)
43 1 {
44 2 TH1=(65536-1000)/256;
45 2 TL1=(65536-1000)%256;
46 2 while(!TF1);
47 2 TF1=0;
48 2 }
49 1 TR1=0;
50 1 }
51
52 void main(void)
53 {
54 1 // uchar cIn;
55 1 uchar P1Temp;
C51 COMPILER V8.02 MAIN 11/08/2007 17:32:50 PAGE 2
56 1 uchar cAD=0;
57 1 while(1)
58 1 {
59 2 //cIn=P1&0x3c;
60 2 //cIn>>=2;
61 2 cAD=tlc1549_R();
62 2 if(cAD>25-2 && cAD<25+2)
63 2 {
64 3 P1Temp=P1;
65 3 P1Temp&=0x0f;
66 3 P1=0x10|P1Temp;
67 3 }
68 2 else if(cAD>51-2 && cAD<51+2)
69 2 {
70 3 P1Temp=P1;
71 3 P1Temp&=0x0f;
72 3 P1=0x20|P1Temp;
73 3 }
74 2 else if(cAD>77-2 && cAD<77+2)
75 2 {
76 3 P1Temp=P1;
77 3 P1Temp&=0x0f;
78 3 P1=0x30|P1Temp;
79 3 }
80 2 else if(cAD>102-2 && cAD<102+2)
81 2 {
82 3 P1Temp=P1;
83 3 P1Temp&=0x0f;
84 3 P1=0x40|P1Temp;
85 3 }
86 2 else if(cAD>128-2 && cAD<128+2)
87 2 {
88 3 P1Temp=P1;
89 3 P1Temp&=0x0f;
90 3 P1=0x50|P1Temp;
91 3 }
92 2 else if(cAD>154-2 && cAD<154+2)
93 2 {
94 3 P1Temp=P1;
95 3 P1Temp&=0x0f;
96 3 P1=0x60|P1Temp;
97 3 }
98 2 else if(cAD>179-2 && cAD<179+2)
99 2 {
100 3 P1Temp=P1;
101 3 P1Temp&=0x0f;
102 3 P1=0x70|P1Temp;
103 3 }
104 2 else if(cAD>205-2 && cAD<205+2)
105 2 {
106 3 P1Temp=P1;
107 3 P1Temp&=0x0f;
108 3 P1=0x80|P1Temp;
109 3 }
110 2 else if(cAD>230-2 && cAD<230+2)
111 2 {
112 3 P1Temp=P1;
113 3 P1Temp&=0x0f;
114 3 P1=0x90|P1Temp;
115 3 }
116 2 else if(cAD>256-2 && cAD<256+2)
117 2 {
C51 COMPILER V8.02 MAIN 11/08/2007 17:32:50 PAGE 3
118 3 P1Temp=P1;
119 3 P1Temp&=0x0f;
120 3 P1=0xA0|P1Temp;
121 3 }
122 2
123 2 P3=cAD;
124 2 dly_ms(100);
125 2 }
126 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 342 ----
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 + -