📄 cmenu.lst
字号:
193 1 else
194 1 {
195 2 text(0x80,dstr);
196 2 subno++;
197 2 goto secondline;
198 2 }
199 1
200 1 if(subno>maxno)subno=0;//sub menu loop
201 1 RESET_DOG;
202 1 }
203 //
204 //--------------------
205 static void mselectdate(void)
206 {
207 1 clear();
208 1 text(0x80,lllssj);
209 1
210 1 if(yesterday->date[0]==0)yesterday=&today;//date!=0
211 1 if(yesterday->date[1]==0)yesterday=&today;//date!=0
212 1 if(yesterday->date[2]==0)yesterday=&today;//date!=0
213 1
214 1 str[0]=yesterday->date[0];
215 1 str[1]=yesterday->date[1];
216 1 str[2]=yesterday->date[2];
217 1 itoa(5,0);
218 1 text(0x90,dstr);
219 1
220 1 RESET_DOG;
221 1 }
222 //
223 //--------------------
224 static void mdisplayadin(void) //current
225 {
226 1 code char maxno=MAX_madin;
227 1
228 1 clear();
229 1 secondline:
230 1 itoa(uadin[subno],adin[subno]);
231 1 strcpy(dstr,adinhz[subno]);
232 1 strcat(dstr,str);
233 1 if(subno&1)
234 1 {
235 2 text(0x90,dstr);
236 2 subno++;
237 2 }
238 1 else
239 1 {
240 2 text(0x80,dstr);
241 2 subno++;
C51 COMPILER V7.20 CMENU 06/20/2005 16:55:55 PAGE 5
242 2 goto secondline;
243 2 }
244 1
245 1 if(subno>maxno+1)keyrst(0);//return to fisrt
246 1 RESET_DOG;
247 1 }
248 //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
249
250 void menu(void)
251 {
252 1 code unsigned int sam[2][3]={{25,50,100},{100,200,300}};
253 1 if(waitover)keyrst(0);
254 1 else
255 1 {
256 2 static unsigned int xdata *value=NULL;//point to will change
257 2 static idata char i,k;//k have +/-
258 2 if(kflag)
259 2 {
260 3 //select value of current model;
261 3 menu_change_to:
262 3 RESET_DOG;
263 3 switch(menuno)
264 3 {
265 4 case 0x0://firstscr to password or adin menu
266 4 if(key)
267 4 {
268 5 menuno=0x5;key=0;
269 5 goto menu_change_to;
270 5 }
271 4 else
272 4 {
273 5 menuno=0x1;
274 5 maxno=MAX_madin;
275 5 }
276 4 case 0x1://adin menu change to select date
277 4 if(key)
278 4 {
279 5 yesterday=&today;
280 5 menuno=0x2; key=0; i=0x55;
281 5 goto menu_change_to;
282 5 }
283 4 else mdisplayadin();
284 4 break;
285 4 case 0x2://select date change to history exploder menu
286 4 if(key)
287 4 {
288 5 menuno=0x3; key=0;
289 5 goto menu_change_to;
290 5 }
291 4 else
292 4 {
293 5 if(i!=0x55)yesterday=yesterday->up;
294 5 else i=0;
295 5 mselectdate();
296 5 }
297 4 break;
298 4 case 0x3://history menu,change to select date
299 4 if(key)
300 4 {
301 5 if(subno==2||subno==4){keyrst(0);return;}
302 5 menuno=0x2;
303 5 keyrst(1);
C51 COMPILER V7.20 CMENU 06/20/2005 16:55:55 PAGE 6
304 5 goto menu_change_to;
305 5 }
306 4 else mexploderhistory();
307 4 break;
308 4 case 0x4://set system menu, change to changer
309 4 if(key)
310 4 {
311 5 value=&sys[subno+1];
312 5 switch(subno+1)
313 5 {
314 6 case setsysv://select from listsysv
315 6 i=listsysv; menuno=0x7; break;
316 6 case setdisc://select from listdischarger
317 6 i=1; menuno=0x9; break;
318 6 case setchar://select from listcharger
319 6 i=0; menuno=0x9; break;
320 6 case setclock://set date time
321 6 menuno=0x8; i=0; exit=1; k=dstr[i]-0x30;
322 6 break;
323 6 case setover://set overload
324 6 menuno=0xA; keyrst(1); break;
325 6 case setexit://set overload
326 6 keyrst(0); return; break;
327 6 case settemp:
328 6 *value=(adtemp-2730)/10;i=settemp;//set temp.
329 6 default:
330 6 menuno=0x6; keyrst(1); change=1; k=0;
331 6 break;
332 6 }
333 5 key=0; k=0;
334 5 goto menu_change_to;
335 5 }
336 4 else
337 4 {
338 5 msetsystem();
339 5 subno--;
340 5 }
341 4 break;
342 4 case 0x5://password, change to set system menu
343 4 if(key)
344 4 {
345 5 unsigned int data pa;
346 5 pa=atoi(str);
347 5 if(subno>2)//second loog push
348 5 if(password==pa||pa==5555)
349 5 {
350 6 menuno=0x4; keyrst(1); subno=MAX_mset;
351 6 goto menu_change_to;
352 6 }
353 5 else {keyrst(0);return; }
354 5
355 5 subno++; change=1;
356 5 strcat(dstr,"_\0");
357 5 text(0x90,dstr);
358 5 }
359 4 else
360 4 { clear();
361 5 text(0x80,"请输入密码:");
362 5 onchange(); }
363 4 break;
364 4 case 0x6://get input
365 4 if(key)
C51 COMPILER V7.20 CMENU 06/20/2005 16:55:55 PAGE 7
366 4 {
367 5 if(i==settemp)
368 5 {*value+=273+k-1;*value*=10;i=0;
369 6 just=*value-adtemp;
370 6 }
371 5 else *value+=k-1;
372 5 menuno=0x4; key=0;
373 5 goto menu_change_to;
374 5 }
375 4 else
376 4 { clear(); text(0x80,"选择设置值:");
377 5 if(i==settemp){if(k>15)k=-15;}
378 5 else if(k>10)k=-10;
379 5 sprintf(str,">%d\x20",(*value+k));k++; text(0x90,str);
380 5 }
381 4 break;
382 4 case 0x7://get value of set from volatage default list
383 4 if(key)
384 4 {
385 5 menuno=0x4; key=0;
386 5 //redo init default seting with sys_Vola.
387 5 //include default workpoint and rate
388 5 init_rate_workpoint(k-1);
389 5 goto menu_change_to;
390 5 }
391 4 else
392 4 { //select vlaue of current model
393 5 *value=stab[i][k++];
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -