亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? main.c

?? JXARM9-2410 看門狗實驗主程序完成功能: 在實時時鐘實驗的基礎上添加看門狗功能
?? C
字號:
/* 包含文件 */
#include "def.h"
#include "2410lib.h"
#include "option.h"
#include "2410addr.h"
#include "interrupt.h"

extern unsigned char seg7table[];

/* 表示日期、時間的數據結構 */
typedef struct ST_DATE
{
	short 	year;       // 年
	char	mon;        // 月
	char	day;        // 日
	char	week_day;   // 星期
	char	hour;       // 時
	char	min;        // 分
	char	sec;        // 秒
} st_date;

/* 全局變量 */
int led_index = 0;
int ext0_count = 0;

/* functions */
void rtc_tick_isr(void) __attribute__ ((interrupt("IRQ")));;
void rtc_int_isr(void) __attribute__ ((interrupt("IRQ")));;

#define WDT_ENABLE			(0x01<<5)
#define WDT_INT_ENABLE		(0x01<<2)
#define WDT_RST_ENABLE		(0x01<<0)	

#define WDT_CLK_SEL			(0X3    <<3)		/* 1/128 */
#define WDT_PRE_SCALER		((PCLK/1000000-1)   <<8)		/* 49    */

/********************************************************************
// Function name	: watchdog_init
// Description	    : 看門狗初始化
// Return type		: void
// Argument         : 
*********************************************************************/
void watchdog_init()
{
	rWTCNT = 8448 * 2;		/* 設置看門狗初始值 */
	rWTCON = WDT_ENABLE | WDT_RST_ENABLE | WDT_CLK_SEL | WDT_PRE_SCALER;	/* 打開看門狗 */		/* 打開看門狗 */
}
/*****************************************************************************
// Function name	: rtc_set_date
// Description	    : 修改實時時鐘當前時間、日期
// Return type		: void
// Argument         : p_date, 待設置的日期
*****************************************************************************/
void rtc_set_date(st_date* p_date)
{
    rRTCCON  = 0x01;	
    rBCDYEAR = p_date->year;
    rBCDMON  = p_date->mon;
    rBCDDAY  = p_date->day;
    rBCDDATE = p_date->week_day;
    rBCDHOUR = p_date->hour;
    rBCDMIN  = p_date->min;
    rBCDSEC  = p_date->sec;
    rRTCCON  = 0x00;	
}

/*****************************************************************************
// Function name	: rtc_get_date
// Description	    : 獲取實時時鐘當前時間、日期
// Return type		: void
// Argument         : p_date, 返回日期的指針
*****************************************************************************/
void rtc_get_date(st_date* p_date)
{
    rRTCCON  = 0x01;	
    
    p_date->year	= 	rBCDYEAR ;
    p_date->mon		= 	rBCDMON  ;
    p_date->day		= 	rBCDDAY  ;
    p_date->week_day= 	rBCDDATE ;
    p_date->hour	= 	rBCDHOUR ;
    p_date->min		= 	rBCDMIN  ;
    p_date->sec		= 	rBCDSEC  ;
    
    rRTCCON  = 0x00;	
}

/*****************************************************************************
// Function name	: rtc_tick_init
// Description	    : 初始化S3C2410的TICK定時器
// Return type		: void
// Argument         : tick, 設置的TICK頻率(時鐘滴答的周期為 (1+tick)/128秒)
*****************************************************************************/
void rtc_tick_init( char tick )
{
    Irq_Request(IRQ_TICK, rtc_tick_isr);
    
    rRTCCON   = 0x0;            //No reset[3], Merge BCD counters[2], BCD clock select XTAL[1], RTC Control disable[0]
    rTICNT  = (tick&0x7f)|0x80;		/*TICK 中斷使能,周期為(1+tick)/128秒*/   

    Irq_Enable(IRQ_TICK);   
}

/*****************************************************************************
// Function name	: rtc_alarm_set
// Description	    : 設置S3C2410的告警時間以及方式
// Return type		: void
// Argument         : p_date, 告警的時間
//                    mode, 告警模式
*****************************************************************************/
void rtc_alarm_set(st_date* p_date, unsigned char mode)
{
    Irq_Request(IRQ_RTC, rtc_int_isr);
    
    rRTCCON  = 0x01;	
    
    rALMYEAR = p_date->year;
    rALMMON  = p_date->mon;
    rALMDATE = p_date->day;
    rALMHOUR = p_date->hour;
    rALMMIN  = p_date->min;
    rALMSEC  = p_date->sec;
    
    rRTCALM  = mode;
    
    rRTCCON  = 0x00;	

    Irq_Enable(IRQ_RTC);   
}

