/*
 * RS5C372A_RTC.h
 *
 * Created: 2019. 05. 31. 14:33:20
 * Author : asdman
 */

#ifndef _RS5C372A_RTC_h
#define _RS5C372A_RTC_h

/*				
	_____	   +----------------+
	INTRB	===| O 			    |===	VDD
	SCL		===|			    |===	OSCIN
	SDA		===|			    |===	OSCOUT
	VSS		===|		  	    |===	_____
			   +----------------+		INTRA
*/

#define RTC_ADDRESS			0x64//0b01100100 

#define Read_immediately	0x04

//		Contents							Internal address			
#define Second_Counter						0x00			
#define Minute_Counter						0x10		
#define Hour_Counter						0x20			
#define Day_of_the_Week_Counter				0x30	
#define Day_Counter							0x40		
#define Month_Counter						0x50			
#define Year_Counter						0x60			
#define Time_Trimming_Register				0x70			
#define Alarm_A__Minute_Register			0x80			
#define Alarm_A__Hour_Register				0x90			
#define Alarm_A__Day_of_the_Week_Register	0xA0			
#define Alarm_B__Minute_Register			0xB0			
#define Alarm_B__Hour_Register				0xC0			
#define Alarm_B__Day_of_the_Week_Register	0xD0			
#define Control_Register_1					0xE0			
#define Control_Register_2					0xF0	

void RTC_init(void);
void set_time(unsigned char secf,unsigned char minf, unsigned char hourf);
void set_date(unsigned char dayf,unsigned char monthf, unsigned char yearf, unsigned char dayofweekf);

#endif //_RS5C372A_RTC_h

#include "RS5C372A_RTC.c"