📄 dtled.lst
字号:
C51 COMPILER V6.23a DTLED 04/06/2005 10:30:04 PAGE 1
C51 COMPILER V6.23a, COMPILATION OF MODULE DTLED
OBJECT MODULE PLACED IN DTLED.OBJ
COMPILER INVOKED BY: C:\TOOLS\Keil\C51\BIN\C51.EXE DTLED.C BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /*实验名称:动态8字数码管显示
2 功能:数码管显示123456
3 作者:http://www.mcuprog.com
4 05-02-01
5 */
6
7 #include <reg51.h>
8 //LCD的口线
9 sbit E=P3^5;
10 sbit RW=P3^6;
11 sbit RS=P3^7;
12 //8字LED的连接方法
13 //P0.7 P.06 P0.5 P0.4 P0.3 P0.2 P0.1 P0.0
14 // H G F E D C B A
15
16 unsigned char code ledcode[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,
17 0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e}; //数码管段码表
18
19 void Delay_ms(unsigned int t); //延时 t秒钟 :fosc=12MHz
20
21 void main(void)
22 {
23 1 unsigned char led12,led34,led56;
24 1 E=0; //取消LCD对LED的影响
25 1 RW=0;
26 1 RS=1;
27 1 led12=0x12;
28 1 led34=0x34;
29 1 led56=0x56;
30 1 while(1)
31 1 {
32 2 P2=0xff; //关显示
33 2 P0=ledcode[(led12>>4)&0x0f];
34 2 P2=0xfe;
35 2 Delay_ms(1);
36 2
37 2 P2=0xff;
38 2 P0=ledcode[led12&0x0f];
39 2 P2=0xfd;
40 2 Delay_ms(1);
41 2
42 2 P2=0xff; //关显示
43 2 P0=ledcode[(led34>>4)&0x0f];
44 2 P2=0xfb;
45 2 Delay_ms(1);
46 2
47 2 P2=0xff;
48 2 P0=ledcode[led34&0x0f];
49 2 P2=0xf7;
50 2 Delay_ms(1);
51 2
52 2 P2=0xff; //关显示
53 2 P0=ledcode[(led56>>4)&0x0f];
54 2 P2=0xef;
55 2 Delay_ms(1);
C51 COMPILER V6.23a DTLED 04/06/2005 10:30:04 PAGE 2
56 2
57 2 P2=0xff;
58 2 P0=ledcode[led56&0x0f];
59 2 P2=0xdf;
60 2 Delay_ms(1);
61 2 }
62 1 }
63
64 void Delay_ms(unsigned int t) //Delay t ms for 12MHz crystal
65 {unsigned char i;
66 1 while(t--)
67 1 {for(i=0;i<125;i++);
68 2 }
69 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 200 ----
CONSTANT SIZE = 16 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 3
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 + -