⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 isl1208.h

📁 isl1208 program using c for clock
💻 H
📖 第 1 页 / 共 2 页
字号:
 |                 1001:           2Hz;                                               |
 |                 1010:           1Hz;                                               |
 |                 1011:         1/2Hz;                                               |
 |                 1100:         1/4Hz;                                               |
 |                 1101:         1/8Hz;                                               |
 |                 1110:        1/16Hz;                                               |
 |                 1111:        1/32Hz。                                               |
 +-------------------------------------------------------------------------------------*/
#define REG_INTERRUPT        8  // 时钟控制寄存器。
#define AMALR_INTERRUPT   0x80
#define ALARM_ENABLED     0x40
#define LOW_POWER_MODE    0x20
#define BATTERY_NO_OUTPUT 0x10
                        // Fout/#IRQ 引脚输出方波频率选择常量:
#define FREQUENCY_NO_OUT  0x00
#define FREQUENCY_32768   0x01
#define FREQUENCY_4096    0x02
#define FREQUENCY_1024    0x03
#define FREQUENCY_64      0x04
#define FREQUENCY_32      0x05
#define FREQUENCY_16      0x06
#define FREQUENCY_8       0x07
#define FREQUENCY_4       0x08
#define FREQUENCY_2       0x09
#define FREQUENCY_1HZ     0x0A
#define FREQUENCY_1_2     0x0B
#define FREQUENCY_1_4     0x0C
#define FREQUENCY_1_8     0x0D
#define FREQUENCY_1_16    0x0E
#define FREQUENCY_1_32    0x0F
/*--------------------------------------------------------------------------------------+
 |  保留寄存器 Reserved(地址:0x09)。                                                 |
 +-------------------------------------------------------------------------------------*/
#define REG_RESERVED         9
/*--------------------------------------------------------------------------------------+
 |  振荡器调整控制寄存器 Trimming(地址:0x0A),用于控制芯片内部振荡器负载电容和供电状 |
 |          态,以调整计时基准频率的准确性。                                            |
 |      bit7~6:BMATR  芯片不同工作电源负载电容(Cbat-Cvdd)控制。                    |
 |                 00:      0pF(无差别);                                            |
 |                 01:   -0.5pF(≈+2ppm);                                           |
 |                 10:   +0.5pF(≈-2ppm);                                           |
 |                 11:      1pF(≈+4ppm)。                                           |
 |      bit5~0:ATR    控制内部振荡器负载电容容量:                                    |
 |                           __                                                         |
 |                        16×b5+8×b4+4×b3+2×b2+1×b1+0.5×b0+9                |
 |              Cload = ------------------------------------------------(pF)         |
 |                __                            2                                       |
 |      b5=0 时,b5=1。例,ATR=0_0000 时,Cload=12.5pF;ATR=1_0000 时,则为 4.5pF。|
 +-------------------------------------------------------------------------------------*/
#define REG_TRIMMING        10  // 
/*--------------------------------------------------------------------------------------+
 |  振荡器精度调整控制寄存器 Digital(地址:0x0B),用于数字方式调整芯片时钟计时精度。  |
 |      bit7~3:保留。                                                                 |
 |      bit2~0:DTR    调整范围确定。                                                  |
 |                 000:  不调整(缺省值);                                            |
 |                 001:    +20ppm;                                                    |
 |                 010:    +40ppm;                                                    |
 |                 011:    +60ppm;                                                    |
 |                 100:      0;                                                       |
 |                 101:    -20ppm;                                                    |
 |                 110:    -40ppm;                                                    |
 |                 111:    -60ppm。                                                    |
 +-------------------------------------------------------------------------------------*/
#define REG_COMPENSATE      11  // 计时补偿寄存器。
/*--------------------------------------------------------------------------------------+
 |  闹钟秒寄存器 ASecond(地址:0x0C),用于设置/读取闹钟秒值。                        |
 |      bit7:   ESCA   闹钟秒检测控制标志位。                                          |
 |                 1:    闹钟是否闹铃判断时检测秒寄存器值是否一致;                    |
 |                 0:    闹钟闹铃判断时不检测秒寄存器值。                              |
 |      bit6~0:Second BCD 十进制闹钟秒值。                                            |
 +-------------------------------------------------------------------------------------*/
