📄 test.lst
字号:
C51 COMPILER V7.01 TEST 11/14/2007 11:43:08 PAGE 1
C51 COMPILER V7.01, COMPILATION OF MODULE TEST
OBJECT MODULE PLACED IN test.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE test.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /*********************************************************************************************/
2 /* SED1520 */
3 /*********************************************************************************************/
4 #include <reg52.h>
5 /*===========================================================================================*/
6 #define uchar unsigned char
7 #define uint unsigned int
8 /*-------------------------------------------------------------------------------------------*/
9 #define ctc0_tl 0xf8
10 #define ctc0_th 0x4b
11 #define ctc1_th 0xfa
12 /*===========================================================================================*/
13 sbit lamp=P3^5; //signal lamp
14 /*===========================================================================================*/
15 uchar status=0;
16 uchar count=0;
17 uchar idata date[6];
18
19 extern void reset_ds1302(void);
20 extern void read_ds1302(uchar *);
21 extern void write_ds1302(uchar *);
22 /*********************************************************************************************/
23 void send_data(uchar type) //send data to GSM
24 {
25 1 TI=0;
26 1 SBUF=type;
27 1 do
28 1 {}
29 1 while (TI==0);
30 1 TI=0;
31 1 }
32 /*========================================================================================================
-*/
33 void send_string(uchar *address) //send string to GSM
34 {
35 1 while ((*address>=0x0a)&&(*address<0x80))
36 1 {
37 2 send_data(*address);
38 2 address++;
39 2 }
40 1 send_data('\r');
41 1 send_data('\n');
42 1 }
43 /*========================================================================================================
-*/
44 void ctc0() interrupt 1 using 1 //50mS/loop(verified)
45 {
46 1 TR0=0;
47 1 TL0=ctc0_tl;
48 1 TH0=ctc0_th;
49 1 TR0=1;
50 1 /*==============================================================================*/
51 1 count++;
52 1 }
53 /*===========================================================================================*/
C51 COMPILER V7.01 TEST 11/14/2007 11:43:08 PAGE 2
54 void cut_reset() //all interrupt reset
55 {
56 1 EA=0;
57 1 TMOD=0X21; //ctc1 is 9600bps,ctc0 is mod1(16bits)
58 1 TL0=ctc0_tl;
59 1 TH0=ctc0_th; //ctc0 start value(50mS)
60 1 TH1=ctc1_th; //9600bps(11.0592MHz)
61 1 TCON=0x50; //ctc0 and ctc1 start work,int0 is edge trigger
62 1 SCON=0x50; //UART is 8bits(mod1),receive allow.
63 1 PCON=0x80; //SMOD=1
64 1 ET0=1; //open ctc0 interrupt
65 1 EA=1; //open all interrupt
66 1 }
67 /*********************************************************************************************/
68 main()
69 {
70 1 uchar idata sum[20]="2000.12.18 21:16:37\0";
71 1
72 1 status=0;
73 1 reset_ds1302();
74 1 cut_reset();
75 1 date[0]=26;date[1]=59;date[2]=23;date[3]=31;date[4]=12;date[5]=9; //2009.12.31 23:59:26
76 1 write_ds1302(date);
77 1 /*========================================================================================*/
78 1 while(1)
79 1 { uint ii;
80 2 if (count>=20)
81 2 {
82 3 read_ds1302(date);
83 3 sum[17]=date[0]/10+0x30;sum[18]=date[0]%10+0x30; //second
84 3 sum[14]=date[1]/10+0x30;sum[15]=date[1]%10+0x30; //minute
85 3 sum[11]=date[2]/10+0x30;sum[12]=date[2]%10+0x30; //hour
86 3 sum[8]=date[3]/10+0x30;sum[9]=date[3]%10+0x30; //day
87 3 sum[5]=date[4]/10+0x30;sum[6]=date[4]%10+0x30; //month
88 3
89 3 ii= date[5]+2000;
90 3
91 3 sum[0]=ii/1000+0x30;ii%=1000;
92 3 sum[1]=ii/100+0x30;ii%=100;
93 3 sum[2]=ii/10+0x30;ii%=10;
94 3 sum[3]=ii+0x30;
95 3
96 3 send_string(sum);
97 3 count=0;
98 3 lamp=~lamp;
99 3 }
100 2 /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
101 2 }
102 1 }
103 /*********************************************************************************************/
104
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 410 ----
CONSTANT SIZE = 20 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 2 2
IDATA SIZE = 6 20
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILER V7.01 TEST 11/14/2007 11:43:08 PAGE 3
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -