📄 main.lst
字号:
C51 COMPILER V7.50 MAIN 10/10/2008 18:23:29 PAGE 5
242 1 dat2 = dat2|(0x80>>((dx%16)-8)) ;
243 1 else
244 1 dat1 = dat1|(0x80>>(dx%16)) ;
245 1 write_command ( 0x36 ) ;
246 1 dy = dy|0x80 ;
247 1 dx = (dx/16)|0x80 ;
248 1 write_GDRAM ( dx,dy,dat1,dat2 ) ;
249 1 write_command ( 0x36 ) ;
250 1 }
251
252 /*******************************显示值********************************/
253 void display_value ( int x , uchar addr )
254 {
255 1 uchar i,j ;
256 1 uint flag1=1 ;
257 1 int t_x ;
258 1 if ( x>=0 )
259 1 {
260 2 t_x = x ;
261 2 j = 0 ;
262 2 }
263 1 else
264 1 {
265 2 t_x = 0-x ;
266 2 j = 1 ;
267 2 }
268 1 write_command ( 0x30 ) ;
269 1 write_command ( addr ) ;
270 1 for ( i=0;i<6;i++ )
271 1 {
272 2 temp_f[i] = 0x20 ;
273 2 }
274 1 i = 5 ;
275 1 while ( 1 )
276 1 {
277 2 if ( t_x>0 )
278 2 {
279 3 temp_f[i] = word[t_x%10] ;
280 3 t_x /= 10 ;
281 3 }
282 2 else
283 2 break ;
284 2 i-- ;
285 2 if ( i<0 )
286 2 break ;
287 2 }
288 1 if ( x==0 )
289 1 {
290 2 temp_f[5] = word[0] ;
291 2 }
292 1 if ( j==1 )
293 1 temp_f[0] = 0x2d ;
294 1 for ( i=0;i<6;i++ )
295 1 {
296 2 write_word ( temp_f[i] ) ;
297 2 }
298 1 }
299
300 /*--------------------------------------------------------------------------*/
301
302 /* 触摸屏程序 */
303
C51 COMPILER V7.50 MAIN 10/10/2008 18:23:29 PAGE 6
304 /*--------------------------------------------------------------------------*/
305 /*------------------------------计算器键值判断------------------------------*/
306 void calculator_key ( void )
307 {
308 1 key_flag = ((X/760)<<4)|((Y/900)&0x0f) ;
309 1 switch ( key_flag )
310 1 {
311 2 case 0x00: key_value = 0 ; break ; //对键值赋值
312 2 case 0x10: key_value = 1 ; break ;
313 2 case 0x20: key_value = 2 ; break ;
314 2 case 0x30: key_value = 3 ; break ;
315 2 case 0x40: key_value = 4 ; break ;
316 2 case 0x01: key_value = 5 ; break ;
317 2 case 0x11: key_value = 6 ; break ;
318 2 case 0x21: key_value = 7 ; break ;
319 2 case 0x31: key_value = 8 ; break ;
320 2 case 0x41: key_value = 9 ; break ;
321 2 case 0x02: key_value = 10 ; break ;
322 2 case 0x12: key_value = 11 ; break ;
323 2 case 0x22: key_value = 12 ; break ;
324 2 case 0x32: key_value = 13 ; break ;
325 2 case 0x42: key_value = 14 ; break ;
326 2 case 0x03: key_value = 15 ; break ;
327 2 case 0x13: key_value = 16 ; break ;
328 2 case 0x23: key_value = 17 ; break ;
329 2 case 0x33: key_value = 18 ; break ;
330 2 case 0x43: key_value = 19 ; break ;
331 2 }
332 1 }
333
334 /*--------------------------------计算器函数--------------------------------*/
335 void calculator_main ( void )
336 {
337 1 switch ( key_value )
338 1 {
339 2 case 19: //按键0
340 2 if( value_flag==0 )
341 2 {
342 3 if( value_act<0 )
343 3 value_act=value_act*10-0 ;
344 3 else
345 3 value_act=value_act*10+0 ;
346 3 }
347 2 else
348 2 {
349 3 if( value_pas<0 )
350 3 value_pas=value_pas*10-0 ;
351 3 else
352 3 value_pas=value_pas*10+0 ;
353 3 }
354 2 break ;
355 2 case 14: //按键1
356 2 if( value_flag==0 )
357 2 {
358 3 if( value_act<0 )
359 3 value_act=value_act*10-1 ;
360 3 else
361 3 value_act=value_act*10+1 ;
362 3 }
363 2 else
364 2 {
365 3 if( value_pas<0 )
C51 COMPILER V7.50 MAIN 10/10/2008 18:23:29 PAGE 7
366 3 value_pas=value_pas*10-1 ;
367 3 else
368 3 value_pas=value_pas*10+1 ;
369 3 }
370 2 break ;
371 2 case 13: //按键2
372 2 if( value_flag==0 )
373 2 {
374 3 if( value_act<0 )
375 3 value_act=value_act*10-2 ;
376 3 else
377 3 value_act=value_act*10+2 ;
378 3 }
379 2 else
380 2 {
381 3 if( value_pas<0 )
382 3 value_pas=value_pas*10-2 ;
383 3 else
384 3 value_pas=value_pas*10+2 ;
385 3 }
386 2 break ;
387 2 case 12: //按键3
388 2 if( value_flag==0 )
389 2 {
390 3 if( value_act<0 )
391 3 value_act=value_act*10-3 ;
392 3 else
393 3 value_act=value_act*10+3 ;
394 3 }
395 2 else
396 2 {
397 3 if( value_pas<0 )
398 3 value_pas=value_pas*10-3 ;
399 3 else
400 3 value_pas=value_pas*10+3 ;
401 3 }
402 2 break ;
403 2 case 9: //按键4
404 2 if( value_flag==0 )
405 2 {
406 3 if( value_act<0 )
407 3 value_act=value_act*10-4 ;
408 3 else
409 3 value_act=value_act*10+4 ;
410 3 }
411 2 else
412 2 {
413 3 if( value_pas<0 )
414 3 value_pas=value_pas*10-4 ;
415 3 else
416 3 value_pas=value_pas*10+4 ;
417 3 }
418 2 break ;
419 2 case 8: //按键5
420 2 if( value_flag==0 )
421 2 {
422 3 if( value_act<0 )
423 3 value_act=value_act*10-5 ;
424 3 else
425 3 value_act=value_act*10+5 ;
426 3 }
427 2 else
C51 COMPILER V7.50 MAIN 10/10/2008 18:23:29 PAGE 8
428 2 {
429 3 if( value_pas<0 )
430 3 value_pas=value_pas*10-5 ;
431 3 else
432 3 value_pas=value_pas*10+5 ;
433 3 }
434 2 break ;
435 2 case 7: //按键6
436 2 if( value_flag==0 )
437 2 {
438 3 if( value_act<0 )
439 3 value_act=value_act*10-6 ;
440 3 else
441 3 value_act=value_act*10+6 ;
442 3 }
443 2 else
444 2 {
445 3 if( value_pas<0 )
446 3 value_pas=value_pas*10-6 ;
447 3 else
448 3 value_pas=value_pas*10+6 ;
449 3 }
450 2 break ;
451 2 case 4: //按键7
452 2 if( value_flag==0 )
453 2 {
454 3 if( value_act<0 )
455 3 value_act=value_act*10-7 ;
456 3 else
457 3 value_act=value_act*10+7 ;
458 3 }
459 2 else
460 2 {
461 3 if( value_pas<0 )
462 3 value_pas=value_pas*10-7 ;
463 3 else
464 3 value_pas=value_pas*10+7 ;
465 3 }
466 2 break ;
467 2 case 3: //按键8
468 2 if( value_flag==0 )
469 2 {
470 3 if( value_act<0 )
471 3 value_act=value_act*10-8 ;
472 3 else
473 3 value_act=value_act*10+8 ;
474 3 }
475 2 else
476 2 {
477 3 if( value_pas<0 )
478 3 value_pas=value_pas*10-8 ;
479 3 else
480 3 value_pas=value_pas*10+8 ;
481 3 }
482 2 break ;
483 2 case 2: //按键9
484 2 if( value_flag==0 )
485 2 {
486 3 if( value_act<0 )
487 3 value_act=value_act*10-9 ;
488 3 else
489 3 value_act=value_act*10+9 ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -