📄 8279setting.lst
字号:
C51 COMPILER V7.50 8279SETTING 01/16/2009 20:31:50 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE 8279SETTING
OBJECT MODULE PLACED IN 8279setting.OBJ
COMPILER INVOKED BY: D:\学习软件\keil\C51\BIN\C51.EXE 8279setting.c ROM(COMPACT) BROWSE DEBUG OBJECTEXTEND
line level source
1 #include<8279setting.h>
2 #include<ABSACC.H>
3 #include<reg52.H>
4 #define COM XBYTE [0x8001] //8279命令据口地址
5 #define DAT XBYTE [0x8000] //8279数据口地址
6 #define uchar unsigned char
7
8 uchar code key_table[16]={1,4,7,0,2,5,8,'e',3,6,9,'f','a','b','c','d'};//按键编码
9 uchar code dis_table[12]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40,0x00};//数字代码0~9,'-'
10
11 void init_8279(void)//8279初始化
12 {
13 1 command_write_8279(0xd1);
14 1 command_write_8279(0x00);
15 1 command_write_8279(0x30);
16 1 }
17
18 void busy_8279(void)//等待忙
19 { uchar status;
20 1 P0=0X80;
21 1 do
22 1 status=COM;
23 1 while(status&0x80==0);
24 1 }
25
26 void command_write_8279(uchar command)/*写命令*/
27 {
28 1 busy_8279();
29 1 COM=command;
30 1 }
31 void data_write_8279(uchar w_data)/*写数据*/
32 {
33 1 busy_8279();
34 1 DAT=w_data;
35 1 }
36 uchar status_read_8279(void)/*读状态*/
37 {
38 1 uchar status;
39 1 status=COM;
40 1 return status;
41 1 }
42
43 uchar data_read_8279(void)/*读数据*/
44 {
45 1 uchar r_data;
46 1 r_data=DAT;
47 1 return r_data;
48 1 }
49
50 uchar deky_8279(void)/*判断是否有键按下子程序*/
51 {
52 1 uchar k;
53 1 k=COM;
54 1 return(k&0x1f);
55 1 }
C51 COMPILER V7.50 8279SETTING 01/16/2009 20:31:50 PAGE 2
56
57 uchar keyin_8279(void)/*取键值函数*/
58 {
59 1 uchar i,j1,k1;
60 1 while(deky_8279()==0);
61 1 command_write_8279(0x40);
62 1 i=data_read_8279();
63 1 j1=(i&0x18)>>3;
64 1 k1=i&0x03;
65 1 i=4*j1+k1;
66 1 return(key_table[i]);
67 1 }
68
69 void disp(uchar pos, uchar disp_data)//对应位置上显示相应数字
70 {
71 1 command_write_8279(pos+0x80);
72 1 data_write_8279(dis_table[disp_data]);
73 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 118 ----
CONSTANT SIZE = 28 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 1
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 + -