常驻嘉宾
- 积分
- 4627
- 威望
- 2290
- 贡献
- 1181
- 兑换币
- 924
- 注册时间
- 2012-2-13
- 在线时间
- 578 小时
|
野火 发表于 2013-4-24 16:38
你好,加Q:753258889 ,方便寻找问题
先对k60进行解锁,用jlink 的jtag 模式下载
你好,我用最原始的综合分离代码中的代码采集图像,然后解压发送串口,可是图像上下左右都跳动,原因未知,代码如下,帮忙看一下,不适用行中断的那个。
#include "common.h"
#include "include.h"
u8 img_bin_buff[CAMERA_SIZE];
u8 IMAGE[60][80];
void main(void)
{
Site_type site={0,0}; //显示图像左上角位置
Size_type size={80,60}; //显示区域图像大小
uart_init(UART1,115200);
LCD_Init(RED); //初始化,设置背景为白色
Ov7725_Init((u8 *)img_bin_buff); //img_bin_buff 新的图像指针 //摄像头初始化
//pit_init_ms(PIT0,10000); //10秒触发一次中断
//LED_init();
gpio_init(PORTA,4,GPO,1);
while(1)
{
int i,j,m=0;
//disable_irq(PIT0+ 68); //关闭PIT中断,避免影响图像采集
ov7725_get_img();
//LCD_Img_Binary(site,size,(u16 *)(img_bin_buff));
PTA4_OUT=0;
//解压
for(i=0;i<60;i++)
{
for(j=0;j<80;j+=8)
{
IMAGE[j+7]=(img_bin_buff[m]&(0x01<<0))>>0;
IMAGE[j+6]=(img_bin_buff[m]&(0x01<<1))>>1;
IMAGE[j+5]=(img_bin_buff[m]&(0x01<<2))>>2;
IMAGE[j+4]=(img_bin_buff[m]&(0x01<<3))>>3;
IMAGE[j+3]=(img_bin_buff[m]&(0x01<<4))>>4;
IMAGE[j+2]=(img_bin_buff[m]&(0x01<<5))>>5;
IMAGE[j+1]=(img_bin_buff[m]&(0x01<<6))>>6;
IMAGE[j]=(img_bin_buff[m]&(0x01<<7))>>7;
m++;
}
}
m=0;
uart_putchar(UART1,0);
uart_putchar(UART1,255);
uart_putchar(UART1,1);
uart_putchar(UART1,0);
for(i=0;i<60;i++)
{
for(j=0;j<80;j++)
{
if(IMAGE[j]==0)
uart_putchar(UART1,160);
else
uart_putchar(UART1,50);
}
}
PTA4_OUT=1;
//由于PIT中断会显示LCD,必须保证开中断后,main函数里不能有LCD显示,不然显示错乱
//enable_irq(PIT0+ 68); //允许PIT中断,避免影响图像采集
}
|
|