#define REG_ASECOND         12  // 闹钟秒值寄存器。
#define RTC_ALARM_ENABLE  0x80
/*--------------------------------------------------------------------------------------+
 |  闹钟分寄存器 AMinute(地址:0x0D),用于设置/读取闹钟分值。                        |
 |      bit7:   EMNA   闹钟分检测控制标志位。                                          |
 |                 1:    闹钟是否闹铃判断时检测分寄存器值是否一致;                    |
 |                 0:    闹钟闹铃判断时不检测分寄存器值。                              |
 |      bit6~0:Minute BCD 十进制闹钟分值。                                            |
 +-------------------------------------------------------------------------------------*/
#define REG_AMINUTE         13  // 闹时钟分值寄存器。
/*--------------------------------------------------------------------------------------+
 |  闹钟时寄存器 AHour(地址:0x0E),用于设置/读取闹钟的时值。                        |
 |      bit7:   EHRA   闹钟时检测控制标志位。                                          |
 |                 1:    闹钟是否闹铃判断时检测时寄存器值是否一致;                    |
 |                 0:    闹钟闹铃判断时不检测时寄存器值。                              |
 |      bit6:   保留。                                                                 |
 |      bit5~0:Hour        BCD 十进制闹钟时值。                                       |
 +-------------------------------------------------------------------------------------*/
#define REG_AHOUR           14  // 闹钟时值寄存器。
/*--------------------------------------------------------------------------------------+
 |  闹钟日寄存器 Date(地址:0x0F),用于设置/读取闹钟日值。                           |
 |      bit7:   EDTA   闹钟日检测控制标志位。                                          |
 |                 1:    闹钟是否闹铃判断时检测日寄存器值是否一致;                    |
 |                 0:    闹钟闹铃判断时不检测日寄存器值。                              |
 |      bit6:   保留。                                                                 |
 |      bit5~0:Date   BCD 十进制闹钟日值。                                            |
 +-------------------------------------------------------------------------------------*/
#define REG_ADATE           15  // 闹钟日值寄存器。
/*--------------------------------------------------------------------------------------+
 |  闹钟月寄存器 Month(地址:0x10),用于设置/读取闹钟月值。                          |
 |      bit7:   EMOA   闹钟月检测控制标志位。                                          |
 |                 1:    闹钟是否闹铃判断时检测月寄存器值是否一致;                    |
 |                 0:    闹钟闹铃判断时不检测月寄存器值。                              |
 |      bit6~5:保留。                                                                 |
 |      bit4~0:Month  BCD 十进制闹钟月值。                                            |
 +-------------------------------------------------------------------------------------*/
#define REG_AMONTH          16  // 闹钟月值寄存器。
/*--------------------------------------------------------------------------------------+
 |  闹钟星期寄存器 Week(地址:0x11),设置/读取闹钟星期值。                           |
 |      bit7:   EWKA   闹钟星期检测控制标志位。                                        |
 |                 1:    闹钟是否闹铃判断时检测星期寄存器值是否一致;                  |
 |                 0:    闹钟闹铃判断时不检测星期寄存器值。                            |
 |      bit6~3:保留。                                                                 |
 |      bit2~0:Week   BCD 十进制闹钟星期值。                                          |
 +-------------------------------------------------------------------------------------*/
#define REG_AWEEK           17  // 闹钟星期值寄存器。
/*--------------------------------------------------------------------------------------+
 |  用户自定义寄存器 UserDefined(地址:0x12~0x13),保存用户自定义参数。              |
 +-------------------------------------------------------------------------------------*/
#define REG_USER_DEFINE0    18
#define REG_USER_DEFINE1    19



//==================================================================================
//ISL1208器件地址 iic总线使用
#define ADDR_ISL1208 0xde

//==================================================================================
//函数申明

	extern uchar  ISL1208_Init();
	extern uchar  ISL1208_ReadTime(uchar *time);
	extern uchar  ISL1208_WriteTime(uchar *time);

	extern uchar ISL1208_OpenSound(uchar freq);
	extern uchar ISL1208_CloseSound();

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -