?? main.lst
字號:
C51 COMPILER V7.50 MAIN 07/01/2008 15:53:05 PAGE 1
C51 COMPILER V7.50, 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
2 /*
3 ****************************************************
4
5
6
7 ****************************************************
8 */
9
10
11 #include <reg52.H>
12 #include "Typedef.H"
13 #include "UserDef.H"
14 #include "Keypad.H"
15 #include "Disp.H"
16 #include "Cacu.H"
17
18
19 /* 全局變量 */
20 INT8U KeyVal = VK_NULL; //按鍵值
21 bit bDispRef = FALSE; //信號燈:顯示更新時間到
22 bit bKeyScan = FALSE; //信號燈:鍵盤掃描時間到
23
24 /* 函數 */
25 void KeyboardDeal(void);
26
27
28 /***************************************
29
30
31
32 ****************************************/
33 void TestDisplay(void)
34 {
35 1 INT8U n;
36 1
37 1 DispXYSet(0,0);
38 1 DispFontSet(0);
39 1 for (n=0;n<9;n++)
40 1 DispChr('0'+n);
41 1
42 1 DispXYSet(1,0);
43 1 DispFontSet(1);
44 1 for (n=0;n<3;n++)
45 1 DispChr('a'+n);
46 1
47 1 DispXYSet(2,0);
48 1 DispFontSet(2);
49 1 for (n=0;n<3;n++)
50 1 DispChr('A'+n);
51 1
52 1 DispXYSet(5,0);
53 1 DispHZ(0);
54 1 DispHZ(1);
55 1
C51 COMPILER V7.50 MAIN 07/01/2008 15:53:05 PAGE 2
56 1 }
57
58
59 /***************************************
60
61
62
63 ****************************************/
64 void main(void)
65 {
66 1
67 1 TMOD = 0x11;
68 1 TH0 = (unsigned char)(KTDLY>>8);
69 1 TL0 = (unsigned char)(KTDLY);
70 1 TR0 = 1;
71 1
72 1 ET0 = 1;
73 1
74 1 EA = 1;
75 1
76 1 DispInit();
77 1
78 1 DispCls();
79 1 // DispIntRight(0); //顯示效果示范
80 1 // DispStr("Hello!",0,0,0);
81 1 // DispFloat(0,0,0,8);
82 1 // DispInt(123,0,0,4);
83 1
84 1 TestDisplay();
85 1
86 1 while(TRUE)
87 1 {
88 2 /* 鍵盤 */
89 2 if (bKeyScan == TRUE)
90 2 {
91 3 bKeyScan = FALSE;
92 3 KeyboardDeal();
93 3 }
94 2
95 2 /* 顯示掃描刷新 */
96 2 if (bDispRef == TRUE)
97 2 {
98 3 bDispRef = FALSE;
99 3 DispRef();
100 3 }
101 2 }
102 1 }
103
104
105
106
107 /*************************************
108
109 定時器中斷程序
110
111 **************************************/
112 void int_t0(void) interrupt 1 using 1
113 {
114 1 static int cnt = 0;
115 1
116 1 TH0 = (unsigned char)(KTDLY>>8);
117 1 TL0 = (unsigned char)(KTDLY);
C51 COMPILER V7.50 MAIN 07/01/2008 15:53:05 PAGE 3
118 1
119 1 cnt ++;
120 1
121 1 /* 鍵盤掃描信號燈 */
122 1 if ((cnt % T_KEYSCAN) == 0)
123 1 {
124 2 bKeyScan = TRUE;
125 2 }
126 1
127 1 /* 顯示掃描信號燈 */
128 1 if ((cnt % T_DISPREF) == 0)
129 1 {
130 2 bDispRef = TRUE;
131 2 }
132 1 }
133
134
135 /*************************************
136
137 鍵盤處理
138
139 **************************************/
140 void KeyboardDeal(void)
141 {
142 1 INT8U n;
143 1 float res;
144 1
145 1 n = Keypad_GetKey();
146 1 if (n != KeyVal)
147 1 {
148 2 KeyVal = n;
149 2 if (n != VK_NULL)
150 2 {
151 3 DispCls();
152 3 if (CacuInput(n,&res) == TRUE)
153 3 {
154 4 DispFloat(res,0,0,8);
155 4 }
156 3 else
157 3 {
158 4 // DispStr("Error!",1,0,TRUE);
159 4 }
160 3 }
161 2 }
162 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 272 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 3 6
IDATA SIZE = ---- ----
BIT SIZE = 2 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -