📄 8279.lst
字号:
C51 COMPILER V7.50 8279 05/17/2005 21:25:08 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE 8279
OBJECT MODULE PLACED IN 8279.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 8279.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include<intrins.h>
2 #include "8279.h"
3 /************************************************************************/
4 //ch: the number 0~9 position:the position in led line 0~7
5 /************************************************************************/
6 void Display(uchar ch,uchar position)
7 {
8 1 ComPort = 0x80 + position;
9 1 DataPort = DisplayTable[ch];
10 1 }
11 /************************************************************************/
12 /************************************************************************/
13 void ClearLed( void )
14 {
15 1 ComPort = 0xdd; /*总清除命令*/
16 1 // do{
17 1 // ACC=ComPort;
18 1 // }while(ClearFlag==1); /*等待清除结束*/
19 1 }
20 /************************************************************************/
21 /************************************************************************/
22 bit KeyPress( void )
23 {
24 1 uchar temp;
25 1 temp = ComPort;
26 1 return ((ComPort&0x0f) == 0) ? 0 : 1;
27 1 }
28 /************************************************************************/
29 /************************************************************************/
30 uchar GetKeyCode( void )
31 {
32 1 uchar tempData = 0x00;
33 1 ComPort = 0x2a;
34 1 if( KeyPress())
35 1 {
36 2 ComPort = 0x40;
37 2 tempData = DataPort;
38 2 tempData &= 0x3f;
39 2
40 2 return tempData;
41 2 }
42 1 return 0x00;
43 1 }
44 /************************************************************************/
45 /************************************************************************/
46 void Init8279Dis( void )
47 {
48 1 ComPort = 0xdd;
49 1 ComPort = 0x00;
50 1 }
51 /************************************************************************/
52 /************************************************************************/
53 uchar GetKeyNum( uchar keyCode)
54 {
55 1 uchar i;
C51 COMPILER V7.50 8279 05/17/2005 21:25:08 PAGE 2
56 1 for( i = 0; i < 10; i++)
57 1 {
58 2 if( keyCode == KeyCodeTable[i])
59 2 return i;
60 2 }
61 1
62 1 return 0xff;
63 1 }
64 /************************************************************************/
65 /************************************************************************/
66
67 void Delay( uint t)
68 {
69 1 while( --t);
70 1 }
71
72 void main( void )
73 {
74 1 uchar i = 0;
75 1 uchar tmp = 0;
76 1 ClearLed();
77 1 while( 1 )
78 1 {
79 2
80 2 tmp = GetKeyCode();
81 2 if( tmp != 0x00)
82 2 {
83 3 tmp = GetKeyNum( tmp );
84 3 Display( tmp ,0);
85 3 }
86 2
87 2 }
88 1 }
89 /************************************************************************/
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 135 ----
CONSTANT SIZE = 26 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 2
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -