新手上路
- 积分
- 26
- 金钱
- 26
- 注册时间
- 2018-4-6
- 在线时间
- 5 小时
|
以下是程序,我只在更新图像函数里添加了几行代码
#include "led.h"
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "lcd.h"
#include "usart.h"
#include "string.h"
#include "ov7670.h"
#include "tpad.h"
#include "timer.h"
#include "exti.h"
#include "usmart.h"
const u8*LMODE_TBL[5]={"Auto","Sunny","Cloudy","Office","Home"};
const u8*EFFECTS_TBL[7]={"Normal","Negative","B&W","Redish","Greenish","Bluish","Antique"};
extern u8 ov_sta;
extern u8 ov_frame;
void camera_refresh(void)
{
u8 R,G,B;
u32 j;
u16 color;
if(ov_sta)
{
LCD_Scan_Dir(U2D_L2R);
if(lcddev.id==0X1963)LCD_Set_Window((lcddev.width-240)/2,(lcddev.height-320)/2,240,320);//
else if(lcddev.id==0X5510||lcddev.id==0X5310)LCD_Set_Window((lcddev.width-320)/2,(lcddev.height-240)/2,320,240);//
LCD_WriteRAM_Prepare();
OV7670_RRST=0;
OV7670_RCK_L;
OV7670_RCK_H;
OV7670_RCK_L;
OV7670_RRST=1;
OV7670_RCK_H;
for(j=0;j<76800;j++)
{
OV7670_RCK_L;
color=GPIOC->IDR&0XFF;
OV7670_RCK_H;
color<<=8;
OV7670_RCK_L;
color|=GPIOC->IDR&0XFF;
OV7670_RCK_H;
LCD->LCD_RAM=color;
R=(color>>11)&0xFF;
G=(color&0x07E0>>5)&0xFF;
B=(color&0X001F)&0xFF;
LCD_ShowxNum(0,0,R,4,16,0);
LCD_ShowxNum(40,40,G,4,16,0);
LCD_ShowxNum(80,80,B,4,16,0);
}
ov_sta=0;
ov_frame++;
LCD_Scan_Dir(DFT_SCAN_DIR);
}
}
|
|