📄 7279a_p2.lst
字号:
36 =1 #define KEY_8 56
37 =1 #define KEY_9 37
38 =1 #define KEY_LOCK 5
39 =1 #define KEY_UNL 15
40 =1
41 =1 #define KEY_LEFT 47
42 =1 #define KEY_UP 46
43 =1 #define KEY_RIGHT 45
44 =1 #define KEY_OK 55
45 =1 #define KEY_ESC 54
46 =1 #define KEY_CLEAR 53
47 =1 #define KEY_SET 63
48 =1 #define KEY_SYS 62
49 =1 #define KEY_REC 61
50 =1
51 =1 #define KEY_ALARM 4
52 =1 #define KEY_MAN 1
53 =1 #define KEY_F1 0
54 =1 #define KEY_PAUSE 12
55 =1 #define KEY_COM 9
56 =1 #define KEY_F2 8
57 =1 #define KEY_PAGE 36
C51 COMPILER V7.06 7279A_P2 08/26/2003 18:08:57 PAGE 5
58 =1 #define KEY_CARD 33
59 =1 #define KEY_PASS 32
60 =1
61 =1
62 =1 /*******************定义管脚*****************************/
63 =1 sbit KEY=P1^1;
64 =1
65 =1 /********************定义外部共享的内存变量***********************/
66 =1 extern uchar system_disp[8]; /*显示缓冲区*/
67 =1 extern uchar system_dk; /*显示闪烁控制*/
68 =1
69 =1
70 =1
71 =1 /*******************用到的外部函数定义*****************************/
72 =1
73 =1 /*定义外部汇编函数 显示键盘控制 7279A_P1.asm 外部汇编函数*/
74 =1 extern void HD7279_INIT();
75 =1 extern void HD7279_DISP(uchar *d); //方式0译码
76 =1 extern void HD7279_DK(uchar d);
77 =1 extern uchar HD7279_GETKEY();
78 =1
79 =1 /*定义外部C函数 显示键盘控制 7279A_P2.C 外部C函数*/
80 =1 extern void Disp_Now();
81 =1 extern void Ver_Now();
82 =1 extern void Ver_Now1();
83 =1 extern void Key_test();
84 =1
85 =1
86 =1
87 =1 #ifndef READYDEF_uchar /*取消宏uchar定义*/
88 =1 #undef uchar
89 =1 #endif
90 =1
91 =1
92 =1 #ifndef READYDEF_uint /*取消宏uint定义*/
93 =1 #undef uint
94 =1 #endif
16 #include <stdio.h>
1 =1 /*--------------------------------------------------------------------------
2 =1 STDIO.H
3 =1
4 =1 Prototypes for standard I/O functions.
5 =1 Copyright (c) 1988-2002 Keil Elektronik GmbH and Keil Software, Inc.
6 =1 All rights reserved.
7 =1 --------------------------------------------------------------------------*/
8 =1
9 =1 #ifndef __STDIO_H__
10 =1 #define __STDIO_H__
11 =1
12 =1 #ifndef EOF
13 =1 #define EOF -1
14 =1 #endif
15 =1
16 =1 #ifndef NULL
17 =1 #define NULL ((void *) 0)
18 =1 #endif
19 =1
20 =1 #ifndef _SIZE_T
21 =1 #define _SIZE_T
22 =1 typedef unsigned int size_t;
23 =1 #endif
24 =1
C51 COMPILER V7.06 7279A_P2 08/26/2003 18:08:57 PAGE 6
25 =1 #pragma SAVE
26 =1 #pragma REGPARMS
27 =1 extern char _getkey (void);
28 =1 extern char getchar (void);
29 =1 extern char ungetchar (char);
30 =1 extern char putchar (char);
31 =1 extern int printf (const char *, ...);
32 =1 extern int sprintf (char *, const char *, ...);
33 =1 extern int vprintf (const char *, char *);
34 =1 extern int vsprintf (char *, const char *, char *);
35 =1 extern char *gets (char *, int n);
36 =1 extern int scanf (const char *, ...);
37 =1 extern int sscanf (char *, const char *, ...);
38 =1 extern int puts (const char *);
39 =1
40 =1 #pragma RESTORE
41 =1
42 =1 #endif
43 =1
17
18 /*宏uchar定义*/
19 #define uchar unsigned char
20
21
22 /*宏uint定义*/
23 #define uint unsigned int
24
25
26
27 /*定义系统软件的版本号与开发时间等信息*/
28 const uchar code ver_disp1[8]={0xA,0xA,0x0,0x80,0x0,0x0,0xA,0xA}; /*版本显示缓冲区*/
29
30 /*定义系统软件的版本号与开发时间等信息*/
31 const uchar code ver_disp2[8]={0xA,0xA,0x01,0x81,0x01,0x01,0xA,0xA}; /*版本显示缓冲区*/
32
33 /********************定义内存变量***********************/
34 //uchar system_disp[8]={0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f,0x0f}; /*显示缓冲区*/
35 //uchar system_dk=0; /*显示闪烁控制*/
36
37 /*
38 void Disp_Now()
39 {
40 HD7279_DISP(system_disp);
41 HD7279_DK(~system_dk);
42 }
43
44
45 void Ver_Now()
46 {
47 uchar i;
48
49 for(i=0;i<8;i++)
50 system_disp[i]=ver_disp1[i];
51
52 Disp_Now();
53
54 }
55
56 void Ver_Now1()
57 {
58 uchar i;
59
C51 COMPILER V7.06 7279A_P2 08/26/2003 18:08:57 PAGE 7
60 for(i=0;i<8;i++)
61 system_disp[i]=ver_disp2[i];
62
63 Disp_Now();
64
65 }
66
67 void Key_test()
68 {
69 uchar M,keyup;
70
71 keyup = 0;
72
73 printf("\r\n");
74 printf("HD7279A KeyBoard Test:\r\n");
75
76
77
78 while (1)
79 {
80
81 //键盘输入处理
82
83 if (KEY)
84 keyup=1;
85
86 if ((!KEY)&&keyup) //利用keyup状态量防止多次处理同一次按键
87 {
88 M = HD7279_GETKEY();
89 keyup=0;
90
91 printf("Key -- %bu\r\n",M);
92
93
94 }
95
96
97 }
98 }
99
100 */
C51 COMPILER V7.06 7279A_P2 08/26/2003 18:08:57 PAGE 8
ASSEMBLY LISTING OF GENERATED OBJECT CODE
C51 COMPILER V7.06 7279A_P2 08/26/2003 18:08:57 PAGE 9
NAME CLASS MSPACE TYPE OFFSET SIZE
==== ===== ====== ==== ====== ====
P0 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0080H 1
P1 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0090H 1
P2 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00A0H 1
P3 . . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00B0H 1
IEN0 . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00A8H 1
IEN1 . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00E8H 1
size_t . . . . . . . . . . . . . . . . TYPEDEF ----- U_INT ----- 2
ver_disp1. . . . . . . . . . . . . . . PUBLIC CODE ARRAY 0000H 8
ver_disp2. . . . . . . . . . . . . . . PUBLIC CODE ARRAY 0008H 8
TCON . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0088H 1
S0CON. . . . . . . . . . . . . . . . . SFR DATA U_CHAR 0098H 1
S1CON. . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00D8H 1
T2CON. . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00C8H 1
PSW. . . . . . . . . . . . . . . . . . SFR DATA U_CHAR 00D0H 1
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = ---- ----
CONSTANT SIZE = 16 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
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 + -