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

📄 rtc_test.c

📁 SH3
💻 C
字号:
/***********************************************************************/
/*                                                                     */
/*  FILE        :RTC_test.c                                            */
/*  DATE        :Thu, Nov 02, 2006                                     */
/*  DESCRIPTION :Main Program                                          */
/*  CPU TYPE    :SH7709S                                               */
/*                                                                     */
/*  This file is generated by Renesas Project Generator (Ver.3.1).     */
/*                                                                     */
/***********************************************************************/
                  

#include "7709s.h"
#ifdef __cplusplus
//#include <ios>					// Remove the comment when you use ios                  
//int ios_base::Init::init_cnt;		// Remove the comment when you use ios
#endif
#ifdef __cplusplus
extern "C" {
#endif
void abort(void);
#ifdef __cplusplus
}
#endif

#define LED_DATA (*(volatile unsigned short *)0x00800000) /* LED   Address*/
#define PCLK 32000000UL

void LED(int times);
void INT_TMU_TUNI0();
void LED_FLASH(void);
void init_timer();
void main(void);
void delay();
void RTC_set(void);
void RTC_read_display();

void delay()
{

	int i,j;
	for(i=0;i<20000;i++)
	{
		for(j=0;j<2000;j++);
	}
}

void LED_FLASH(void)
{
	int i,j;

	LED_DATA=0x55;
	for(j=0;j<0x200000;j++){}
	LED_DATA=0xAA;
	for(j=0;j<0x200000;j++){}
	return;
}

void LED(int times)
{
    while(times--)
	{
		LED_FLASH();
	}
}

void RTC_set(void)
{

	
	//LED(3);
	
	RTC.RCR1.BIT.CF=0;
	RTC.RCR1.BIT.AF=0;
	RTC.RCR1.BIT.CIE=0;
	RTC.RCR1.BIT.AIE=0;
	

	
	RTC.RCR2.BIT.START=0;		//停止RTC
	RTC.RCR2.BIT.RESET=0;		//复位预分频电路
	RTC.RCR2.BIT.PEF=0;
	RTC.RCR2.BIT.PES=0;
	RTC.RCR2.BIT.ADJ=0;
	RTC.RCR2.BIT.RTCEN=1;
	
	//RTC.RCR2.BYTE=0X08;
	//LED(3);
	
	RTC.R64CNT=0x00;
	RTC.RSECCNT.BYTE=0x00;
	RTC.RMINCNT.BYTE=0x00;
	RTC.RHRCNT.BYTE=0x00;
	RTC.RWKCNT.BYTE=0x00;
	RTC.RDAYCNT.BYTE=0x00;
	RTC.RMONCNT.BYTE=0x00;
	RTC.RYRCNT.BYTE=0x00;

	RTC.RCR2.BIT.START=1;		//启动RTC
	//LED(3);
}

void RTC_read_display()
{
	unsigned short time_temp;

	RTC.RCR1.BIT.CIE=0;
	RTC.RCR1.BIT.CF=0;
	time_temp=RTC.RSECCNT.BYTE;
	while(RTC.RCR1.BIT.CF==1)
	{
		time_temp=RTC.RSECCNT.BYTE;
		RTC.RCR1.BIT.CF=0;
	}
	LED_DATA=~time_temp;	
}

//	取消resetprg.c中“set_cr(SR_Init);”一行,才能正常运行!!!!!!!!!!!!!!!!!!!!!!
void main(void)
{

	RTC_set();

	LED(3);

	while(1)
	{
		RTC_read_display();
	}
	
}

void abort(void)
{
	
}

⌨️ 快捷键说明

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