DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1174|回复: 0
打印 上一主题 下一主题

[待整理] 基于STM32的嵌入式双目图像采集系统设计

[复制链接]
跳转到指定楼层
楼主
发表于 2014-10-10 07:46:11 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
1 引言
        随着图像处理技术及嵌入式系统的发展,利用嵌入式系统进行图像处理,已使如视频监控、视频电话和视频会议等应用成为可能。嵌入式系统上进行图像采集则是实现这些应用的前提[1~2]。
         
        双目立体视觉通常由两个摄像头从两个不同的角度,同时获取外界物体的两幅图像,或由单独一个摄像头在不同时间、不同位置获取外界物体的两幅图像,并基于视差的原理来获取外界物体的三维几何信息,复现外界物体的形状和位置。
         
        目前已有很多方案实现在嵌入式平台上的图像采集。本文基于嵌入式的图像采集系统选择了意法半导体(ST)公司生产的STM32F103ZET6芯片为主控芯片,FIFO结构的AL422B芯片实现图像数据缓存,SD卡实现图像存储以及四线制电阻触摸屏实现外部控制[3]。实现通过OV7670双摄像头采集图像数据,经主芯片控制存储、显示[4]。
         
        2 嵌入式主控芯片介绍
        ARM Cortex-M 处理器是一系列定位于深度嵌入式开发应用设计的。STM32F103ZET6是由意法半导体(ST)公司生产的新一代Cortex-M3内核处理器,具有以下特点:
         
        性能和能效:具有高性能和低动态能耗,在90nm基础上提供了12.5DMIPS/mW 的性能,Cortex-M3处理器确保对于同时需要低能耗和出色性能的应用不存在折衷。
         
        丰富的连接:功能和性能的巧妙组合使基于Cortex-M3的设备可以有效处理多个I/O 通道和协议标准,如USB OTG(On-The-Go)[5]。
         
        3 μC/OS-II操作系统介绍
        μC/OS-II操作系统实时性有保障,延时可预测,代码可小到2K,完全可以满足设计需要。C/OS-II移植过程中只选择用户和系统两种模式。μC/OS-II包括任务调度、时间管理、内存管理、资源管理(信号量、邮箱、消息队列)四大部分,没有文件系统、网络接口、输入输出界面。它的移植只与4个文件相关:汇编文件(OS_CPU_A.ASM)、处理器相关C文件(OS_CPU.H、OS_CPU_C.C)和配置文件(OS_CFG.H)[6~7]。
         
        4 系统硬件设计
        系统采用ARM 处理器作为核心,负责对系统设备初始化、数据总线仲裁、承载操作系统运行;为了弥补图像传输过程中的时钟偏差和图像显示不流畅等缺点,采用AL422B图像缓存芯片;图像经主芯片控制将于液晶屏显示,并存贮于SD卡中。系统结构图如图1所示[8]。
         
       
         
                        4.1 核心器件选型
                        系统的核心ARM 处理器使用由意法半导体公司生产的新一代Cortex-M3内核的STM32F103ZET6,具有高性能和低动态能耗,带有FSMC 外设可以外挂NAND FLASH、SRAM等,支持代码从扩展的外部存储器中直接运行,而不需要首先调入内部SRAM,便于系统的数据传输[9]。
                         
                        图像传感器采用Ommivision公司的OV7670 CMOS摄像头,较CCD 摄像头具有较高的性价比,具有标准的SCCB接口,兼容I2 C接口,其高灵敏度和自动画面控制功能满足检测系统的精度要求[10]。
                         
                        4.2 检测电路设计
                        系统采用集成了A/D和DSP的图像传感器模块,通过SCCB总线,由STM32完成定义相应寄存器和初始化;通过寄存器可设置图像数据输出格式,系统选择RGB565格式输出,一个像素点占16位,而像素数据总线为D0-D7,因此用两个PCLK时钟周期分别输出高8位和低8位;
                         
       
                        图2 图像传感器模块接口
                         
                        XCLK是由CPLD 提供的输入时钟;VSYNC、HREF分别在每帧、每行开始和结束时电平发生跳变,供CPLD 判断[11]。图像传感器模块接口如图2所示。
                         
                        4.3 数据缓存电路设计
                        数据缓存使用AverLogic公司推出的一个存储容量为393216字节×8位的FIFO存储芯片AL422B,其所有的寻址、刷新等操作都由集成在芯片内部的控制系统完成。数据缓存接口如图3所示,DO0-DO7是8位写出数据总线;DI0-DI7是8位写入数据总线;CE引脚为片选,OE为输出控制,WE是写操作控制;通过STM32的FSMC与外设连接。采用AL422B芯片对连续的数据流进行缓存,防止在进机和存储操作时丢失数据;数据集中起来进行进机和存储,避免了频繁的总线操作,减轻CPU的负担。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-12-28 21:11 , 耗时 0.086742 秒, 21 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表