/*****************************************************************************
// Function name	: Main
// Description	    : JXARM9-2410 看門狗實驗主程序
//                    完成功能:
//                        在實時時鐘實驗的基礎上添加看門狗功能,并在時鐘滴答
//                        中斷中實現喂狗處理.
//       
// Return type		: void
// Argument         : void
*****************************************************************************/
void Main(void)
{
	int old_index ;
	
	st_date m_date;
	
	/* 配置系統時鐘 */
    ChangeClockDivider(1,1);          // 1:2:4    
    ChangeMPllValue(0xa1,0x3,0x1);    // FCLK=202.8MHz  
	
	/* 中斷初始化 */
    Isr_Init();
    /* 初始化端口 */
    Port_Init();
    
    /* 初始化串口 */
    Uart_Init(0,115200);
    Uart_Select(0);

    /* 打印提示信息 */
	PRINTF("\n---看門狗測試程序---\n");
	PRINTF("\n請將UART0與PC串口進行連接,然后啟動超級終端程序(115200, 8, N, 1)\n");
	PRINTF("\n看門狗測試開始\n");

	/* 采用BCD編碼,如2004年需要設置的值為0x2004 */
    m_date.year		= 	0x2000+0x04 ;
    m_date.mon		= 	0x03 ;
    m_date.day		= 	0x02 ;
    m_date.week_day	= 	0x02 ;
    m_date.hour		= 	0x15 ;
    m_date.min		= 	0x40 ;
    m_date.sec		= 	0x00 ;
    
    /* 修改當前日期和時間 */
    rtc_set_date(&m_date);
    
    m_date.sec		= 	0x05 ;
    
    /* 設置告警的時間及方式,0x41表示使能RTC告警,以及使能秒時鐘告警 */
    rtc_alarm_set(&m_date, 0x41);
	
	rtc_tick_init(127);
	
	/* 打開看門狗復位功能 */
	watchdog_init();
	
	old_index = led_index;
   	PRINTF("請在2秒內喂狗,否則系統將在約2秒后復位\n\n");
   	
    while(1)
    {
    	if(old_index != led_index)		/* 每隔一秒更新一次數據				*/
    	{
   	    	rtc_get_date(&m_date);
   	    	old_index = led_index;
			
   	    	PRINTF(				/* 時鐘數據為BCD碼格式,以16進制顯示 */
				"\b\b\b\b\b\b\b\b%02x:%02x:%02x", m_date.hour, m_date.min, m_date.sec);
   	    }
    };
}

/*****************************************************************************
// Function name	: rtc_tick_isr
// Description	    : TICK中斷處理程序,程序中設置每秒鐘引發一次中斷
//                    為避免看門狗復位在此處喂狗
// Return type		: int
// Argument         : void
*****************************************************************************/
void rtc_tick_isr(void)
{
	Irq_Clear(IRQ_TICK);         /* 清除TICK中斷 */

	*((U8*) 0x10000006) = 0x00;
  	*(unsigned char*)0x10000004 = seg7table[led_index%10];  
   	
   	led_index++;
   	
   	/* 喂狗 */
   	rWTCNT = 8448 * 2;
}

