📄 shu_ma_guan.lst
字号:
C51 COMPILER V7.02a SHU_MA_GUAN 08/21/2007 15:09:14 PAGE 1
C51 COMPILER V7.02a, COMPILATION OF MODULE SHU_MA_GUAN
OBJECT MODULE PLACED IN shu_ma_guan.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE shu_ma_guan.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /*********************************************
2 实验任务:学习数码管的动态显示
3 实验功能:数码管显示1028四个数字
4 *********************************************/
5
6
7 #include<AT89X52.h>
8
9 code unsigned char seg7code[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,
10 0x82,0xf8,0x80,0x90,0xff}; //共阳数码管段码
11
12
13 //***********************************************************
14
15 // 延时子程序
16
17 //************************************************************
18 void delay1ms()
19 {
20 1 unsigned char i;
21 1 for(i=124;i>0;i--); //延时124*8+10=1002us
22 1 }
23
24 //***********************************************************
25
26 //显示函数,显示四位的date数据
27
28 //P2口接段码,P1.0-P1.3接位选
29
30 //************************************************************
31
32 void LED_display(int date) //显示4位数
33 {
34 1 P0=0xfe; //P0.0=0,选通第一位
35 1 P2=seg7code[date/1000]; //取出千位,查表,输出
36 1 delay1ms();
37 1 P2=0xff; //消隐
38 1
39 1 P0=0xfd; //P0.1=0,选通第二位
40 1 P2=seg7code[date%1000/100];
41 1 delay1ms();
42 1 P2=0xff; //消隐
43 1
44 1 P0=0xfb; //P0.3=0,选通第三位
45 1 P2=seg7code[date%100/10];
46 1 delay1ms();
47 1 P2=0xff; //消隐
48 1
49 1 P0=0xf7; //P0.3=0,选通第四位
50 1 P2=seg7code[date%10];
51 1 delay1ms();
52 1 P2=0xff; //消隐
53 1 }
54
55 main()
C51 COMPILER V7.02a SHU_MA_GUAN 08/21/2007 15:09:14 PAGE 2
56 {
57 1 int display_date=1008; //显示"1028"四个数字
58 1 while(1)
59 1 {
60 2 LED_display(display_date);
61 2 }
62 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 139 ----
CONSTANT SIZE = 11 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 2
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 + -