コード例 #1
0
/*******************************************************************************
  * @函数名称		Init_Timer_Cnt
  * @函数说明		给全局计数器清零
  * @输入参数		无
  * @输出参数		无
  * @返回参数		无
*******************************************************************************/
void Init_Timer_Cnt(void)
{
	Pile_State.Open_Flag = 1;
	Pile_State.Close_Flag = true;

	Pcak_Pile_State_All_Flag = 0;
	Can1_Rev_Flag = false;
	debug = 0;
    log_w = 0;
	Stitic_Time_Cnt = 0;

    Queue_Create(&Q_dir,Q_DIR);

	//Flash_Read_Inside(PROG_DATA_ADDR,Only_ID,12);
    //static uint8_t buf[20] = {'0','1','2','3','4','5','6','7','8','9','10','11'};
    //at24cxx_write(0, buf, 12);
    eep_read(0, Only_ID, 12);                                               /* read only ID */

	/* RTC 判断时间是否合法 */
	if(!RTC_IsTimeValid())
	{
		RTC_DateTime_Type td = {0};
		td.year = 2011;
		td.month = 11;
		td.day = 11;
		td.hour = 11;
		td.minute = 11;
		td.second = 11;
		RTC_SetTime(&td);
	}
#if DEBUG
	RTC_DateTime_Type td = {0};
	RTC_GetTime(&td);
	printf("first:%d-%d-%d %d:%d:%d\r\n", td.year, td.month, td.day, td.hour, td.minute, td.second);

	/* 设置闹钟在当前3秒后 */
	/*
	RTC_GetTime(&td);
	td.second += 3;
	RTC_SetAlarm(&td);
	*/
#endif
}
コード例 #2
0
ファイル: main.c プロジェクト: Wangwenxue/K64_PN532
int main(void)
{
    DelayInit();
    GPIO_QuickInit(HW_GPIOE, 6, kGPIO_Mode_OPP);
    UART_QuickInit(UART0_RX_PB16_TX_PB17, 115200);
    
    /* 声明一个时间结构 */
    RTC_DateTime_Type td = {0};
    td.day = 20;
    td.hour = 23;
    td.minute = 59;
    td.second = 50;
    td.year = 2014;
    td.month = 11;
    printf("RTC alarm test\r\n");
    
    RTC_QuickInit();
    if(RTC_IsTimeValid() == false)
    {
        printf("bad time, reset!\r\n");
        RTC_SetTime(&td);
    }
    /* 开启中断 */
    RTC_CallbackInstall(RTC_ISR);
    RTC_ITDMAConfig(kRTC_IT_TimeAlarm, true);
    
    /* 设置闹钟在当前3秒后 */
    RTC_GetTime(&td);
    td.second += 3;
    RTC_SetAlarm(&td);

    while(1)
    {
        /* 获得时间 */
        RTC_GetTime(&td);//获得时间
        printf("%d-%d-%d %d:%d:%d\r\n", td.year, td.month, td.day, td.hour, td.minute, td.second);
        GPIO_ToggleBit(HW_GPIOE, 6);
        DelayMs(1000);
    }
}
コード例 #3
0
ファイル: main.c プロジェクト: Wangwenxue/K64_PN532
int main(void)
{
    DelayInit();
    GPIO_QuickInit(HW_GPIOE, 6, kGPIO_Mode_OPP);
    UART_QuickInit(UART0_RX_PD06_TX_PD07, 115200);
    
    /* 声明一个时间结构 */
    RTC_DateTime_Type td = {0};
    td.day = 20;
    td.hour = 23;
    td.minute = 59;
    td.second = 50;
    td.year = 2014;
    td.month = 11;
    printf("RTC clk out test, second pulse in on PE26\r\n");
    
    RTC_QuickInit();
    if(RTC_IsTimeValid() == false)
    {
        RTC_SetTime(&td);
    }
    /* 开启中断 */
    RTC_CallbackInstall(RTC_ISR);
    RTC_ITDMAConfig(kRTC_IT_TimeAlarm, true);
    
    /* RTC_CLKOUT 输出 */
    SIM->SOPT2 &= ~SIM_SOPT2_RTCCLKOUTSEL_MASK;
    PORT_PinMuxConfig(HW_GPIOE, 26, kPinAlt6);
    
    while(1)
    {
        RTC_GetTime(&td);
        printf("%d-%d-%d %d:%d:%d\r\n", td.year, td.month, td.day, td.hour, td.minute, td.second);
        GPIO_ToggleBit(HW_GPIOE, 6);
        DelayMs(1000);
    }
}