📄 isl1208.lst
字号:
C51 COMPILER V7.04 ISL1208 03/05/2006 15:42:56 PAGE 1
C51 COMPILER V7.04, COMPILATION OF MODULE ISL1208
OBJECT MODULE PLACED IN ISL1208.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE ISL1208.C BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include "ISL1208.H"
2 //#include "viic_c51.h"
3 #include "viic.h"
4
5
6 uchar ISL1208_Init();
7 uchar ISL1208_ReadTime(uchar *time);
8 uchar ISL1208_WriteTime(uchar *time);
9
10
11 uchar ISL1208_OpenSound(uchar freq);
12 uchar ISL1208_CloseSound();
13
14
15
16 /*
17 ******************************************************************
18 功能: 初始化允许自动复位,设置允许写时钟,
19 去掉报警功能
20 操作 REG_STATUS,REG_INTERRUPT,REG_RESERVED,REG_TRIMMING,REG_COMPENSATE
21 *******************************************************************
22 */
23 uchar ISL1208_Init()
24 {
25 1 idata uchar strTemp[5];
26 1
27 1 if(IRcvStr(ADDR_ISL1208,REG_STATUS,strTemp,2)==0)
28 1 {
29 2 return ID_ERR;
30 2 }
31 1 strTemp[0]|=(RTC_AUTO_RESET|RTC_WRITE_ENABLE);
32 1 strTemp[1]=(strTemp[1]&0x0f);
33 1
34 1
35 1 if(ISendStr(ADDR_ISL1208,0x07,strTemp,2)==0)
36 1 {
37 2 return ID_ERR;
38 2 }
39 1
40 1 return ID_OK;
41 1
42 1
43 1 }
44 /*
45 *******************************************************************
46 读出结果:cen,year,mon,day,hour min,sec,week
47 *******************************************************************
48 */
49
50 uchar ISL1208_ReadTime(uchar *time)
51 {
52 1 idata uchar strTemp[8];
53 1
54 1 if(IRcvStr(ADDR_ISL1208,0x00,strTemp,7)==0)
55 1 {
C51 COMPILER V7.04 ISL1208 03/05/2006 15:42:56 PAGE 2
56 2
57 2 return ID_ERR;
58 2 }
59 1
60 1 time[0]=0x20;
61 1 time[1]=strTemp[5];//year
62 1 time[2]=strTemp[4];//mon
63 1 time[3]=strTemp[3];//day
64 1 time[4]=(strTemp[2] & MASK_HOUR_24);//h
65 1 time[5]=strTemp[1];//min
66 1 time[6]=strTemp[0];//sec
67 1 time[7]=strTemp[6];//week
68 1
69 1
70 1 return ID_OK;
71 1
72 1 }
73 /*
74 *******************************************************************
75 读出结果:cen,year,mon,day,hour min,sec,week
76 *******************************************************************
77 */
78 uchar ISL1208_WriteTime(uchar *time)
79 {
80 1 idata uchar strTemp[8];
81 1
82 1 strTemp[5]= time[1];//year
83 1 strTemp[4]= time[2];//mon
84 1 strTemp[3]= time[3];//day
85 1 strTemp[2]= (time[4]|HOUR_MODE_24);//h
86 1 strTemp[1]= time[5];//min
87 1 strTemp[0]= time[6];//sec
88 1 strTemp[6]= time[7];//week
89 1
90 1
91 1 if(ISendStr(ADDR_ISL1208,0x00,strTemp,7)==0)
92 1 {
93 2 return ID_ERR;
94 2 }
95 1 return ID_OK;
96 1
97 1 }
98
99 uchar ISL1208_OpenSound(uchar freq)
100 {
101 1 uchar strTemp[2];
102 1
103 1 strTemp[0]=(freq&0x0f);
104 1
105 1 if(ISendStr(ADDR_ISL1208,0x08,strTemp,1)==0)
106 1 {
107 2 return ID_ERR;
108 2 }
109 1 return ID_OK;
110 1
111 1 }
112 uchar ISL1208_CloseSound()
113 {
114 1 uchar strTemp[2];
115 1
116 1 strTemp[0]=0x00;
117 1 if(ISendStr(ADDR_ISL1208,0x08,strTemp,1)==0)
C51 COMPILER V7.04 ISL1208 03/05/2006 15:42:56 PAGE 3
118 1 {
119 2 return ID_ERR;
120 2 }
121 1 return ID_OK;
122 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 312 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 7
IDATA SIZE = ---- 21
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 + -