📄 rtc_test.c
字号:
#include <stdlib.h>
#include "DSP28_Device.h"
unsigned int RTC_Status,RTC_Date,RTC_Year,RTC_Month,RTC_Day,RTC_Hour,RTC_Minute,RTC_Second;
unsigned int i1,RTC_DATA[64];
void main(void)
{
/*初始化系统*/
InitSysCtrl();
/*关中断*/
DINT;
IER = 0x0000;
IFR = 0x0000;
/*初始化PIE*/
InitPieCtrl();
/*初始化PIE中断矢量表*/
InitPieVectTable();
/*初始化外设*/
// InitPeripherals();
init_rtc();
Set_Rtc(1,0x03,0x11,0x17,0x12,0x30,0x51);
for(i1 = 0; i1 < 64; i1++)
{
RTC_DATA[i1] = i1;
}
Page_Write_Eeprom(0,0,&RTC_DATA[0],64);
Page_Read_Eeprom(0,0,64);
for(i1 = 0; i1 < 64; i1++)
{
if(Read_Rtc_Data(0xae,0xaf,0,i1) != i1)
{
while(1);
}
}
/* for(i1 = 0; i1 < 0x100; i1++)
{
Byte_Write_Eeprom(0,i1,0x55);
if(Read_Rtc_Data(0xae,0xaf,0x0,i1) != 0x55)
{
while(1);
}
Byte_Write_Eeprom(0,i1,0xaa);
if(Read_Rtc_Data(0xae,0xaf,0x00,i1) != 0xaa)
{
while(1);
}
Byte_Write_Eeprom(1,i1,0x55);
if(Read_Rtc_Data(0xae,0xaf,0x01,i1) != 0x55)
{
while(1);
}
Byte_Write_Eeprom(1,i1,0xaa);
if(Read_Rtc_Data(0xae,0xaf,0x01,i1) != 0xaa)
{
while(1);
}
}*/
/*开中断*/
EINT; // Enable Global interrupt INTM
ERTM; // Enable Global realtime interrupt DBGM
for(;;)
{
KickDog();
RTC_Status = Read_Rtc_Data(0xde,0xdf,0,0x3f);
RTC_Date = Read_Rtc_Data(0xde,0xdf,0,0x36);
RTC_Year = Read_Rtc_Data(0xde,0xdf,0,0x35);
RTC_Month = Read_Rtc_Data(0xde,0xdf,0,0x34);
RTC_Day = Read_Rtc_Data(0xde,0xdf,0,0x33);
RTC_Hour = Read_Rtc_Data(0xde,0xdf,0,0x32);
RTC_Minute = Read_Rtc_Data(0xde,0xdf,0,0x31);
RTC_Second = Read_Rtc_Data(0xde,0xdf,0,0x30);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -