📄 key.lst
字号:
C51 COMPILER V7.20 KEY 09/18/2008 18:08:21 PAGE 1
C51 COMPILER V7.20, COMPILATION OF MODULE KEY
OBJECT MODULE PLACED IN key.OBJ
COMPILER INVOKED BY: D:\Keil\C51\BIN\C51.EXE key.c LARGE BROWSE DEBUG OBJECTEXTEND
line level source
1 #include "include.h"
2
3 uchar scan_key()
4 {
5 1 uchar i,t;
6 1 for(i=1;i<0x10;i<<=1)
7 1 {
8 2 KB=~i;
9 2 delayus();
10 2 t=KB;
11 2 if(t!=~i)
12 2 {
13 3 delay_ms(20); //延时扫描两次消抖
14 3 if(t==KB)
15 3 while(KB!=~i);
16 3 switch(t)
17 3 {
18 4 case 0xEE:return 7;
19 4 case 0xDE:return 8;
20 4 case 0xBE:return 9;
21 4 case 0x7E:return 0x0D;
22 4 case 0xED:return 4;
23 4 case 0xDD:return 5;
24 4 case 0xBD:return 6;
25 4 case 0x7D:return 0X0E;
26 4 case 0xEB:return 1;
27 4 case 0xDB:return 2;
28 4 case 0xBB:return 3;
29 4 case 0x7B:return 0X0F;
30 4 case 0xE7:return 0;
31 4 case 0xD7:return 0X0A;
32 4 case 0xB7:return 0X0B;
33 4 case 0x77:return 0X0C;
34 4 }
35 3
36 3 }
37 2 }
38 1 return 0xff;
39 1 }
40
41
42
43 //--------------------------------------------
44 //按键输入一个数 屏显在wordx wordy位置
45 //按F键结束输入
46 //返回一个浮点数
47 //--------------------------------------------
48 float input_float(uchar wordx,uchar wordy)
49 {
50 1 float num=0,i=1;
51 1 uchar d=0,key;
52 1 lcd_clr_page(0,32,80);
53 1 for(;;)
54 1 {
55 2 do
C51 COMPILER V7.20 KEY 09/18/2008 18:08:21 PAGE 2
56 2 {
57 3 key=scan_key();
58 3 }while(key>0x0b);
59 2 lcd_display_one_num(wordx,wordy,key);
60 2 if(key==0x0b)break; //当上次按键是b时结束输入
61 2 else if(key==0x0a)
62 2 {
63 3 d=1; //切换为小数部分
64 3 i=10;
65 3 }
66 2 else
67 2 {
68 3 if(d==0) //整数部分
69 3 {
70 4 num=num*10+key;
71 4
72 4 }
73 3 else //小数
74 3 {
75 4 num+=(float)key/i;
76 4 i*=10;
77 4 }
78 3 }
79 2 wordx+=8;
80 2 }
81 1
82 1 return num;
83 1 }
*** WARNING C316 IN LINE 83 OF key.c: unterminated conditionals
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 473 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- 14
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 1 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -