📄 main.lst
字号:
C51 COMPILER V7.50 MAIN 05/21/2009 07:54:17 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c OPTIMIZE(0,SPEED) BROWSE DEBUG OBJECTEXTEND
line level source
1 #include"160128_driver.h"
2 #include"t6963.h"
3 #include"tab.h"
4 #include"reg51.h"
5 unsigned char i=0,j=0,k=0,m=0,n=0,p=0;
6 bit b;
7 //演示500ms子程序
8 /*void Delay_500ms()
9 {
10 unsigned char a,b,c;
11 for(a=0;a<250;a++)
12 for(b=0;b<3;b++)
13 for(c=0;c<220;c++);
14 }*/
15 //初始化显示
16 void Init_disply()
17 {
18 1 LCD_Init(0x00,0x00,0x14,0x40,0x01,0x14,0xa1,MOD_XOR,0x9c);
19 1 Clear_LCD();
20 1 /*CGRAM偏置地址设置函数*/
21 1 Write_CGORM();
22 1 Han_Zi(2,0,0x81);
23 1 Han_Zi(4,0,0x85);
24 1 Han_Zi(6,0,0x89);
25 1 Han_Zi(8,0,0x8d);
26 1 Han_Zi(10,0,0x91);
27 1 Han_Zi(2,18,0x95);
28 1 Han_Zi(4,18,0x99);
29 1 Han_Zi(6,18,0x9d);
30 1 Han_Zi(8,18,0xa1);
31 1 Han_Zi(10,18,0xa5);
32 1 Han_Zi(10,12,0xa9);
33 1 Circle(123,79,1,1);
34 1 Circle(123,79,2,1);
35 1 Circle(63,139,1,1);
36 1 Circle(63,139,2,1);
37 1 Circle(3,79,1,1);
38 1 Circle(3,79,2,1);
39 1 Circle(63,19,1,1);
40 1 Circle(63,19,2,1);
41 1 Set_xy(5,4);
42 1 Write_8_Data(0x2d,0xc4);
43 1 Set_xy(5,5);
44 1 Write_8_Data(0x41,0xc4);
45 1 Set_xy(5,6);
46 1 Write_8_Data(0x44,0xc4);
47 1 Set_xy(5,7);
48 1 Write_8_Data(0x45,0xc4);
49 1
50 1 Set_xy(5,9);
51 1 Write_8_Data(0x29,0xc4);
52 1 Set_xy(5,10);
53 1 Write_8_Data(0x4e,0xc4);
54 1 Set_xy(5,12);
55 1 Write_8_Data(0x23,0xc4);
C51 COMPILER V7.50 MAIN 05/21/2009 07:54:17 PAGE 2
56 1
57 1 Set_xy(5,13);
58 1 Write_8_Data(0x48,0xc4);
59 1 Set_xy(5,14);
60 1 Write_8_Data(0x49,0xc4);
61 1 Set_xy(5,15);
62 1 Write_8_Data(0x4e,0xc4);
63 1 Set_xy(5,16);
64 1 Write_8_Data(0x41,0xc4);
65 1 Circle(115,109,1,1);
66 1 Circle(93,131,1,1);
67 1 Circle(33,131,1,1);
68 1 Circle(11,109,1,1);
69 1 Circle(11,49,1,1);
70 1 Circle(33,27,1,1);
71 1 Circle(93,27,1,1);
72 1 Circle(115,49,1,1);
73 1 Circle(63,79,60,1);
74 1 }
75 //时钟显示子程序
76 void Time_disply()
77 {
78 1 Set_xy(11,6);
79 1 Write_Data1(p/10+0x10,0xc4);
80 1 Set_xy(11,7);
81 1 Write_Data1(p%10+0x10,0xc4);
82 1 Set_xy(11,8);
83 1 Write_Data1(0x1a,0xc4);
84 1 Set_xy(11,9);
85 1 Write_Data1(n/10+0x10,0xc4);
86 1 Set_xy(11,10);
87 1 Write_Data1(n%10+0x10,0xc4);
88 1 Set_xy(11,11);
89 1 Write_Data1(0x1a,0xc4);
90 1 Set_xy(11,12);
91 1 Write_Data1(i/10+0x10,0xc4);
92 1 Set_xy(11,13);
93 1 Write_Data1(i%10+0x10,0xc4);
94 1 }
95
96 void main()
97 {
98 1 TH0 = 0x3C; //定时100ms
99 1 TL0 = 0xB0;
100 1 TMOD = 1;
101 1 TR0 = 1;
102 1 ET0 = 1;
103 1 EA = 1;
104 1 Init_disply();
105 1 while(1)
106 1 { Time_disply();
107 2 Line(Sec[i][0],Sec[i][1],63,79,1);
108 2 Line(Min[n][0],Min[n][1],63,79,1);
109 2 Line(Hour[m][0],Hour[m][1],63,79,1);
110 2 Circle(63,79,2,1);
111 2 while(!b);
112 2 {
113 3 Line(Sec[i][0],Sec[i][1],63,79,0);b=0;i++;
114 3 if(i==60)
115 3 {
116 4 i=0;Line(Min[n][0],Min[n][1],63,79,0);j++;n++;
117 4 if(j==12)
C51 COMPILER V7.50 MAIN 05/21/2009 07:54:17 PAGE 3
118 4 {
119 5 j=0;Line(Hour[m][0],Hour[m][1],63,79,0);m++;
120 5 if(m==60)m=0;
121 5 }
122 4 if(n==60){n=0;p++;if(p==12)p=0;}
123 4 }
124 3 }
125 2 }
126 1 }
127 void time_0() interrupt 1 using 0
128 {
129 1 TH0=0x3C;
130 1 TL0=0xB0;
131 1 k++;
132 1 if(k==20)
133 1 {
134 2 k=0;
135 2 b=1;
136 2 }
137 1 }
138
139
140
141
142
143
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 1111 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 6 ----
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 + -