/*****************************************************************************
// Function name	: rtc_int_isr
// Description	    : rtc中斷處理程序,程序中設置每分鐘的第5秒引發該中斷
// Return type		: int
// Argument         : void
*****************************************************************************/
void rtc_int_isr(void)
{
	Irq_Clear(IRQ_RTC);          /*清除RTC中斷						*/
    
//    if(ext0_count&1)	
//   		*(unsigned char*)0x2000000 = 0x0f;  
//   	else
//   		*(unsigned char*)0x2000000 = 0xff;  
   		
   	ext0_count++;
   	
   	PRINTF("\r\nAlarm\r\n                  ");
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产亚洲欧美日韩俺去了| 一区二区成人在线视频 | 国产精品一区二区久激情瑜伽| 国产成人免费在线视频| 色婷婷一区二区| 久久久蜜桃精品| 日精品一区二区三区| av午夜一区麻豆| 久久视频一区二区| 视频在线观看一区二区三区| 成人动漫中文字幕| 久久午夜羞羞影院免费观看| 日韩黄色在线观看| 欧美视频在线不卡| 亚洲激情在线激情| a4yy欧美一区二区三区| 国产日韩欧美精品综合| 九九国产精品视频| 欧美精品电影在线播放| 亚洲国产日韩av| 成人性生交大片免费看视频在线| 日韩一区二区在线免费观看| 亚洲精品高清在线| 91香蕉视频黄| 亚洲视频在线观看一区| 国产精品99久久久久久宅男| 精品国产免费一区二区三区香蕉| 亚洲va国产va欧美va观看| 欧美影院一区二区| 亚洲码国产岛国毛片在线| 94色蜜桃网一区二区三区| 国产精品女主播av| 成人福利视频在线看| 国产精品嫩草影院com| 高清成人在线观看| 久久精品欧美一区二区三区不卡| 国产一区二区三区高清播放| 精品久久国产老人久久综合| 久草这里只有精品视频| 精品国精品国产| 国产一区二区三区美女| 久久久不卡网国产精品一区| 国产成人精品亚洲日本在线桃色 | 成人av一区二区三区| 国产精品美女久久久久高潮| 成人午夜电影网站| 亚洲日本一区二区| 欧美无人高清视频在线观看| 图片区小说区区亚洲影院| 欧美一区二区美女| 国产在线精品一区二区三区不卡| 久久精品一区二区| 99久久国产综合精品女不卡| 亚洲免费毛片网站| 欧美老女人在线| 精品在线免费视频| 日本一区二区三区dvd视频在线| 不卡的电影网站| 亚洲第一电影网| 欧美精品一区二区蜜臀亚洲| 成人国产精品免费观看动漫| 激情偷乱视频一区二区三区| 国产午夜精品美女毛片视频| 午夜精品一区二区三区三上悠亚| 91精品国产一区二区三区香蕉| 男男成人高潮片免费网站| 久久久www免费人成精品| www.欧美精品一二区| 亚洲高清免费观看高清完整版在线观看| 欧美乱熟臀69xxxxxx| 99这里都是精品| 亚洲成人自拍网| 国产亚洲精久久久久久| 欧美专区日韩专区| 国产成人精品一区二区三区网站观看| 尤物av一区二区| 久久影音资源网| 欧美日韩三级一区二区| 国产精品一品视频| 日韩精品一级二级| 中文字幕永久在线不卡| 日韩一二三区视频| 一本到三区不卡视频| 国产精品一区在线| 午夜精品久久久久久久久久 | 亚洲精品大片www| 久久亚洲捆绑美女| 欧美精品乱码久久久久久| 成人一区二区三区| 精油按摩中文字幕久久| 午夜影院久久久| 日韩毛片高清在线播放| 久久久亚洲午夜电影| 欧美精品xxxxbbbb| 日本韩国欧美一区| 成人免费视频播放| 国产精品综合一区二区三区| 男人的天堂久久精品| 亚洲一二三四在线| 亚洲欧洲综合另类在线| 久久久精品免费观看| 欧美成人a视频| 欧美精品tushy高清| 欧美性淫爽ww久久久久无| 99视频一区二区三区| 成人免费视频caoporn| 国产麻豆欧美日韩一区| 狠狠色综合日日| 久久精品99国产精品日本| 石原莉奈一区二区三区在线观看 | 一区二区高清免费观看影视大全| 国产精品美女久久福利网站| 国产欧美日韩在线看| 国产日韩欧美精品在线| 国产午夜精品久久| 欧美国产日韩精品免费观看| 久久蜜臀中文字幕| 国产色综合一区| 国产精品色噜噜| 亚洲欧洲美洲综合色网| 中文字幕亚洲区| 亚洲欧美日韩久久| 亚洲国产日韩在线一区模特| 亚洲福利视频一区| 日本一不卡视频| 国产一区二区视频在线播放| 国产在线看一区| 99视频有精品| 欧美日韩视频专区在线播放| 日韩视频国产视频| 国产欧美精品一区二区色综合 | 国产精品电影一区二区三区| 中文字幕一区二| 夜夜爽夜夜爽精品视频| 亚洲无人区一区| 麻豆精品久久精品色综合| 国产aⅴ综合色| caoporen国产精品视频| 欧美色涩在线第一页| 日韩一区二区电影网| 国产亚洲精品免费| 亚洲免费av高清| 日韩激情av在线| 成人精品一区二区三区四区| 一本大道久久a久久综合婷婷| 欧美制服丝袜第一页| 欧美大度的电影原声| 中文字幕av一区二区三区免费看 | 国产91精品在线观看| 一本一道综合狠狠老| 日韩亚洲欧美综合| 亚洲色图欧洲色图婷婷| 免费在线观看一区| 99v久久综合狠狠综合久久| 91精品国产综合久久久蜜臀粉嫩 | 久久久久久免费毛片精品| 亚洲欧美在线视频观看| 日韩中文字幕不卡| 成人福利电影精品一区二区在线观看| 欧美日韩在线精品一区二区三区激情| 精品国产免费久久| 亚洲制服丝袜在线| 丁香天五香天堂综合| 欧美日精品一区视频| 国产精品久久久久久久久果冻传媒 | 国产成人免费视频一区| 欧美三电影在线| 国产精品久久久久9999吃药| 日本va欧美va瓶| 一本色道久久综合狠狠躁的推荐 | 性欧美大战久久久久久久久| 韩国一区二区在线观看| 欧美专区在线观看一区| 国产精品久久久久永久免费观看| 日本色综合中文字幕| 在线亚洲一区二区| 国产精品久久久久久久久动漫| 蜜臀av性久久久久蜜臀aⅴ流畅| 99免费精品在线| 国产欧美日韩精品一区| 日本欧美在线观看| 在线观看日韩国产| 中文字幕视频一区| 国产aⅴ精品一区二区三区色成熟| 91麻豆精品国产91久久久更新时间| 国产精品久久久爽爽爽麻豆色哟哟 | 风间由美一区二区三区在线观看 | 亚洲香肠在线观看| 99久久久国产精品免费蜜臀| 久久综合九色综合97婷婷 | 韩国成人精品a∨在线观看| 欧美日韩不卡一区| 亚洲在线视频免费观看| 97久久精品人人爽人人爽蜜臀| 久久久亚洲精品一区二区三区| 免费在线观看视频一区| 欧美一区二区三区婷婷月色| 亚洲成av人片一区二区梦乃 | 亚洲激情图片小说视频| aaa亚洲精品|