陈飞跃+++张丽红+++王泽旭
摘 要:文章介绍利用TMS320F28016通過ecap捕捉单元、I2C接口、IO口模拟采集模组OV2640数据,并通过SCI串口通信将采集数据发送到显示单元。可支持不同格式的像素输出。
关键词:TMS320F28016;OV2640;ecap捕捉单元;I2C接口;IO口模拟采集;SCI串口
该设计采用DSP型号为TMS320F28016,配合OV2640模组实现摄像采集,并通过SCI串口将采集图像发送出去,支持QCIF(176*144),QVGA(320*240),VGA(640*480)等不同像素输出,最大支持200万像素。
1 系统主要硬件接口设计
OV2640模组的管脚接口如图1所示,该设计使用时将OV2640的HREF和PLCK接入与非门器件再输出为一个管脚信号H/P。
TMS320F28016的XCLOUT对OV2640模组提供时钟,其I2C接口的SDAA和SCLA管脚用来模拟SCCB接口,对OV2640进行初始化和相关图像输出配置。使用两个ecap中断捕捉信号,一个捕捉模组的场同步VSYNC,另外一个捕捉HERF和PCLK的的与非输出。最后利用SCI串口将采集到的图像数据进行发送输出。DSP管脚接口的连接简易图如图2所示。
2 系统软件程序介绍
程序设计重点首先在于通过DSP的I2C管脚模拟SCCB接口时序,包括起始、终止、无应答、读写字节等操作,然后按照OV2640的数据手册进行正确初始化和参数配置。
其次需要通过捕捉单元来准确捕捉图像帧的起始和结束时刻,当VSYNC为上升沿时,OV2640开始输出图像数据;当HREF为高电平时,JPEG数据便在像素时钟的同步下输出数据,所以VSYNC和HREF都是高电平有效。OV2640的像素时钟是上升沿有效,它与HREF做与非逻辑后变为下降沿有效。
最后利用IO口模拟读取图像数据时IO的读取速度一定要比OV2640的数据输出速度快才行。
系统主要功能函数包括:
unsigned char OV2640_init(void) //初始化OV2640并配置图像输出格式,先配置分辨率,然后配置YUV输出,最后配置JPEG输出
interrupt void ecap1_isr(void)//产生中断,触发图像数据读取并将数据送入串口发送缓冲区
interrupt void ecap2_isr(void)//产生中断,判断照片帧输出时刻,等第3帧照片输出后,再读取,一般设置完后,前两帧的都不正常
interrupt void SCIATXINTA_ISR(void)// 利用串口中断方式进行数据发送
3 结束语
经验证,该系统采用DSP28016+OV2640模组方案,设置10W像素JPEG输出,采用8个I/O口模拟图像采集口接收JPEG图像数据,不进行存储直接利用串口(最高速率115200bit/s)上传图像,可达到图像稳定采集效果。
参考文献
[1]林志琦,张修谦,富丽,等.基于TMS320F2812和CPLD的200万像素数字图像采集系统接口设计[J].长春理工大学学报(自然科学版),2007(02).
[2]黄健,罗国平,杜丽君.基于STM32F407平台OV2640驱动程序设计[J].通讯世界,2015(19).