📄 1302.lst
字号:
C51 COMPILER V8.02 1302 11/11/2008 22:44:43 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE 1302
OBJECT MODULE PLACED IN 1302.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 1302.c BROWSE DEBUG OBJECTEXTEND
line level source
1
2 #include<reg52.h>
3 #include" lcd.h "
4 #include" 1302.h "
5 sbit ClockClk = P3 ^ 5;//ds1302_clk
6 sbit ClockDat = P3 ^ 6;//ds1302_dat
7 sbit CockRST = P3 ^ 7;//ds1302_rst
8 extern bit Flag;
9 //为了编程方便定义的位变量
10 sbit a0 = ACC ^ 0;
11 sbit a1 = ACC ^ 1;
12 sbit a2 = ACC ^ 2;
13 sbit a3 = ACC ^ 3;
14 sbit a4 = ACC ^ 4;
15 sbit a5 = ACC ^ 5;
16 sbit a6 = ACC ^ 6;
17 sbit a7 = ACC ^ 7;
18
19
20 /*************************1 3 0 2 *****************************/
21 void ClockOut(uchar dd)
22 {
23 1 ACC=dd;
24 1 ClockDat=a0; ClockClk=1; ClockClk=0;
25 1 ClockDat=a1; ClockClk=1; ClockClk=0;
26 1 ClockDat=a2; ClockClk=1; ClockClk=0;
27 1 ClockDat=a3; ClockClk=1; ClockClk=0;
28 1 ClockDat=a4; ClockClk=1; ClockClk=0;
29 1 ClockDat=a5; ClockClk=1; ClockClk=0;
30 1 ClockDat=a6; ClockClk=1; ClockClk=0;
31 1 ClockDat=a7; ClockClk=1; ClockClk=0;
32 1 }
33
34 uchar ClockIn(void)
35 {
36 1 ClockDat=1;
37 1 a0=ClockDat;
38 1 ClockClk=1; ClockClk=0; a1=ClockDat;
39 1 ClockClk=1; ClockClk=0; a2=ClockDat;
40 1 ClockClk=1; ClockClk=0; a3=ClockDat;
41 1 ClockClk=1; ClockClk=0; a4=ClockDat;
42 1 ClockClk=1; ClockClk=0; a5=ClockDat;
43 1 ClockClk=1; ClockClk=0; a6=ClockDat;
44 1 ClockClk=1; ClockClk=0; a7=ClockDat;
45 1 return(ACC);
46 1 }
47
48 uchar ReadClock(uchar ord)
49 {
50 1 uchar dd=0;
51 1 if( Flag )
52 1 {
53 2 ClockClk=0;
54 2 CockRST=0;
55 2 CockRST=1;
C51 COMPILER V8.02 1302 11/11/2008 22:44:43 PAGE 2
56 2 ClockOut(ord);
57 2 dd=ClockIn();
58 2 CockRST=0;
59 2 ClockClk=1;
60 2 }
61 1 return(dd);
62 1 }
63
64 void WriteClock(uchar ord, uchar dd)
65 {
66 1 if( Flag )
67 1 {
68 2 ClockClk=0;
69 2 CockRST=0;
70 2 CockRST=1;
71 2 ClockOut(ord);
72 2 ClockOut(dd);
73 2 CockRST=0;
74 2 ClockClk=1;
75 2 }
76 1 }
77
78
79
80 /*--------------------时钟的初始化---------------------------*/
81 void Init1302(void)
82 {
83 1
84 1 if( Flag )
85 1 {
86 2
87 2 WriteClock(0x8e,0x00); //写入允许
88 2 WriteClock(0x8c,0x08); //以下写入初始化时间 日期:08/11/10.星期: 3. 时间: 16:59:55
89 2 WriteClock(0x88,0x11);
90 2 WriteClock(0x86,0x10);
91 2 WriteClock(0x8a,0x03);
92 2 WriteClock(0x84,0x16);
93 2 WriteClock(0x82,0x59);
94 2 WriteClock(0x80,0x55);
95 2 WriteClock(0x8e,0x80); //禁止写入
96 2 }
97 1 }
98
99
100
101
102
103
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 240 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
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 + -