?? panel.lst
字號:
C51 COMPILER V6.12 PANEL 05/22/2007 20:27:55 PAGE 1
C51 COMPILER V6.12, COMPILATION OF MODULE PANEL
OBJECT MODULE PLACED IN .\panel.OBJ
COMPILER INVOKED BY: D:\Program Files\keil51\C51\BIN\C51.EXE .\panel.c LARGE DEBUG OBJECTEXTEND
stmt level source
1 #include <panel.h>
2 #include <1621.h>
3 #include<stdlib.h>
4 // extern unsigned char kkk[10];
5 void InitSystem ()
6 {
7 1 VOICE3=0;
8 1 VOICE4=0;
9 1
10 1 WDT_CONTR = 0x00;//關(guān)掉看門狗電路
11 1 ES = 0;//禁止串口中斷
12 1 //配置串口
13 1 SCON = 0x50; //8位數(shù)據(jù)位,無奇偶校驗
14 1 T2CON = 0x34;//由T2作為波特率發(fā)生器
15 1
16 1 if(SW1 == 1)
17 1 {
18 2 RCAP2H = 0xfe; //時鐘11.0592M 1200波特率
19 2 RCAP2L = 0xe0;
20 2 }
21 1 if(SW1==0)
22 1 {
23 2 RCAP2H = 0xff; //時鐘11.0592M 9600波特率
24 2 RCAP2L = 0xdb;
25 2 }
26 1
27 1 //配置T1,count=909090,TI:16位工作模式
28 1
29 1 //
30 1
31 1 ES = 1;//允許串口中斷
32 1 }
33 unsigned char Receive_Byte(void)
34 {
35 1 unsigned char DReceive;
36 1 RI = 0;
37 1 while(RI == 0);
38 1 DReceive = SBUF;
39 1
40 1 RI = 0;
41 1 return DReceive;
42 1 }
43
44 void Send_Byte(unsigned char DSend)
45 {
46 1 TI = 0;
47 1 SBUF = DSend;
48 1 while(TI == 0);
49 1 TI = 0;
50 1 }
51
52 /*
53 unsigned char down_package(void)
54 {
55 int i;
C51 COMPILER V6.12 PANEL 05/22/2007 20:27:55 PAGE 2
56 //unsigned char down[10];
57 unsigned char down;
58 //for(i=0;i<6;i++)
59 //down[i] = Receive_Byte();
60 down = Receive_Byte();
61 if( down==0x1b)
62 {
63
64 return 1;
65 }
66 return 0;
67
68 }
69 */
70 /*
71 void up_package(void)
72 {
73 int i;
74 unsigned char up[15];
75 unsigned char temp1,temp2;
76 unsigned char temp;
77 up[0]= 0x02;
78 up[1]= 0x06;
79 up[14]= 0x03;
80 for(i=2;i<13; )
81 {
82 temp1=sbuf[i];
83 temp2=temp1;
84 temp1 &=0xf0;
85 temp1 >>=4;
86 temp1 |=0x30;
87 temp2 &=0x0f;
88 temp2 |=0x30;
89 up[i++] = temp1;
90 up[i++] = temp2;
91 }
92 for(i=0;i<15;i++)
93 Send_Byte(up[i]);
94 }
95 */
96 void ReadSwStatus()
97 {
98 1 unsigned char sw,sw_copy;
99 1 sw = P2;
100 1 sw_copy = sw;
101 1 if( sw && 0x01)
102 1 {
103 2 #define baurate_1200;
104 2 }
105 1 else {
106 2 #define baurate_9600;
107 2 }
108 1
109 1 sw = sw_copy;
110 1 if(sw && 0x02)
111 1 {
112 2 #define command2;
113 2 }
114 1 else{
115 2 #define command1;
116 2 }
117 1 }
C51 COMPILER V6.12 PANEL 05/22/2007 20:27:55 PAGE 3
118
119
120 void delay_ms(unsigned int i)//delay_ms(200)=1s
121 {
122 1 unsigned int j;
123 1 unsigned int n;
124 1 for(j=0;j<i;j++)
125 1 {
126 2 for(n=0;n<255;n++);
127 2 }
128 1 }
129
130 /*
131 unsigned char JudgeKey(void)//comment by liuyuan@07.04.02.14.09
132 {
133 P2 =0x1f;//初始化行列控制端口
134 delay_ms(150);
135 //if any key is pressed ,key will pull low
136 while(PIN1 && PIN2 && PIN3 && PIN4 && PIN5);
137 delay_ms(150);
138 if(!(PIN1 && PIN2 && PIN3 && PIN4 && PIN5))
139 return 1;
140 else
141 return 0;
142 }
143 */
144
145 unsigned char JudgeKey(void)//comment by liuyuan@07.04.02.14.09
146 {
147 1
148 1 P2 =0xf8;//初始化行列控制端口
149 1 delay_ms(20);
150 1
151 1 //if any key is pressed ,key will pull low
152 1 //while((PIN1 && PIN2 && PIN3 && PIN4 && PIN5));
153 1 //delay_ms(10);
154 1 if(!(PIN1 && PIN2 && PIN3 && PIN4 && PIN5))
155 1 return 1;
156 1 else
157 1 return 0;
158 1 }
159 void LightPanel_on(void)
160 {
161 1 LIGHT_PANEL=1;
162 1 SendCmd_1621(LCD_on);
163 1 }
164 void LightPanel_off(void)
165 {
166 1 LIGHT_PANEL=0;
167 1 SendCmd_1621(LCD_off);
168 1
169 1 }
170
171 void Tone()
172 {
173 1 SendCmd_1621(TUNE_on);
174 1 delay_ms(100);
175 1 SendCmd_1621(TUNE_off);
176 1 delay_ms(100);
177 1 SendCmd_1621(TUNE_on);
178 1 delay_ms(100);
179 1 SendCmd_1621(TUNE_off);
C51 COMPILER V6.12 PANEL 05/22/2007 20:27:55 PAGE 4
180 1 }
181 /*
182 void random()
183 {
184 int i,j;
185 int num[]={0,1,2,3,4,5,6,7,8,9};
186 //SMG10 SMG1 SMG2 SMG3 SMG4 SMG5 SMG6 SMG7 SMG8 SMG9
187 int rn[10];
188
189 srand((unsigned)t++);//time(&t));
190 for(i=0;i<10;i++)
191 {
192 rn[i]=rand()%10;
193 for(j=0;j<i;j++)
194 {
195 if(rn[i]==rn[j]){i--;j=i;}
196 }
197 }
198 for(i=0;i<10;i++)
199 {key_num[i] = num[rn[i]];}
200
201 }
202 */
203 /*
204 unsigned char * DisplayNum(void)
205 {
206 unsigned char ADDr[]={0x06,0x04,0x02,0x00,0x0e,
207 0x10,0x12,0x08,0x0a,0x0c};
208 unsigned char seg[]={0xdf,0x86,0xbd,0xaf,0xe6,0xeb,0xfb,0x8e,0xff,0xee};//數(shù)碼管1,2,3,4,5,6,7,8,9,10對
-應(yīng)數(shù)字顯示
209 //0 1 2 3 4 5 6 7 8 9
210 unsigned char i,j;
211 unsigned char key_num[10];
212 //Init_1621();
213 //LCDon();
214 //random();
215
216 int num[]={0,1,2,3,4,5,6,7,8,9};
217 //SMG10 SMG1 SMG2 SMG3 SMG4 SMG5 SMG6 SMG7 SMG8 SMG9
218 int rn[10];
219
220 srand((unsigned)t++);//time(&t));
221 for(i=0;i<10;i++)
222 {
223 rn[i]=rand()%10;
224 for(j=0;j<i;j++)
225 {
226 if(rn[i]==rn[j]){i--;j=i;}
227 }
228 }
229 for(i=0;i<10;i++)
230 {key_num[i] = num[rn[i]];}
231
232 //for(i=0;i<10;i++)
233 //key_num[i] = i;
234
235 //Write_1621(ADDr[0],0X06);
236 //Write_1621(ADDr[2],0X06);
237 //for(i=0;i<10;i++)//for debug
238 // Send_Byte(key_num[i]);//for debug
239 for(i=0;i<10;i++)
240 {
C51 COMPILER V6.12 PANEL 05/22/2007 20:27:55 PAGE 5
241 Write_1621(ADDr[i],seg[key_num[i]]);
242 }
243 //if(key_num[4]==9);
244 // SendCmd_1621(TUNE_on);
245 for(i=0;i<10;i++)
246 kkk[i] = key_num[i];
247
248
249 return key_num;
250 }
251 */
252 /*
253 unsigned char * DisplayNum_sequence(void)
254 {
255
256 int i;
257 unsigned char key_num[10];
258 unsigned char ADDr[]={0x06,0x04,0x02,0x00,0x0e,
259 0x10,0x12,0x08,0x0a,0x0c};
260 unsigned char seg[]={0xdf,0x86,0xbd,0xaf,0xe6,0xeb,0xfb,0x8e,0xff,0xee};//數(shù)碼管1,2,3,4,5,6,7,8,9,10對應(yīng)
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -