来发一下基于stm32f4 + ov2640 +nrf24l01 的颜色识别程序
单片机源程序如下:
- #include "sys.h"
- #include "delay.h"
- #include "usart.h"
- #include "led.h"
- #include "key.h"
- #include "lcd.h"
- #include "usmart.h"
- #include "usart2.h"
- #include "timer.h"
- #include "ov2640.h"
- #include "dcmi.h"
- #include "easytrace.h"
- #include "24l01.h"
-
- u8 *buf_tmp;
- short data[2]={0};
- u8 Receive_buf[6];
- u8 Start_Get_Origin_Flag = 1;
- int main(void)
- {
- u16 i,j;
- NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置系统中断优先级分组2
- delay_init(168); //初始化延时函数
- uart_init(115200); //初始化串口波特率为115200
- usart2_init(42,115200); //初始化串口2波特率为115200
- LED_Init(); //初始化LED
- LCD_Init(); //LCD初始化
- KEY_Init(); //按键初始化
- TIM3_Int_Init(200-1,8400-1);//10Khz计数,1秒钟中断一次
-
- usmart_dev.init(84); //初始化USMART
- POINT_COLOR=RED;//设置字体为红色
-
- while(OV2640_Init())//初始化OV2640
- {
- LCD_ShowString(30,130,240,16,16,"OV2640 ERR");
- delay_ms(200);
- LCD_Fill(30,130,239,170,WHITE);
- delay_ms(200);
- }
- LCD_ShowString(30,130,200,16,16,"OV2640 OK");
-
-
-
- OV2640_OutSize_Set(176,144);
-
- OV2640_RGB565_Mode(); //RGB565模式
- My_DCMI_Init(); //DCMI配置
- DCMI_DMA_Init((u32)rgb_buf,sizeof(rgb_buf)/4,DMA_MemoryDataSize_HalfWord,DMA_MemoryInc_Enable);//DCMI DMA配置
- DCMI_Start(); //启动传输
-
- //************初始化NRF24L01****************//
- NRF24L01_Init();
- while(NRF24L01_Check())
- {
- LED1=0;
- LED0=0;
- }
- NRF24L01_TX_Mode();
- //*****************************************//
-
- LCD_Clear(BLACK);
- while(1)
- {
- if(Start_Get_Origin_Flag==1){
- Start_Get_Origin_Flag=0;
- delay_ms(3000);
- }
- OV2640_binarization();
- data[0] = Relative_X;
- data[1] = Relative_Y;
-
- if(NRF24L01_TxPacket(Receive_buf)==TX_OK)
- {
- LED0=0;
- printf("RX %d,RY %d\n",Relative_X,Relative_Y);
- buf_tmp = DataPacket(data);
- for(i=0;i<6;i++)
- {
- Receive_buf[i] = buf_tmp[i];
- //printf("%d %d\n",Receive_buf[0],Receive_buf[1]);
- }
- }
-
-
- }
- }
- void TIM3_IRQHandler(void)
- {
- if(TIM_GetITStatus(TIM3,TIM_IT_Update)==SET) //溢出中断
- {
- }
- TIM_ClearITPendingBit(TIM3,TIM_IT_Update); //清除中断标志位
- }
复制代码
所有资料51hei提供下载:
实验35 摄像头实验.zip
(624.83 KB, 下载次数: 125)
|