📄 text1.lst
字号:
C51 COMPILER V7.50 TEXT1 05/27/2006 19:37:08 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 Uart_Init();
4 sbit P10=0x90;
5 sbit P11=0x91;
6 sbit P12=0x92;
7 sbit P13=0x93;
8 bit Change_Flag;
9 void Update_LED();
10 xdata int nCounter=0;
11 xdata int nIndex=0;
12 xdata int nDataToDisplay=0;
13 char Table[10]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90};
14 main()
15 { Uart_Init();
16 1 TH0=0x3C; /* 计数初值写入TH0 */
17 1 TL0=0xAF; /* 写入计数初值到TL0 */
18 1 ET0=1; /* 定时器0中断允许*/
19 1 EA=1; /* 全局中断允许 */
20 1 TF0=0; /* 定时器0中断标志位清0 */
21 1 TR0=1; /* 定时器0准备开始 */
22 1 P10=1;
23 1 Change_Flag=0;
24 1 nCounter=0;
25 1 while(1)
26 1 { if(Change_Flag==1)
27 2 {Update_LED();
28 3 if(nDataToDisplay>9999) nDataToDisplay=0;
29 3 printf("counter refreshed %d \n",nDataToDisplay);
30 3 }
31 2 }
32 1 }
33 void Timer0_Overflow() interrupt 1 using 0
34 { TH0=0x3C; /* 计数初值写入TH0 */
35 1 TL0=0xAF; /* 写入计数初值到TL0 */
36 1 if(nCounter==20)
37 1 {nCounter=0;
38 2 nDataToDisplay++;
39 2 Change_Flag=1;
40 2 /* 计数时间到1s计数值加1 */
41 2 }
42 1 nCounter++;
43 1 }
44 Uart_Init()
45 {SCON = 0x52; /* 设置串行口控制寄存器SCON*/
46 1 TMOD = 0x21; /* 12M时钟时波特率为2400 */
47 1 TCON = 0x69; /* TCON */
48 1 TH1 = 0xf3; /* TH1 */
49 1 }
50 void Update_LED()
51 { int nTemp;
52 1 nTemp=nDataToDisplay;
53 1 P13=0;
54 1 nIndex=nTemp%10;
55 1 SBUF=Table[nIndex];
C51 COMPILER V7.50 TEXT1 05/27/2006 19:37:08 PAGE 2
56 1 P13=1;
57 1 // while(!TI); /* 等待发送完毕 */
58 1 // TI=0;
59 1 nTemp/=10;
60 1 P12=0;
61 1 nIndex=nTemp%10;
62 1 SBUF=Table[nIndex];
63 1 P12=1;
64 1 // while(!TI);/* 等待发送完毕 */
65 1 // TI=0;
66 1 nTemp/=10;
67 1 P11=0;
68 1 nIndex=nTemp%10;
69 1 SBUF=Table[nIndex];
70 1 P11=1;
71 1 // while(!TI);/* 等待发送完毕 */
72 1 // TI=0;
73 1 nTemp/=10;
74 1 P10=0;
75 1 nIndex=nTemp%10;
76 1 SBUF=Table[nIndex];
77 1 P10=1;
78 1 Change_Flag=0;
79 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 311 ----
CONSTANT SIZE = 24 ----
XDATA SIZE = 6 ----
PDATA SIZE = ---- ----
DATA SIZE = 10 ----
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 + -