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

📄 rtc.h

📁 940时钟程序
💻 H
字号:
#include "types_io.h"
#include "i2c.h"

#ifndef _RTC_H
#define _RTC_H

//#define TO_DEBUG_CUR_TIME				/* print time and date to terminal */

	/**************************************************
	*                                                 *
	*          RTC2025 Control Address                *
	*                                                 *	
	**************************************************/
	#define RTC2025_IIC_ADDRESS_W		0x64
	#define RTC2025_IIC_ADDRESS_R		0x65


	#define INTERNAL_POINTER_ADDRESS 	0xE0
	
	#define READ_CUR_TIME_ADDRESS		0x00
	
	#define READ_CUR_DATE_ADDRESS		0x40
	
	#define WIRTE_TIME_ADDRESS			0x00
	#define WIRTE_DATE_ADDRESS			0x40
	
	/*Control Register1: ADDRESS 0x0E */
	/* WLAE DALE /12.24 /CLEN2 TEST CT2 CT1 CT0*/
	
	#define RTC_CONTROL_REG1_ADDRESS			0x0E
	#define INIT_RTC_CONTROL_REG1				0x20
	
	/*Control Register2: ADDRESS 0x0F */
	/*VDSL VDET /XST PON /CLEN1 CTFG WAFG DAFG*/
	#define RTC_CONTROL_REG2_ADDRESS			0x0F
	#define INIT_RTC_CONTROL_REG2				0x00
	
	/*Time Counter Register(BCD format)*/
	#define RTC_SECOND_COUNTER_ADDRESS			0x00
	#define RTC_MINUTE_COUNTER_ADDRESS			0x01
	#define RTC_HOUR_COUNTER_ADDRESS			0x02
	
	#define RTC_DAY_OF_WEEK_ADDRESS				0x03
	
	#define RTC_DAY_OF_MONTH_ADDRESS			0x04
	#define RTC_MONTH_CENTURY_ADDRESS			0x05
	#define RTC_YEAR_ADDRESS					0x06

	void GetSysTime(void);
	void SetSysTime(UINT hours,UINT minutes,UINT seconds);
	void GetSysDate(void);
	void SetSysDate(UINT years,UINT months,UINT days);
	
	#ifdef TO_DEBUG_CUR_TIME
		void PrintCurTime(void);
		void PrintCurDate(void);
	#endif
	
	void ReadR2025(void);
	BYTE BCDToDec(BYTE bcd_number);
#endif

⌨️ 快捷键说明

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