附件内容提供AD格式原理图PCB工程文件,用altiumDesigner打开。
程序采用C语言编写,通过keil软件编译,文件为工程源代码。
u8 X_Value=0;//目的坐标
u8 Y_Value=0;
u8 ScanFlag=0; //扫面标志
u16 qr_image_width; //输入识别图像的宽度(长度=宽度)
u8 readok=0; //采集完一帧数据标识
u32 *dcmi_line_buf[2]; //摄像头采用一行一行读取,定义行缓存
u16 *rgb_data_buf; //RGB565帧缓存buf
u16 dcmi_curline=0; //摄像头输出数据,当前行编号
char *xy= "x12,y34.";
//摄像头数据DMA接收完成中断回调函数
void qr_dcmi_rx_callback(void)
{
u32 *pbuf;
u16 i;
pbuf=(u32*)(rgb_data_buf+dcmi_curline*qr_image_width);//将rgb_data_buf地址偏移赋值给pbuf
if(DMA2_Stream1->CR&(1<<19))//DMA使用buf1,读取buf0
{
for(i=0;i<qr_image_width/2;i++)
{
pbuf[i]=dcmi_line_buf[0][i];
}
}else //DMA使用buf0,读取buf1
{
for(i=0;i<qr_image_width/2;i++)
{
pbuf[i]=dcmi_line_buf[1][i];
}
}
dcmi_curline++;
}
//imagewidth:<=240;大于240时,是240的整数倍
//imagebuf:RGB图像数据缓冲区
void qr_decode(u16 imagewidth,u16 *imagebuf)
【资源下载】下载地址如下(784):https://docs.qq.com/doc/DTlRSd01BZXNpRUxl