int ret;
ret = board_init();
GPFDAT = 0X20;
if (ret)
{
putstr("Failed a board_init() procedure\r\n");
error();
}
static void error(void)
{
purstr("Sorry. We can not run vivi\n");
for(; ;);
/* Infinite loop */
}
int board_init(void)
{
/*
*set the timer register:
*the dead zone0 and the prescaler of timer0,1,2,3,4
*/
init_time();
set_gpios();
/*if success, then return 0*/
return 0;
/**/
}
void init_time(void)
{
TCFG0 = (TCFG0_DZONE(0) | TCFG0_PRE1(15) | TCFG0_PRE0(0));
}
void set_gpios(void)
{
GPACON = vGPACON;
GPBCON = vGPBCON;
GPBUP = vGPBUP;
GPCCON = vGPCCON;
GPCUP = vGPCUP;
GPDCON = vGPDCON;
GPDUP = vGPDUP;
GPECON = vGPECON;
GPEUP = vGPEUP;
/* port F[7:4]as the output port, and the bit[3:0]as the extint port */
GPFCON = vGPFCON;
GPFUP = vGPFUP;
GPGCON = vGPGCON;
GPGUP = vGPGUP;
GPHCON = vGPHCON;
GPHUP = vGPHUP;
EXTINT0 = vEXTINT0;
EXTINT1 = vEXTINT1;
EXTINT2 = vEXTINT2;
}
|