📄 text1.lst
字号:
C51 COMPILER V7.50 TEXT1 05/28/2006 19:18:45 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE TEXT1
OBJECT MODULE PLACED IN Text1.OBJ
COMPILER INVOKED BY: e:\Keil\C51\BIN\C51.EXE Text1.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <reg51.h>
2 #include<stdio.h>
3 #define P8279DataAddr 0x0000 //a0=0,8279数据地址
4 #define P8279CommandAddr 0x8000 //a0=1,命令地址
5 #define uchar unsigned char
6 #define uint unsigned int
7 uchar keyNumber; //获取的键盘值
8 Uart_Init();
9 sbit P26=0xA6; //P2.6位
10 sbit P27=0xA7; //P2.7位
11 void SendCommand(uchar c8279com);//发送命令
12 void SendData(uchar c8279data);//发送数据
13 uchar GetData() ; //获得键值
14 void Delay() ; //延时子程序
15 bit Change_Flag;
16 void Update_LED();
17 main()
18 { Uart_Init();
19 1 P0=0XFF;
20 1 P1=0XFF;
21 1 P2=0XFF;
22 1 P3=0XFF;
23 1 Delay();
24 1 EX0=1; /* 外部中断0允许 */
25 1 EA=1; /* 全局中断允许 */
26 1 SendCommand(0x00); //没有特殊要求一般都可以这样初始化0
27 1 SendCommand(0x2a); //分频10
28 1 SendCommand(0xdf); //清屏
29 1 while(1)
30 1 { ;
31 2 }
32 1 }
33 void Int0_isr() interrupt 0 using 0
34 {
35 1 SendCommand(0xdf); //清屏
36 1 SendCommand(0x40); //发出读键盘命令
37 1 keyNumber=GetData(); //读键盘
38 1
39 1 if(keyNumber<0x0f) //这里按顺序接了16个键,返回的键盘码为0~0X0F
40 1 {
41 2 SendCommand(0x80);
42 2 SendData(keyNumber);
43 2 keyNumber<<=4;
44 2 SendCommand(0x83); //写LED命令,在第三个数码管上显示
45 2 SendData(keyNumber); //写LED显示内容
46 2 }
47 1 else
48 1 SendCommand(0xd3); //如果按了最后一个键0X0F,就全屏显示0
49 1 }
50 Uart_Init()
51 {SCON = 0x52; /* 设置串行口控制寄存器SCON*/
52 1 TMOD = 0x21; /* 12M时钟时波特率为2400 */
53 1 TCON = 0x69; /* TCON */
54 1 TH1 = 0xf3; /* TH1 */
55 1 }
C51 COMPILER V7.50 TEXT1 05/28/2006 19:18:45 PAGE 2
56 void SendCommand(uchar P8279com) //发送命令字
57 {
58 1 *((uchar xdata *)P8279CommandAddr)=P8279com;
59 1 Delay();
60 1 }
61 void SendData(uchar P8279data) //发送数据字
62 {
63 1 *((uchar xdata *)P8279DataAddr)=P8279data;
64 1 Delay();
65 1 }
66 uchar GetData() //获取键值
67 {
68 1 return*((uchar xdata *)P8279DataAddr);
69 1 }
70 void Delay()
71 {
72 1 uint i;
73 1 for(i=0;i<200;i++);
74 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 169 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 1 ----
IDATA SIZE = ---- ----
BIT SIZE = 1 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -