上篇讲了OV7670寄存器的读写,说明可以进行基本的操作了,这次就来说说如何读取一帧图像。 图像采集就是从 FIFO 缓冲器 AL422B 读取一帧图像,然后串口打印每个点的颜色值。因为没有LCD显示器,目前先这么来处理看看。本程序就只先读取一帧图像来测试。根据帧同步信号的电平来判断是装入数据到FIFO还是数据装入完毕才进行处理,装完以后在主程序里读取图像数据,并上传到串口打印到PC。 按照 AL422B 的工作时序读取一帧图像数据;在初始化的时候已经设置为320*240的图像大小了。一个 FOR 循环读两次,一次读 8 位,两次就刚好一个 16位RGB565 的像素点。一帧图像宽高是 320×240=76800个像素点,循环 76800次读完一帧图像。
引脚初始化定义,数据引脚和控制引脚,SSCB总线引脚是直接使用的。
项目初始化,OV7670的配置用的是别人写好的库,参数配置都在库里面
现成的库 |