int main( void ) { u32 Point = 0; u16 OV7725_ID = 0; SystemInit(); GPIO_Config(); Delay_1ms(1); SSD1963_Config(); Delay_1ms(50); SSD1963_Init(); Delay_1ms(20); TFT_Clear(WHITE); // SCCB Init SCCB_Init(); Delay_1ms(2); // Read ID & Check OV7725_ID = OV_ReadID(); while(OV7725_ID != 0x7721) { LED_R = ~LED_R; Delay_100ms(1); } // OV7725 Init while(1==OV_Init()); Cam_Start(); while(1) { LED_G = ~LED_G; Delay_100ms(1); } }
/******************************************************************************* * Function Name : TaskStart * Description : UCOS-II. * Input : *pdata. * Output : None * Return : None *******************************************************************************/ void TaskStart(void *pdata) { //u16 tp_xvalue = 0, tp_yvalue = 0; //INT8U err = 0; pdata = pdata; // 防止编译器告警 SysTick_Configuration(); // 初始化系统节拍(1ms) OSStatInit(); // 初始化统计任务 TaskStartCreateTasks(); // 建立其他任务 /* 初始化TFT, 设置TFT背光 */ TFT_Init(); TFT_SetBlackLight(TFT_BL_PERCENT_90); TFT_Clear(Blue); TFT_DisplayD36x48(10, 150, '2', White, Blue); TFT_DisplayD36x48(46, 150, '1', White, Blue); TFT_DisplayD36x48(82, 150, ':', White, Blue); TFT_DisplayD36x48(118, 150, '5', White, Blue); TFT_DisplayD36x48(154, 150, '8', White, Blue); TFT_DisplayString(200, 182, "2011", White, Blue); TFT_DisplayString(30, 218, "Wendnesday, Septermber 23", White, Blue); TFT_DrawHLine(30, 236, 230, Blue); while(1) { //printf("Start task is running!\r\n"); /* 任务延时500ms */ OSTimeDlyHMSM(0, 0, 20, 0); } }
//显示字符串 //x,y:起点坐标 //*p:字符串起始地址 void TFT_ShowString(u8 x,u16 y,const u8 *p) { while(*p!='\0') { if(x>MAX_CHAR_POSX){x=0;y+=12;} if(y>MAX_CHAR_POSY){y=x=0;TFT_Clear(0,0,240,320);} TFT_ShowChar(x,y,*p); x+=6; p++; } }