找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2707|回复: 0
打印 上一主题 下一主题
收起左侧

stm32颜色识别

[复制链接]
跳转到指定楼层
楼主
ID:240128 发表于 2017-10-17 08:07 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#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, 下载次数: 40, 下载积分: 黑币 -5

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表