版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、题 目单片机摄像头数据采集与处理_自动化学院_院(系) 自动化_专业学号08009123姓名孙博指导教师符影杰顾问教师起止日期2012.12.20 2013.06.10设计地点中心楼224东南大学毕业设计(论文)报告摘要单片机摄像头数据采集与处理摘要随着计算机的发展,随着图像采集处理技术的进步和社会的发展,其被广泛的运用于社会社交,远程医疗及实时监控等各个方面。图像测量是一种非接触式的检测方法,可应用于工业、民用等许多领域。图像采集与处理是图像测量的基础,关系到测量的精度与速度。基于单片机摄像头图像采集与处理技术拥有广泛的应用市场和广阔的发展前景。本文中基于低功耗单片机的摄像式实时图像测量系统
2、,通过图像测量的方法,可直接安装在常规电表前,采用摄像技术和图像识别技术实现数据采集,将读表数据直接在单片机中处理并显示出结果,采用串口传输技术将数据存储于上位机上并显示,无需人工干预,具有成本低、安装简单、智能化程度高的特点。 针对本设计的特点,采用一种基于图像处理技术的数码管检测系统,设计了静态图像采集和静态图像处理的控制方案。首先,通过分析与实验,完成各功能模块核心元件的选型与外围电路设计。经过硬件调试,完成了最小系统、图像采集、数据存储、结果显示和数据传输等功能模块的硬件设计。其次,在硬件平台的基础上,实现各个功能模块的软件功能。基于本装置的控制要求,分别选用了MSP430F149单片
3、机和STC12LE5A60S2单片机和OV7670图像传感器作为核心部件,设计并完成了两套图像测量系统。实验结果表明,该装置满足测量要求,达到了研究的预期目的。关键词:图像测量、图像处理、摄像头、单片机. IV .东南大学毕业设计(论文)报告AbstractSinglechip camera data acquisition and processingAbstractWith the development of computer technology, along with the development of image acquisition and processing techno
4、logy and the progress of society, image technology is widely used in social networking,telemedicine and real-time monitoring. Image measurement is a sort of non-contact measurement, which can be applied to many fields such as industrial, civil. Image acquisition and processing is the basis of image
5、measurement, which is related to the precision and speed of measurement. Image acquisition and processing technology based on singlechip has a widely application prospect for development.Camera image real-time measurement system based on low power consumption MCU in this paper, through the method of
6、 image measurement, can be directly installed in the conventional electric meter, which adopt the realization of data acquisition camera technology and image recognition technology, processing the reading data directly in the MCU and display the results. It uses serial transmission technology to sto
7、re data to the PC and display, without manual intervention, having the characteristics of low cost, simple installation, high intelligent degree.According to the characteristics of the design, using a digital detection system based on the image processing technique, a control scheme is designed for
8、the static image acquisition and static image processing. Firstly, through analysis and experiment, complete the design and selection of key components of peripheral circuit of each function module. After hardware debugging, completed the hardware design of the minimum system, image acquisition, dat
9、a storage, results display and data transmission module. Secondly, based on the hardware platform, realize each function module of software function. Based on the requirements of the device, MSP430F149 chip and STC12LE5A60S2 MCU and OV7670 image sensor is used as a core component, I designed and com
10、pleted the two sets of image measurement system. The experimental results show that, the device meets the measurement requirements and achieves the expected goal.KEYWORDS: Image measurement,image processing,camera,singlechip.东南大学毕业设计(论文)报告目录目录摘要IABSTRACTII第1章 绪论11.1 项目背景、研究现状与研究意义11.1.1 项目背景11.1.2 研
11、究现状11.1.3 研究意义21.2 本论文所做的主要工作与所要达到的目标2第2章 总体设计32.1 基于图像处理的相关方案32.1.1 图像处理相关理论32.1.2 图像采集42.1.3 图像处理42.2 控制方案设计42.2.1 处理器的选型42.2.2 图像处理解决方案42.2.3 系统可行性分析52.3 系统方案设计52.3.1 装置的组成及工作原理52.3.2 系统的设计要点6第3章 系统硬件设计73.1 系统元件选型73.1.1 处理器73.1.2 图像传感器模块83.1.3 显示单元LCD1602113.2 硬件电路设计113.2.1 单片机开发板外围电路和硬件113.2.2 图
12、像传感器接口133.2.3 LCD显示接口143.3 硬件结构设计总图153.4 本章小结16第4章 系统软件实现174.1 软件开发环境介绍174.1.1 IAR174.1.2 KEIL174.2 图像采集与存储174.2.1 初始化时钟与OV7670184.2.2 图像采集存储与串口发送214.3 上位机图像显示软件244.3.1 串口通信244.3.2 绘图264.3.3 主要程序架构264.4 单片机图像处理与显示274.4.1 单片机图像处理274.4.2 图像处理结果显示284.5 软件系统总流程284.6 本章小结29第5章 总结与展望305.1 总结305.2 展望31参考文献
13、32致谢33东南大学毕业设计(论文)报告Error! No text of specified style in document. Error! No text of specified style in document.第1章 绪论1.1 项目背景、研究现状与研究意义1.1.1 项目背景随着计算机、多媒体和数据通信技术的高速发展,数字图像处理近年来得到了极大的重视和长足的发展,并在科学研究、工业生产、医疗卫生、教育、娱乐、管理和通信方面取得了广泛的应用。同时,人们对计算机视频应用的要求也越来越高,从而使得高速、便捷、智能化的高性能数字图像处理设备成为未来视频设备的发展方向,图像处理技术在
14、目标跟踪、机器人导航、辅助驾驶中都得到越来越多的应用。由于图像处理的数据量大,数据处理相关性高,因此图像处理系统必须具有强大的运算能力。从图像处理技术的发展来看,实时性在实际中有着广泛的应用。实时图像处理系统设计的难点是如何在有限的时间内完成大量图像数据的处理。因为要对图像进行实时处理,所以为了实现实时和快速,高效的处理,在这个系统中要求我们的图像处理速度要达到一定的速度 。为了快速的处理大数据量的多媒体信息,特别是活动图像信息,同时又能灵活的支持多种不同的应用,单片机的应用势在必行。各种高性能单片机1不仅可以满足在运算性能和实时性能方面的需要,而且由于单片机的可编程性,还可以在硬件获得系统设
15、计的极大灵活性。近年来,单片机技术的发展不断将数字信号处理领域的理论研究成果应用到实际系统中,并且推动了新的理论和应用领域的发展,对图像处理等领域的技术发展也起到了十分重要的推动作用。基于单片机2的图像处理系统也被广泛的应用于各种领域。1.1.2 研究现状基于单片机的图像处理系统越来越受到人们的青睐。随着微型计算机的发展和普及,现代图像处理方式越来越向高速、小型、简洁的方向发展,图像处理逐渐由专用、笨重的图像处理机过渡到通用、小型方式,但是由于图像数据量大,算法复杂,使用软件来处理时,软件往往局限于计算机的配置,使得图像处理速度比较慢、实时性差、价格高,不能适应恶劣工作环境。以单片机为核心的硬
16、件系统同样可以用来进行图像处理,为这个问题的解决带来了新的途径。 单片机的运算速度和运算精度不断地提高,片内的存储容量不断地加大,系统功能、数据处理能力以及与外部设备的通信功能不断地增强,完全可以脱离PC机开发出基于单片机的图像系统。这种设计方案的优点是设计简单、灵活,成本比较低,便于实际中使用。1.1.3 研究意义在数字图像处理技术中,图像测量3是一种非接触式的检测方法,可应用于工业、民用等许多领域。随着计算机的发展,随着图像采集处理技术的进步和社会的发展,图像测量被广泛的运用于社会社交,远程医疗及实时监控等各个方面。基于单片机摄像头数据采集与处理4的实时读表技术就是图像测量的一个重要的应用
17、。随着科技的发展和人们生活水平的提高,许多现有的电表已经不能满足人们的需求,比如数据的实时存储等功能的欠缺,使得人们需要对现有电表终端进行改造。通常,对现有电表终端的改造都是用新型智能电表替换原有常规电表,这不仅造成了资源的浪费,也增加了建设成本。本文中基于低功耗单片机的摄像式实时读表器,可直接安装在常规电表上,采用摄像技术和图像识别技术实现数据采集,将读表数据直接存储于单片机中,并采用串口传输技术将数据存储于上位机上,无需人工干预,具有成本低、安装简单、智能化程度高的特点。 1.2 本论文所做的主要工作与所要达到的目标根据单片机摄像头数据采集与处理的研究现状和实际应用的要求,设计了一种基于单
18、片机的实时读表装置。采用图像的方法对电表的数码管进行检测并且将结果输出5,并在此基础上设计相应的软硬件。本课题要达到如下目标:(1)通过软件编程设置OV7670摄像头内部参数实现图像的采集6。(2)将采集到的图像转换为数字信号存储在AL422里。(3)用MSP430单片机将存储在AL422内部的数字代码提取出来,通过串口通讯和上位机应用程序将图像数据显示在PC上。(4)在MSP430单片机中通过相关图像算法得出所采集数码管图像的数据,从而将结果显示在LCD1602上。(5)使用C51单片机再次实现(1)到(3)的功能。第2章 总体设计本文将对数码管图像的测量作为研究对象,致力于涉及一种快捷方便
19、、成本低、精度高的图像测量系统。本章结合了图像处理的相关理论,分析了基于图像处理技术的数码管图像测量系统的可行性,根据系统需求确定控制方案和基本功能模块,完成系统的整体方案设计。2.1 基于图像处理的相关方案2.1.1 图像处理相关理论自然界一般的图像都是模拟图像,处理器不能直接处理模拟信号,图像采集是处理器借助各种图像传感器获取数字的场景图像的过程,因此需要图像传感器将模拟图像通过采样和量化的过程数字化。(1)彩色模型。常见的面向硬件设备的彩色模型有 RGB 模型、YUV 模型;根据三基色理论,任何颜色都可以用三基色即红(R)、绿(G)、蓝(B)按照不同的强度匹配。常见的 RGB 格式有 R
20、GB888、RGB555、RGB565。YUV 色彩模型来源于 RGB 模型,其特点是将亮度与色度分开,便于应用到图像处理中6。RGB 与 YUV 相互转化的公式如下:图 2-1 RGB与YUV格式的相互转化公式本系统首先采用 RGB565 格式通过摄像头来采集数据,即用 5 位表示红色、6 位表示绿色、5 位表示蓝色,共16位,占2个字节或32位系统中的半字。随后通过RGB与YUV相互转化的公式将其转化为YUV422的格式,共8位,占1个字节,这样既有利于通过串口传输到上位机,也有利于在单片机中对图像进行检测,使得整个过程快捷方便,精度高。(2)像素。模拟的图像经过数字图像传感器采样后,把空
21、间上连续的图像转化为离散的采样点,即像素。若干个像素按照逐行逐列的排列,来表示该位置画面的色彩及亮度情况。若采样结果每行像素为M个,每列像素为N个,则组成了一个像素的阵列,整幅图像的大小为M*N个像素。如本系统中使用的图像传感器采集的图像大小为 320*2407。2.1.2 图像采集图像输入设备主要包括镜头、传感器、A/D 转换器、处理器等 4个部分。数字图像传感器分为两种,一种是电荷耦合器件(CCD)作为光电转换器,另一种是互补型金属氧化物半导体(CMOS)作为光电转换器。CMOS 技术早期常用于数据存储技术,其制造成本和功耗都低于 CCD。随着半导体技术的发展,CMOS 技术逐渐应用于视频
22、产品中,并且成像通透性、色彩还原性也逐渐媲美 CCD 传感器。对比两种图像传感器,本系统选择性价比较高的 CMOS 图像传感器,节省了资源与图像预处理的复杂性,模块配有可调焦镜头以满足数码管图像检测的要求。2.1.3 图像处理图像经过采样和量化后,一幅图像可以用数字化表达,通过处理器对数字信号的进一步处理,提取出所需要的信息。在本系统中,图像处理主要包括平滑滤波,阈值分割,局部提取等。2.2 控制方案设计在控制方案设计中,处理器的选择和图像处理解决方案的确定是工作重点,正确的配置核心处理器和控制方案对图像采集、图像处理的性能起着重要作用。2.2.1 处理器的选型各种处理器在计算机技术的基础上有
23、着自身的优势,其软件硬件便于剪裁,适用于对功能、可靠性、成本、体积、功耗等参数有严格要求的系统。比如以X86为代表的嵌入式处理器,以51系列单片机为代表的微控制器,以Texas Instrument公司的TMS320为代表的DSP处理器,以及ARM处理器。其中,单片机是将一个小型的计算机系统集成到一个芯片中,以处理器为核心,内部集成了 ROM、RAM、总线、定时器、通信接口等功能,大大降低了功耗和成本,提高了系统的可靠性。由于本系统只需要简单地图像采集与处理,单片机可以满足低速的运行,非常适合本系统。2.2.2 图像处理解决方案(1)DSP 方案。DSP 适合数字信号处理的一些复杂算法实现,其
24、采用哈佛体系结构,指令和数据分开,有很强的数据处理能力,但其控制能力薄弱,一般DSP专门用于信号处理,还需要配合另外控制器做控制,如配合FPGA联合工作,弥补了DSP在并行数据处理和总线控制方面的劣势,DSP 负责完成信号处理、算法实现、数学运算等功能,能实现实时采集与处理图像;但此高性能也意味着高成本,并且 DSP 与 FPGA 编程和算法实现比较复杂,难以实现。(2)单片机方案。单片机系统由于数据处理能力有限和功能相对简单,主要适用于测控系统,能低成本地完成工控要求,并不适用于数据量较大的图像处理系统。本系统在控制部分将采用单片机系统完成图像检测系统控制。2.2.3 系统可行性分析随着计算
25、机技术和半导体存储技术的快速发展,数字图像处理技术在各个应用领域获得了广阔的发展空间。与人眼视觉相比,基于数字图像处理技术和机器视觉技术的图像采集处理系统能有效克服人眼的主观性、局限性和模糊性。因此,将数字图像处理技术用于数码管的检测具有一定的可行性。数字图像处理包括图像采集与图像处理两大部分:图像采集包括图像传感器对图像的数字化、彩色模型的选取等;图像处理包括平滑滤波,阈值分割,局部提取等。系统通过 CMOS 图像传感器采集图像,将数据存储到FIFO中,然后通过图像处理的方式将图像阈值分割,从而得到图像的各部分亮度信息,经过一定的图像处理算法进行局部提取就能得出数码管局部信息,通过检测算法就
26、能得出数码管局部亮度值。因此,基于图像处理技术的数码管检测系统具有较强的实用性和可行性8。2.3 系统方案设计针对数码管检测系统的控制需求,电表数码管的数值变化速度不快,所以对检测系统的实时性要求不高,为追求最高性价比,本系统采用单片机控制方案:由单片机负责图像传感器的总线控制,将采集到的数字信号存储到FIFO中,由单片机负责图像处理和显示模块。由于单片机处理器数据处理能力有限,同时负担图像采集、存储和图像处理,实时性难以保障,图像会存在延时的现象。针对数码管检测对实时性要求不高的特点,系统采用静态图像采集、静态图像处理的控制方案,在确定外界因素后,停止采集图像信号,完成类似数码照相机的“拍照
27、”功能,将此图像的数据存于FIFO中,由处理器对其进行一系列图像处理与亮度计算,最终得出亮度值并且能显示和传输,从而达到数码管检测的需求9。2.3.1 装置的组成及工作原理图像处理系统按功能划分为单片机、控制器、图像采集、数据缓存、实时显示和上位机通信六个部分。图 2-2 系统装置的组成本系统基于单片机通过软件编程设置OV7670摄像头内部参数采集图像,并将采集到的图像转换为数字信号存储在AL422B芯片中;随后单片机一方面将存储在AL422内部的数字代码提取出来,经过算法处理和串口通信将数据显示在PC上,一方面在单片机内进行图像算法处理,得出数码管显示的数字结果并且显示在LCD1602上。2
28、.3.2 系统的设计要点课题的关键问题和难点在于:(1)图像读取和存贮(2)图像显示(3)图像处理实验第3章 系统硬件设计本章主要介绍系统的硬件电路设计,针对系统的设计方案确定了元件的选型和各个功能模块的电路,并且针对本系统的特点及性能要求对硬件结构进行优化,完成了系统各主要电路的连线设计及调试。3.1 系统元件选型根据第二章方案设计中确定的系统结构,结合控制方案,经过实验测试和数据分析,确定处理器、图像传感器、数据缓存等核心原件的型号,分析其性能参数。3.1.1 处理器3.1.1.1 MSP430F149单片机MSP430F149芯片是美国TI公司推出的超低功耗微处理器,有60KB+256字
29、节FLASH,2KBRAM,包括基本时钟模块、看门狗定时器、带3个捕获比较寄存器和PWM输出的16位定时器、带7个捕获比较寄存器和PWM输出的16位定时器、2个具有中断功能的8位并行端口、4个8位并行端口、模拟比较器、12位AD转换器、2个串行通信接口等模块10。MSP430F149芯片具有如下特点:(1)功耗低:电压22V、时钟频率1MHz时,活动模式为200A;关闭模式时仅为01A,且具有5种节能工作方式。(2)高效16位RISC-CPU,27条指令,8MHz时钟频率时,指令周期时间为125ns,绝大多数指令在一个时钟周期完成;32kHz时钟频率时,16位MSP430单片机的执行速度高于典
30、型的8位单片机20MHz时钟频率时的执行速度。(3)低电压供电、宽工作电压范围:1836V;(4)灵活的时钟系统:两个外部时钟和一个内部时钟;(5)低时钟频率可实现高速通信11;(6)具有串行在线编程能力;(7)强大的中断功能;(8)唤醒时间短,从低功耗模式下唤醒仅需6s;(9)ESD保护,抗干扰力强;(10)运行环境温度范围为-40+85,适合于工业环境12。MSP430系列单片机的所有外围模块的控制都是通过特殊寄存器来实现的,故其程序的编写相对简单。编程开发时通过专用的编程器13,可以选择汇编或C语言编程,IAR公司为MSP430系列的单片机开发了专用的C430语言,可以通过WORKBEN
31、CH和C-SPY直接编译调试,使用灵活简单 14。3.1.1.2 STC12LE5A60S2单片机STC12C5A60S2系列单片机是STC生产的单时钟/机器周期1T的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8-12倍。内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换(250K/S,即25万次/秒),针对电机控制,强干扰场合。15(1)增强型8051CPU,1T,单时钟/机器周期,指令代码完全兼容传统8051。(2)工作电压:STC12C5A60S2系列工作电压:5.5V - 3.5V (5V单片机)。STC12LE
32、5A60S2系列工作电压:3.6V - 2.2V (3V单片机)。(3)工作频率范围:035MHz,相当于普通8051的0420MHz。(4)用户应用程序空间8K /16K / 20K / 32K / 40K / 48K / 52K / 60K / 62K 字节。(5)片上集成1280字节RAM16。(6)通用I/O口(36/40/44个),复位后为:准双向口/弱上拉(普通8051传统I/O口)可设置成四种模式:准双向口/弱上拉,强推挽/强上拉,仅为输入/高阻,开漏每个I/O口驱动能力均可达到20mA,但整个芯片最大不要超过120mA。(7)ISP (在系统可编程)/ IAP (在应用可编程)
33、,无需专用编程器,无需专用仿真器 可通过串口(P3.0/P3.1)直接下载用户程序,数秒即可完成一片。(8)看门狗。(9)内部集成MAX810专用复位电路(外部晶体12M以下时,复位脚可直接1K电阻到地)。3.1.2 图像传感器模块3.1.2.1 OV7670图像传感器是实现机器视觉的核心元件,在第二章通过分析基于嵌入式图像采集系统的功能需求和性价比,对比 CMOS 和 CCD 图像传感器,经过分析测试,系统最终选用OmmiVision 公司的 OV7670 CMOS 图像传感器,该传感器体积小、功耗低,可控制图像质量、数据格式和传输方式。其具备以下特点:(1)具有标准的 SCCB 接口,兼容
34、 I2C 接口,可通过总线设置传感器模块的功能,适合嵌入式系统应用;(2)可设置多种图像输出格式,如RawRGB、RGB565、RGB555,YUV 等格式;(3)支持 VGA、CIF 等多种尺寸图像的输出;(4)具有自动曝光、自动白平衡、自动黑电平校准等图像自动影响控制功能和饱和度、色相、伽马、锐度等图像质量控制功能;(5)具有消除噪声、坏点补偿、镜头失光补偿、图像缩放和边缘增强等自动调节功能;(6)最大视场角为25°,光学尺寸1/6",最大帧率30fpsVGA,封装尺寸2785um*4325um。系统的数据总线宽度为16位,即采用两个字节表示一个像素点,为方便图像数据存
35、储和处理,系统可采用比较常用的 RGB565 图像格式输出,并且 OV7670具有自动影响控制和图像质量控制功能,能简化处理器对图像的预处理过程,有效提高系统整体性能。因而,从功能特点及其性能参数分析,OV7670 图像传感器符合系统的要求。系统选用市场上较为常用的已封装的 OV7670 模块,省去了此小封装元件的PCB 设计与焊接的过程,传感器被焊接在小块 PCB 板上,所有端口被引出为标准间距的接口便于与系统其它外设相连,传感器图像感光影响区域上方配有可调焦镜头,系统采用这款 OV7670 图像传感器模块简化了传感器硬件电路设计,便于总线控制与数据传输,并且可以通过微调焦距调整视场角和图像
36、清晰度。3.1.2.2 FIFO芯片AL422AL422B是AVERLOGIC公司推出的一个存储容量为393216字节×8位的FIFO存储芯片。其所有的寻址、刷新等操作都由集成在芯片内部的控制系统完成。其结构图如下:图 3-1 AL422B芯片结构图AL422B主要特点是:(1)AL422B的存储体为3Mb(393216字节×8位);(2)可以存储VGA、CCIR、NTSC、PAL和HDTV等制式一帧图形的信息;(3)独立的读写操作,可以接受不同的I/O速率;(4)高速异步串行存取;(5)读写周期为20ns;(6) 存取时间为15ns;(7) 内部DRAM自刷新。为了能完整
37、地读取图像,图像采集原理示意图如图所示。由单片机监测摄像头的行场信号,控制FIFO读取相应的图像;读完所有行后,关闭FIFO读取图像功能,开始由单片机从FIFO中读取图像数据,并进行相应的图像处理,根据图像处理的复杂程度,决定图像处理和图像采集的时间比。由于FIFO是先入先出,其读取数据时单片机只需通过中断使能行场信号,绝大部分时间单片机可以用来进行图像处理。图 3-2 AL422B采集原理示意图3.1.2.3 OV7670带FIFO模块OV7670带FIFO模块,是带有缓冲存储空间的一种模块,这种模块增加了一个FIFO(先进先出)存储芯片,同样包含30W像素的CMOS图像感光芯片,3.6mm
38、焦距的镜头和镜头座,板子同时引出控制管脚和数据管脚,方便操作和使用。图 3-3 OV7670带FIFO模块实物图3.1.3 显示单元LCD16021602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个5X7或者5X11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用。1602LCD是指显示的内容为16X2,即可以显示两行,每行16个字符液晶模块(显示字符和数字)。它功耗低、体积小、显示内容丰富、超薄轻巧,常用在袖珍式仪表和低功耗应用系统中。它的特性如下:(1)3.3V或5
39、V工作电压,对比度可调;(2)内含复位电路;(3)提供各种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能;(4)有80字节显示数据存储器DDRAM;(5)内建有192个5X7点阵的字型的字符发生器CGROM,8个可由用户自定义的5X7的字符发生器CGRAM。3.2 硬件电路设计基于系统方案设计及对每个元件参数与性能分析,已初步验证由上述核心元件组成的系统硬件的可行性。利用核心板及万能板测试并完成各个功能模块电路的设计实验,最终完成系统整体的硬件电路设计。3.2.1 单片机开发板外围电路和硬件3.2.1.1 MSP430开发板外围电路和硬件图 3-4 MSP430F149开发板外围电
40、路和硬件(1).供电方式:USB接口;(2).3.3v,5v电平接口;(3).一个JTAG仿真调试下载端口;(4).一个蜂鸣器;(5).一个标准的MAX3232接口;(6).两个具有中断功能的8位并行端口:P1与P21;(7).6个8位端口,P1,P2,P3,P4,P5,P6;图 3-5 MSP430开发板外围电路和硬件实物图3.2.1.2 C51开发板外围电路和硬件和MSP430F149开发板类似,只是缺少了JTAG仿真调试下载端口,所以不能进行仿真调试,给后期的软件调试工作制造了很大的麻烦,因此工作量大大提升。因为本设计是针对两类不同的单片机实现相同的目的,所以以后凡是遇到两类单片机的问题
41、需要解释,本设计以MSP430为例进行分析,特此声明,不再赘述。图 3-6 C51单片机开发板实物图3.2.2 图像传感器接口摄像头的主要信号及主要端口有:3V3-输入电源电压GDN-接地点 SIO_C-SCCB接口控制时钟SIO_D-SCCB数据输入 VSYNC-帧同步信号 HREF-行同步信号PCLK-像素时钟 XCLCK-时钟信号 D0-D7-数据端口RESTE-复位端口 FIFO_RCK-FIFO内存读取时钟控制端FIFO_WR_CTR-FIFO写控制端 FIFO_OE-FIFO关断控制FIFO_WRST-FIFO写指针服务端 FIFO_RRST-FIFO读指针复位端图 3-7 摄像头
42、模块主要信号接口示意图我只需要按照相关时序图用单片机控制相关的几个控制引脚即可,可以很方便的使用在低速单片机上,并且可以实现直接从IO口读取数据,读出的数据可以直接传到上位机上或送屏显示,也可以单片机简单处理。图 3-8 单片机控制摄像头模块接线图3.2.3 LCD显示接口LCD1602采用标准的16脚接口,其中:第1脚:VSS为电源地。第2脚:VCC接5V电源正极。第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会 产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。第4脚:RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄
43、存器。第5脚:RW为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。第6脚:E(或EN)端为使能(enable)端,高电平(1)时读取信息,负跳变时执行指令。第714脚:D0D7为8位双向数据端。第1516脚:空脚或背灯电源。15脚背光正极,16脚背光负极。图 3-9 LCD1602与单片机接线图3.3 硬件结构设计总图本系统基于单片机通过软件编程设置OV7670摄像头内部参数采集图像,并将采集到的图像转换为数字信号存储在AL422里;随后单片机一方面将存储在AL422内部的数字代码提取出来,经过算法处理和串口通信将数据显示在PC上,一方面在单片机内进行图像算法处理,得出数码管
44、显示的数字结果并且显示在LCD1602上。图 3-10 硬件结构设计总图3.4 本章小结本章主要介绍了单片机摄像头数据采集与处理的硬件结构设计,完成了主要元件的选型与性能分析,着重介绍了最小系统、图像采集与存储、显示等功能模块的硬件电路及其接口设计;介绍了系统硬件的整个设计流程,并完成实物接线连接;经过初步硬件调试,每个功能模块供电正常;通过处理器高低电平变化测试,确保样机无虚接,错接等潜在硬件问题,为后续的软件设计提供稳定的硬件平台。第4章 系统软件实现4.1 软件开发环境介绍4.1.1 IARIAR Systems是全球领先的嵌入式系统开发工具和服务的供应商。公司成立于1983年,迄今已有
45、27年,提供的产品和服务涉及到嵌入式系统的设计、开发和测试的每一个阶段,包括:带有C/C+编译器和调试器的集成开发环境(IDE)、实时操作系统和中间件、开发套件、硬件仿真器以及状态机建模工具。国内普及的MSP430开发软件种内不多,主要有IAR公司的Embedded Workbench for MSP430(简称为EW430)和AQ430。目前IAR的用户居多。IAR EW430软件提供了工程管理,程序编辑,代码下载,调试等所有功能。IAR C-SPY 调试器是为嵌入式应用程序开发的高级语言调试器。在设计上,它与IAR编译器和汇编器一起工作,并且与嵌入式IAR E
46、mbedded Workbench IDE 完全集成,可在开发与调试间自由切换。因此,在实现单片机摄像头数据采集与处理系统的过程中,应用MSP430单片机实现该系统要比应用C51单片机容易的多,因为MSP430单片机可以进行单步调试和编译,而C51单片机不能这样,因此工作量大大增加17。4.1.2 KEILKeil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil C51软件提供丰富的库函数和功能强大的集成开
47、发调试工具,全Windows界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。 4.2 图像采集与存储系统的图像采集主要完成对所采要集的图像的定位及取景功能,需要处理器完成初始化、图像采集模块和存储模块的功能。4.2.1 初始化时钟与OV76704.2.1.1 SCCB总线控制SCCB总线是具备多主机系统所需的包括总线裁决和高低速器件同步功能的高性能串行总线。SCCB总线只有两根双向信号线。一根是数据线SIO_C,另一根是时钟线SIO_D。每个接到SCCB总线上的器件都有唯一的
48、地址。主机与其它器件间的数据传送可以是由主机发送数据到其它器件,这时主机即为发送器。由总线上接收数据的器件则为接收器。SCCB总线进行数据传送时,时钟信号为高电平期间,数据线上的数据必须保持稳定,只有在时钟线上的信号为低电平期间,数据线上的高电平或低电平状态才允许变化。图 4-1 SCCB总线与单片机连线图SIO_C线为高电平期间,SIO_D线由高电平向低电平的变化表示起始信号;SIO_C线为高电平期间,SIO_D线由低电平向高电平的变化表示终止信号。 图 4-2 SCCB信号的起始和终止信号图 4-3 SCCB信号的应答信号和非应答信号分配好SIO_C与SIO_D的引脚,并且基于以上起始信号
49、,终止信号,应答信号,非应答信号,继续编写写一字节函数和读一字节函数。他们的主要构成都是FOR循环,并且重复8次,通过拉高或拉低SIO_C和SIO_D信号来控制,这样便可以读写一个字节。图 4-4 SCCB时序图4.2.1.2 摄像头SCCB初始化调用已经编写的起始信号函数,终止信号函数,应答信号函数,非应答信号函数,并且通过识别设备ID,寄存器地址,寄存器数据地址,就可以实现读写寄存器的函数了。比如本系统采用的是RGB565格式,这样就需要对BLUE,RED寄存器赋值;如要对亮度进行控制,就可以调用写寄存器函数,对0X55寄存器进行赋值;如要调整对比度,则可以通过调用写寄存器函数,对0X56
50、,0X57等寄存器进行赋值。对各寄存器的功能和控制方式有了一定的了解之后,就可以进行摄像头SCCB初始化函数的编写了。首先,我们要复位SCCB总线,通过对0X12寄存器赋值0X80即可实现。然后,要读取设备的ID,这需要读取0X0B寄存器,来确定是否是正确设备。最后,利用一个FOR循环来实现对167个寄存器的赋值,这也需要调用写寄存器的函数。在完成了全部寄存器写值之后,就实现了对摄像头SCCB的初始化。4.2.1.3 摄像头控制芯片即FIFO缓冲驱动首先应该分配好OV_WE、OV_WRST、OV_RCK、OV_OE、OV_RRST、OV_VSYNC等各个信号的引脚,然后准备编写摄像头初始化函数
51、,摄像头写复位函数,摄像头读复位函数,摄像头中断初始化函数,摄像头启动捕获函数等。对于摄像头初始化函数,首先要对各信号进行初始化,然后拉高IO口,最后通过时序图对SIO_C和SIO_D的引脚的输入输出以及拉高拉低来操作,就可以实现对摄像头芯片AL422的初始化工作18。图 4-5 摄像头芯片写复位时序图摄像头写复位函数,通过观察时序图可以得知,首先要拉低WE信号,禁止写,然后拉低WRST信号,延时2us后,拉高WRST即可实现摄像头写复位。摄像头读复位函数,通过观察时序图可以得知,首先拉低OE信号,使能输出,然后拉低RRST信号,然后重复拉低再拉高RCK信号三次,最后拉高RRST信号,再拉低R
52、CK信号,摄像头读复位即可完成。图 4-6 摄像头芯片读复位时序图摄像头中断初始化函数,这里主要是单片机的一些操作,首先调用内部函数关闭中断,通过读VSYNC信号设置中断为下降沿中断,随后设置GDO2输入模式,最后清除中断标志位并且关外部中断即可实现摄像头中断初始化。摄像头启动捕获函数,其实质就是开启中断,所以只需要清除中断标志位,并且开外部中断,然后在调用内部函数打开总中断即可实现,主要包括输出使能,写使能,读使能,具体的时序图如图所示。图 4-7 摄像头芯片读使能时序图根据这些时序图,我们可以利用中断,通过拉低或拉高这些信号,进行捕获和存储图像信息,至此,我们已经完成把图像存储在FIFO中
53、。4.2.1.4 串口初始化和串口发送读取数据串口初始化函数,首先要定义引脚P34-TXD0,P35-RXD0,这两个引脚是特定的,所以必须使用这两个引脚。然后,要同步几个时钟,包括MCLK,SMCLK和XT2,随后令ME1 |= UTXE0 + URXE0,使串口能够发送和接收。令UCTL0 |= CHAR,选择8位数据模式,因为我选择的YUV格式图片是8位的,并且还要与上位机程序相匹配。最后通过赋值寄存器,选择8MHZ的晶振,和115200的波特率,并且禁止发送中断和接收中断,这样,全部串口初始化就完成了。串口发送函数,是指发送一字节到串口的函数,将要发送的数据赋值给TXBUF0,这样就可
54、以实现发送功能。串口读取函数,是指从串口接收一字节数据,只需要返回RXBUF0的值即可。 4.2.2 图像采集存储与串口发送完成了以上准备工作,我们就可以调用前面介绍的函数来进行图像采集存储和串口发送了。图 4-8 摄像头芯片输出使能时序图首先要完成系统初始化,选用MCLK与SMCLK的时钟源为XT2,实现各时钟信号的同步,并且等待XT2晶振的起振,调用串口初始化函数,完成串口初始化。接着,要调用摄像头中断初始化函数、摄像头初始化函数、摄像头写复位函数、摄像头图像捕获函数以及读复位函数,初始化摄像头并且打开外部中断,准备捕获图像。这其中的外部中断是OV7670的VSYNC外部中断,下降沿中断,
55、写法也比较常规,这里就不加赘述。至此,我们已经完成了图像的采集与存储的全部工作19。图 4-9 摄像头芯片RE,RRST信号时序图接下来要进行的就是将图像发送到串口的工作,由于摄像头寄存器参数选择了320*240的分辨率,所以这里采用内外两层循环分别代表行与列,循环次数分别是240次和320次,循环中通过拉低和拉高RCK信号来获取图像每一个像素点的设定参数K的值,因为设置摄像头寄存器参数时选择了RGB565的格式,所以要通过K的值根据公式计算出R、G、B的值。最后通过RGB格式与YUV格式之间的转换公式,得出Y的值,并且通过调用发送一字节到串口的函数,逐次将图像的每一个像素点发送到串口。最后,
56、拉高OE信号,关闭输出。这样,一幅完整的图像从捕获、存储以及发送到串口已经全部完成,图像在上位机的显示要通过上位机软件的编写来实现。图 4-10 摄像头芯片WE,WRST信号时序图图 4-11 图像采集存储流程图4.3 上位机图像显示软件为了将已经传送到串口的图像数据在上位机上显示出来,我特地使用了最常用的VC+6.0编写了一个上位机图像显示软件,本节主要从串口通信、绘图、主要程序架构等三个方面简单介绍这个软件的编写过程以及能够实现的功能。4.3.1 串口通信本程序主要通过MSComm控件进行串行端口传输和接收数据,为本应用程序提供串行通讯功能,这里简单介绍一下MSComm控件的基本功能、基本
57、属性和使用方法。4.3.1.1 MSComm控件简介Microsoft Communications Control(以下简称MSComm)是Microsoft公司提供的简化Windows下串行通信编程的ActiveX控件,它为应用程序提供了通过串行接口收发数据的简便方法。MSComm控件通过串行端口传输和接收数据,为应用程序提供串行通讯功能。MSComm控件在串口编程时非常方便,程序员不必去花时间去了解较为复杂的API函数,而且在VC、VB、Delphi等语言中均可使用。4.3.1.2 MSComm控件编程基本方法本程序使用MSComm控件进行串口编程的基本步骤:(1)在建立的程序工程中插入MSComm控件;(2)添加MSCom
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 5G游戏娱乐行业营销策略方案
- 眼镜用硅胶鼻托市场发展前景分析及供需格局研究预测报告
- 医用叶黄素产业链招商引资的调研报告
- 工业产权许可行业营销策略方案
- 研磨剂市场分析及投资价值研究报告
- 自拍杆手持单脚架项目运营指导方案
- 肌内效贴布项目运营指导方案
- 卡车用千斤顶产业链招商引资的调研报告
- 发动机用凸轮轴产业链招商引资的调研报告
- 工业用水净化装置产品供应链分析
- 八年级生物上册知识点总结(填空版+答案)
- 医师定期考核(简易程序)练习及答案
- 2024年国家开放大学电大开放英语考试题题库
- 2022版义务教育(历史)课程标准(附课标解读)
- 第四单元整体教学设计【大单元教学】2024-2025学年八年级语文上册备课系列(统编版)
- 授权书-手机终端销售
- 古代汉语智慧树知到期末考试答案章节答案2024年内江师范学院
- 2024保密知识竞赛题库(完整版)
- SYT 7628-2021 油气田及管道工程计算机控制系统设计规范-PDF解密
- 设计项目组织管理方案
- 幼儿园中班科学《多变的天气》课件
评论
0/150
提交评论