www.pudn.com > ARM+SL811.rar > Main.c
#include#include #include #include "..\target\option.h" #include "..\target\44b.h" #include "..\target\44blib.h" #include "..\target\def.h" void Isr_Init(void); void HaltUndef(void); void HaltSwi(void); void HaltPabort(void); void HaltDabort(void); extern void SL811Main(void); void * function[][2]= { (void *)SL811Main, "HOST USB TEST(sl811)", 0,0 }; /*******************main function*************************/ void Main(void) { int i; rSYSCFG=CACHECFG; //__rt_lib_init(); //for ADS 1.0 Port_Init(); Isr_Init(); Uart_Init(0,115200); Uart_Select(0); Delay(0); //calibrate Delay() Beep(0x01); Led_Display(0xf); Uart_Printf("\n---------------------------------------------------------------"); Beep(0x00); Uart_Printf("\nOEM name : LiYuTai Elec.Co.,Ltd. "); Uart_Printf("\nWebsite : www.hzlitai.com.cn "); Uart_Printf("\nEmail : lyt_tech@yahoo.com.cn "); Uart_Printf("\nFunction : ARMSYS44b0's SL811 Test Program "); Uart_Printf("\nUART config: 115.2kbps,8Bit,NP,UART0 "); Uart_Printf("\n---------------------------------------------------------------"); Uart_Printf("\nS3C44B0X Test Program Ver 2.0 rSYSCFG=0x%x MCLK=%dHz\n",rSYSCFG,MCLK); while(1) { i=0; Uart_Printf("\nThe function list to test :\n"); while(1) { //display menu Uart_Printf("%2d:%s",i+1,function[i][1]); i++; if((int)(function[i][0])==0) { Uart_Printf("\n"); break; } if((i%4)==0) Uart_Printf("\n"); } Led_Display(0x0); Uart_Printf("\nSelect the function to test?"); i=Uart_GetIntNum(); i--; Uart_Printf("\n"); if(i>=0 && (i<(sizeof(function)/8)) ) ( (void (*)(void)) (function[i][0]) )(); } } void Isr_Init(void) { pISR_UNDEF=(unsigned)HaltUndef; pISR_SWI =(unsigned)HaltSwi; pISR_PABORT=(unsigned)HaltPabort; pISR_DABORT=(unsigned)HaltDabort; //rINTCON=0x1; // Vectored Int. IRQ enable,FIQ disable rINTCON=0x5; // Non-vectored,IRQ enable,FIQ disable rINTMOD=0x0; // All=IRQ mode rINTMSK=BIT_GLOBAL; // All interrupt is masked. } void HaltUndef(void) { Uart_Printf("Undefined instruction exception!!!\n"); while(1); } void HaltSwi(void) { Uart_Printf("SWI exception!!!\n"); while(1); } void HaltPabort(void) { Uart_Printf("Pabort exception!!!\n"); while(1); } void HaltDabort(void) { Uart_Printf("Dabort exception!!!\n"); while(1); }