?? keyscan.lst
字號:
C51 COMPILER V7.06 KEYSCAN 10/04/2008 23:30:33 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE KEYSCAN
OBJECT MODULE PLACED IN keyscan.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE keyscan.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include <reg51.h>
2 #include <string.h>
3 #include <intrins.h>
4 #include <stdio.h>
5 #include "base.h"
6
7 #define KEYPORT P1
8
9 uchar code col_code[4]={0xe0,0xd0,0xb0,0x70};
10 uchar keypressed()
11 {uchar f=0;
12 1 KEYPORT=0xf0;
13 1 if((KEYPORT&0xf0)!=0xf0)
14 1 {
15 2 delay_ms(20);
16 2 if((KEYPORT&0xf0)!=0xf0)
17 2 f=KEYPORT&0xf0;
18 2 else
19 2 f=0;
20 2 }
21 1 else
22 1 f=0;
23 1
24 1 return f;
25 1 }
26
27 uchar getcol(uchar c)
28 {
29 1 uchar i=0;
30 1 bit find=0;
31 1 while (!find && i<4)
32 1 {
33 2 if (col_code[i]==(c&0xf0))
34 2 find=1;
35 2 i++;
36 2 }
37 1 if (find)
38 1 return i;
39 1 else
40 1 return 0;
41 1 }
42
43 uchar getkey()
44 { uchar col=0,row=0,i=0,key;
45 1 bit f=1;
46 1 if (keypressed())
47 1 {
48 2 col=getcol(KEYPORT&0XF0);
49 2 for(i=0;i<4;i++)
50 2 {
51 3 KEYPORT=(col_code[i]>>4)|0xf0;
52 3 if ((KEYPORT&0xf0)!=0xf0)
53 3 row=i;
54 3 }
55 2 KEYPORT=0xf0;
C51 COMPILER V7.06 KEYSCAN 10/04/2008 23:30:33 PAGE 2
56 2 while ((KEYPORT&0xf0)!=0xf0);
57 2 return row*10+col;
58 2 }
59 1 }
*** WARNING C280 IN LINE 44 OF KEYSCAN.C: 'key': unreferenced local variable
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 162 ----
CONSTANT SIZE = 4 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 5
IDATA SIZE = ---- ----
BIT SIZE = ---- 2
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 1 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -