?? main.c
字號:
/****************************************************************************
【文 件 名 稱】main.c
【功 能 描 述】三星S3C2410A板demo程序代碼
【程 序 版 本】4.0
【創建人及創建日期】icesoar//2002年11月19日19:26
【修改人及修改日期】icesoar//2004-12-8 17:25
****************************************************************************/
#include "def.h"
#include "2410addr.h"
#include "config.h"
#include "board.h"
#include "utils.h"
#define WATCH_ENABLE
#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 (0XFF <<8) /* 255 */
volatile unsigned int sec_tick;
/********************************************************************
// Function name : rtc_tick_init
// Parameter : void
// Description : 初始化TICK定時器
// Return : void
// Argument : tick, 設置的TICK頻率(時鐘滴答的周期為 (1+tick)/128秒)
// Autor & date :
*********************************************************************/
void rtc_tick_init( char tick )
{
rRTCCON = 0x01;
rTICNT = (tick&0x7f)|0x80; /*TICK 中斷使能,周期為(1+tick)/128秒*/
rRTCCON = 0x00;
}
/********************************************************************
// Function name : rtc_tick_isr
// Parameter : void
// Description : Tick中斷處理程序
// Return : void
// Argument : 時鐘滴答1秒中斷
// Autor & date :
*********************************************************************/
void __irq rtc_tick_isr(void)
{
ClearPending(BIT_TICK); /*清除時鐘滴答中斷標志 */
if((sec_tick%5)==0) /* 修改該語句檢查復位情況,if((led_index%3)==0) */
{
rWTCNT = 0x1000; /* 重新設置看門狗時間值 */
}
printf("into tick \n");
sec_tick++;
}
/*************************************************************/
void Main(void)
{
BoardInitStart();
SystemClockInit();
TimerInit(TIMER_FREQ);
MemCfgInit();
PortInit();
SerialSwitch(0);
SerialChgBaud(115200);
EnableInt();
rINTMOD=0x00; //設置中斷為IRQ中斷
rtc_tick_init(127);
pISR_TICK=(unsigned)rtc_tick_isr; //安裝時間滴答時鐘中斷
ClearPending(BIT_TICK);
EnableIrq(BIT_TICK); //使能時鐘滴答中斷
printf("S3C2410X WatchDog Test\n");
rWTCNT = 0x1000;
rWTCON = WDT_ENABLE | WDT_RST_ENABLE | WDT_CLK_SEL | WDT_PRE_SCALER;
while( 1 )
{
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -