标题: stm32颜色识别 [打印本页]

作者: leo-lopez    时间: 2017-10-17 08:07
标题: stm32颜色识别
#include "fifo.h"
#include "Sensor.h"
#include "lcd.h"
#include "gui.h"
#include "EasyTracer.h"
void RCC_Config(void)
{
ErrorStatus HSEStartUpStatus;

RCC_DeInit();
RCC_HSEConfig(RCC_HSE_ON);
HSEStartUpStatus = RCC_WaitForHSEStartUp();
if(HSEStartUpStatus == SUCCESS)
    {
   RCC_HCLKConfig(RCC_SYSCLK_Div1);
   RCC_PCLK2Config(RCC_HCLK_Div1);
   RCC_PCLK1Config(RCC_HCLK_Div2);
      FLASH_SetLatency(FLASH_Latency_2);
      FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);
   RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9);
      RCC_PLLCmd(ENABLE);
   while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET);
      RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);
  
      while(RCC_GetSYSCLKSource() != 0x08);
  }
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB |RCC_APB2Periph_GPIOC
         | RCC_APB2Periph_GPIOD | RCC_APB2Periph_GPIOE | RCC_APB2Periph_GPIOF | RCC_APB2Periph_GPIOG
         | RCC_APB2Periph_AFIO , ENABLE);
}
volatile u32 bn;
int main(void)
{
unsigned int i;
unsigned short c_data;
RESULT Resu;
TARGET_CONDI Condition={50,80,20,250,20,200,40,40,320,240};
RCC_Config();//³õʼ»¯Ê±ÖÓ
GUI_Init();   //³õʼ»¯GUI
GUI_SetLand(TRUE); //ÉèÖúáÆÁ
FIFO_Set_GPIO_Config();
    FIFO_GPIO_INPUT();
    FIFO_CS_L();
    FIFO_WE_H();
    while(1!=Sensor_init()){}//³õʼ»¯CMOS Sensor

    bn=0;
FIFO_RRST_L();
    FIFO_RD_L();
    FIFO_RD_H();
    FIFO_RD_L();
    FIFO_RRST_H();
    FIFO_RD_H();
while(1)
{
  if(bn==2)
     {
   FIFO_RRST_L();
         FIFO_RD_L();
         FIFO_RD_H();
         FIFO_RD_L();
         FIFO_RRST_H();
         FIFO_RD_H();
   LCD_SetRegion(0,0,319,239);
   LCD_BulkWriteDataStart();
   for(i=0;i<320*240;i++)
   {
    FIFO_RD_L();
             c_data=GPIOB->IDR&0xff00;
             FIFO_RD_H();
             FIFO_RD_L();
             c_data|=(GPIOB->IDR>>8)&0x00ff;
             FIFO_RD_H();
    LCD_WriteData(c_data);   
   }

   if(Trace(&Condition,&Resu))
   {
    GUI_Fill(Resu.x-Resu.w/2,Resu.y-Resu.h/2,Resu.w,1,0xf800);
    GUI_Fill(Resu.x-Resu.w/2,Resu.y-Resu.h/2,1,Resu.h,0xf800);
    GUI_Fill(Resu.x-Resu.w/2,Resu.y+Resu.h/2,Resu.w,1,0xf800);
    GUI_Fill(Resu.x+Resu.w/2,Resu.y-Resu.h/2,1,Resu.h,0xf800);
    GUI_Fill(Resu.x-2,Resu.y-2,4,4,0xf800);
   }
   bn=0;
  }   
}
}

颜色识别.rar

283.85 KB, 下载次数: 41, 下载积分: 黑币 -5






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1