📄 wled0.lst
字号:
C51 COMPILER V7.05 WLED0 02/16/2006 11:55:35 PAGE 1
C51 COMPILER V7.05, COMPILATION OF MODULE WLED0
OBJECT MODULE PLACED IN WLED0.OBJ
COMPILER INVOKED BY: C:\SiLabs\MCU\IDEfiles\C51\BIN\C51.exe WLED0.C DB OE
stmt level source
1 //参考程序B:WLED0.C程序功能: 数码管将轮流点亮,显示从"0"到"F"
2 #include <c8051f020.h>
3 #define SYSCLK 2000000 //系统工作频率
4 #define PORTA 0x8000 // 8255 A口地址
5 #define PORTB 0x8001 // 8255 B口地址
6 #define PORTC 0x8002 // 8255 C口地址
7 #define PORTCON 0x8003 // 8255 控制口地址
8 void PORT_Init (void);
9 void main (void)
10 {
11 1 unsigned int i;
12 1 unsigned char k;
13 1 char j;
14 1 unsigned char xdata * Pointm;
15 1 unsigned char code F7SEG[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,
16 1 0x39,0x5e,0x79,0x71};
17 1 WDTCN = 0xde; //禁止看门狗定时器
18 1 WDTCN = 0xad;
19 1 PORT_Init ();
20 1 Pointm=PORTCON;
21 1 *Pointm=0x80; //8255初始化,设定B口输出,C口输出,A口不用
22 1 while(1) //循环显示
23 1 {
24 2 for(j=0;j<16;j++) //依次显示"0"-----"F",共16个数字
25 2 {
26 3 k=F7SEG[j]; // 查表,得到字形码数值存放在变量K中
27 3 //k=0x3f;
28 3
29 3 Pointm=PORTB; // B口存放字位码
30 3 *Pointm=0x01; //从左边第一位数码管开始显示数字
31 3 Pointm=PORTC; //C口存放字形码
32 3 *Pointm=k; //显示K中存放的字形码
33 3 for(i=0;i<=32000;i++); //延时
34 3 Pointm=PORTB;
35 3 *Pointm=0x02; //左边第二位数码管开始显示数字
36 3 for(i=0;i<=32000;i++);
37 3 Pointm=PORTB;
38 3 *Pointm=0x04; //左边第三位数码管开始显示数字
39 3 for(i=0;i<=32000;i++);
40 3 Pointm=PORTB;
41 3 *Pointm=0x08; //左边第四位数码管开始显示数字
42 3 for(i=0;i<=32000;i++);
43 3 Pointm=PORTB;
44 3 *Pointm=0x10; //左边第五位数码管开始显示数字
45 3 for(i=0;i<=32000;i++);
46 3 Pointm=PORTB;
47 3 *Pointm=0x20; //左边第六位数码管开始显示数字
48 3 for(i=0;i<=32000;i++);
49 3 }
50 2 }
51 1 }
52 void PORT_Init (void)
53 {
54 1 EMI0CF |= 0x2c; /*EMIF工作在地址/数据复用方式,只用外部存储器,ALE高*/
55 1 /*低脉宽占1个SYSCLK周期*/
C51 COMPILER V7.05 WLED0 02/16/2006 11:55:35 PAGE 2
56 1 EMI0TC |= 0x6d; /*地址建立/保持时间占1个SYSCLK周期,/WR和/RD占12个SYSCLK周期*/
57 1 P74OUT=0x3f; /*P7为漏极开路,P4,P5,P6为推拉方式*/
58 1 }
59
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 183 ----
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 + -