设计报告.docx
- 文档编号:29782349
- 上传时间:2023-07-26
- 格式:DOCX
- 页数:34
- 大小:1.25MB
设计报告.docx
《设计报告.docx》由会员分享,可在线阅读,更多相关《设计报告.docx(34页珍藏版)》请在冰豆网上搜索。
设计报告
摄像头捕捉多色块
FPGA设计报告
组员:
2018年12月21日
变更履历
版本
日期
页码
内容
0.01
2018年12月3日
初版
0.02
2018年12月21日
P9、P24
代码修改
1设计概要
1.1作品简述
1.2关联资料
1.3功能概要
1.4设计开发环境
2主要器件信息
2.1AN070LCD显示屏
2.1.1器件简介
2.1.2驱动时序
2.1.3硬件连接
2.2AX309黑金开发板
2.2.1器件简介
2.2.2功能介绍
3设计详述
3.1.1基本理论
3.1.2色度理论
3.1.3设计代码
一、设计概要
1.作品简述
基于AX309型号FPGA开发板、AN070LCD显示屏及ov7670摄像头等模块,实现摄像头的驱动以及多色块图像的捕捉:
用摄像头将图像数据显示在显示屏上,并找出图像中的色块,如橙色的乒乓球和蓝色的瓶盖,找到后用方框框出,多色块追踪,即同时追踪多种颜色的色块。
2.关联资料
1黑金开发板之7寸LCD屏模块用户手册Rev.1.00
27.0inch-A070VW05V2[1]
3RGB转HSL算法举例
3.功能概要
1实现显示屏上图像数据的显示;
2实现单个色块的捕捉及追踪并用方框框出;
3实现多个色块的同时捕捉、同时追踪。
4.设计开发环境
项目
内容
OS
Windows864bit
仿真工具
ISEDesignSuite14.7
开发语言
Verilog
二、主要器件信息
1.AN070显示屏
1器件简介
本次设计采用的是7寸LCD屏(AN070)黑金开发板。
AN070LCD屏模块由TFT液晶屏(TFTLCD液晶屏,型号为A070VW05V2)和驱动板组成。
图1LCD屏正面图
图2LCD屏背面图
其参数如下:
显示像素:
800(水平)*480(垂直);颜色深度:
16.7M种颜色(RGB24位色);供电和功耗:
单电源供电5V,功耗为1.8瓦。
2驱动时序
行时序:
LCD屏显示方式从屏幕左上角一点开始,从左向右逐点显示,每显示完一行,再回到屏幕左边下一行的起始位置,在这期间,需要对行进行消隐,每行结束时,用行同步信号进行同步;数据在DCLK的上升沿采样。
行显示的时序图如下所示。
图3行显示时序图
列显示:
当显示完所有行,形成一帧,用场同步信号进行场同步,并使LCD显示回到屏幕左上方,同时进行场消隐,开始下一帧。
列显示的时序图如下所示。
图4列显示时序图
3硬件连接
黑金的7寸LCD显示模块有两种连接接口,一个是40针的2.54mm的排母P4,另一个是40针的FPC插座J1(下接触)。
本次设计40针排针连接。
其排母信号排列如下所示。
图5排母信号排列示意图
信号名
P4连接器
说明
信号名
P4连接器
说明
GND
Pin1
参考地
VCC5V
Pin2
5V电源输入
INIT
Pin3
触摸屏中断
RST
Pin4
触摸屏复位
SCL
Pin5
触摸屏I2C时钟
SDA
Pin6
触摸屏I2C数据
LCD_HSYNC
Pin7
行同步
LCD_VSYNC
Pin8
列同步
LCD_DCLK
Pin9
像素时钟
LCD_DE
Pin10
数据有效
LCD_B6
Pin11
蓝色数据6
LCD_B7
Pin12
蓝色数据7
LCD_B4
Pin13
蓝色数据4
LCD_B5
Pin14
蓝色数据5
LCD_B2
Pin15
蓝色数据2
LCD_B3
Pin16
蓝色数据3
LCD_B0
Pin17
蓝色数据0
LCD_B1
Pin18
蓝色数据1
LCD_G6
Pin19
绿色数据6
LCD_G7
Pin20
绿色数据7
LCD_G4
Pin21
绿色数据4
LCD_G5
Pin22
绿色数据5
LCD_G2
Pin23
绿色数据2
LCD_G3
Pin24
绿色数据3
LCD_G0
Pin25
绿色数据0
LCD_G1
Pin26
绿色数据1
LCD_R6
Pin27
红色数据6
LCD_R7
Pin28
红色数据7
LCD_R4
Pin29
红色数据4
LCD_R5
Pin30
红色数据5
LCD_R2
Pin31
红色数据2
LCD_R3
Pin32
红色数据3
LCD_R0
Pin33
红色数据0
LCD_R1
Pin34
红色数据1
NC
Pin35
空脚
NC
Pin36
空脚
GND
Pin37
参考地
GND
Pin38
参考地
D3V3
Pin39
3.3V(预留)
D3V3
Pin40
3.3V(预留)
图6针脚功能说明
2.AX309黑金开发板
1器件简介
AX309使用的是XILINX公司的SPARTAN6系列芯片,型号为XC6SLX9-2FTG256C,是256脚的FPGA封装。
开发板有两路黑金标准的AX扩展口,一共有34*2=68个IO,另外引出了5V电源,3.3V电源,还有多路GND。
图7AX309黑金开发板
2功能介绍
通过AX309结构示意图可见:
1)USB接口供电同时实现USB转串口功能;
2)一片大容量256MbitSDRAM,可作为数据的缓存;
3)一片16Mbit的SPIFLASH,可用作FPGA配置文件和数据的存储;
4)一个摄像头接口,可接500万的OV7670摄像头;
5)一路VGA接口,VGA接口为16bit,可以显示65536种颜色,可以显示彩色图片等信息;
6)一片RTC实时时钟,配有电池座,电池的型号为CR1220;
7)一片IIC接口的EEPROM24LC04;
8)4个红色LED;
9)4个独立用户按键;
10)板载50M的有源晶振,给开发板提供稳定的时钟源;
11)2路40针的黑金标准AX扩展口(2.54mm间距),其中34个IO口,1路5V电源,2路3.3V电源,3路GND。
可同时接两个扩展模块;
12)预留了JTAG口,可对FPGA进行调试和程序固化;
13)1路MicroSD卡座,支持SPI模式;
14)1个6位数码管,可以6位数字的动态显示。
图8AX309结构示意图
三、设计详述
1.基本理论
首先摄像头拍摄,画面传到FPGA之后,利用中值滤波和图像区域分解技术对图像进行预处理。
中值滤波可以提高后续环节尤其是统计特征值提取环节数据计算的准确度。
图像区域分解是将分辨率为320*240的原始图像分解为400个区域块的集合,并分别存储对应存储单元中。
预处理后的图像送入特征向量分析模块。
在RGB及灰度两个颜色空间分别对400个区域块数据进行分析,给出两个不同的特征向量矩阵,压缩后续处理的数据量。
在目标检测及连通域分析模块中,将两个特征向量矩阵中各元素与目标特征向量进行比较,统计目标的个数,输出RGB颜色空间及灰度颜色空间的目标矩阵A1、A2(矩阵中的每一个元素是目标编号或背景编号0)。
目标轨迹判定模块通过对之前各帧中目标偏移位置做环路滤波,计算出目标可能的位置。
决策树模块根据目标轨迹的返回值,比较目标矩阵A1和A2中的元素,给出最优的目标矩阵。
利用质心跟踪算法给出各目标最终质心位置,云台控制模块对目标做出反应。
2.色度理论
色度学是研究人的颜色视觉规律、颜色测量理论与技术的科学,它是一门本世纪发展起来的,以物理光学、视觉生理、视觉心理、心理物理等学科为基础的综合性科学。
色度学确切的讲它是研究人眼对颜色感觉规律的一门科学。
以对光强的度量来说,物理光学以光的辐射能量这个客观单位来度量,而色度学却以色光对人眼的刺激强度来度量。
辐射能量很大的波长很长的红光对人来说却没有辐射能量很小的黄光亮,人们就认为黄光的强度比红光大。
Ø从RGB到HSL或HSV的转换
设(r,g,b)分别是一个颜色的红、绿和蓝坐标,它们的值是在0到1之间的实数。
设max等价于r,g和b中的最大者。
设min等于这些值中的最小者。
要找到在HSL空间中的(h,s,l)值,这里的h∈[0,360)是角度的色相角,而s,l∈[0,1]是饱和度和亮度,计算为:
h的值通常规范化到位于0到360°之间。
而h=0用于max=min的(就是灰色)时候而不是留下h未定义。
HSL和HSV有同样的色相定义,但是其他分量不同。
HSV颜色的s和v的值定义如下:
3.设计代码
1)
`timescalelns/lps
////////////////////////////////////////////////
//Engineer:
程劲松许一航宋锐沂
//CreateDate:
2018.12.2
//DesignName:
摄像头捕捉多色块
//ModuleName:
sdram_para
//ProjectName:
//TargetDevice:
CycloneEP1C3T144C8
//Toolversions:
QuartusII8.1
//Description:
SDRAM模块参数定义
//
//Revision:
V1.0
//AdditionalComments:
//
////////////////////////////////////////////////
//modulesdram_para;
/----------------------------------------------
//SDRAM读写工作状态参数
`defineW_IDLE4’d0//空闲状态
`defineW_ACTIVE4’d1//行有效,判断读写
`defineW_TRCD4’d2//行有效等待
/***********************************************/
`defineW_READ4’d3//读数据状态
`defineW_CL4’d4//等待潜伏期
`defineW_RD4’d5//读数据
`defineW_RWAIT4’d6//读完成后的预充电等待状态
/***********************************************/
`defineW_WRITE4’d7//写数据状态
`defineW_WD4’d8//写数据
`defineW_TDAL4’d9//等待写数据并自刷新结束
/***********************************************/
`defineW_AR4’d10//自刷新
`defineW_TRFC4’d11//自刷新等待
//SDRAM初始化状态参数
`defineI_NOP4’d0//等待上电200us稳定期结束
`defineI_PRE4’d1//预充电状态
`defineI_TRP4’d2//等待预充电完成tRP
`defineI_AR14’d3//第1次自刷新
`defineI_TRF14’d4//等待第1次自刷新结束tRFC
`defineI_AR24’d5//第2次自刷新
`defineI_TRF24’d6//等待第2次自刷新结束tRFC
`defineI_MRS4’d7//模式寄存器设置
`defineI_TMRD4’d8//等待模式寄存器设置完成tMRD
`defineI_DONE4’d9//初始化完成
//延时参数
`defineend_trpcnt_clk_r==TRP_CLK
`detineend_trfccnt_clk_r==TRFC_CLK
`defineend_tmrdcnt_clk_r==TMRD_CLK
`defineend_trcdcnt_clk_r==TRCD_CLK-1
`defineend_tclcnt_clk_r==TCL_CLK-1
`defineend_raburstcnt_clk==sdrd_byte-4//TREADCLK-4//发出突发读中断命令
`detineend_treadcnt_clk_r==sdrd_byte+2//TREAD_CLK+2//TREAD_CLK+2
`defineend_wrburstcnt_clk==sdwr_byte-l//TWRITE_CLK-1//发出突发写中断命令
`defineend_twritecnt_clk_r==sdwr_byte-l//TWRITE_CLK-1
`defineend_tdalcnt_clk_r==TDAL_CLK
`defineend_trwaitcnt_clk_r==TRP_CLK
//SDRAM控制信号命令
`defineCMD_INIT5’b01111//上电初始化命令揣口
`defineCMD_NOP5’b10111//NOPCOMMAND
`defineCMD_ACTIVE5’b10011//ACTIVECOMMAND
`defineCMD_READ5’b10101//READCOMMADN
`defineCMD_WRITE5’b10100//WRITECOMMAND
`defineCMD_B_STOP5’b10110//BURSTSTOP
`defineCMD_PRGE5’b10010//PRECHARGE
`defineCMD_A_REF5’b10001//AOTOREFRESH
`defineCMD_LMR5’b10000//LODEMODEREGISTER
//endmodule
2)
/******************************************************/
ThisconfidentialandproprietarysoftwaremaybeonlyusedasauthorizedbyalicensingagreementfromCrazybingo.
(C)COPYRIGHT2018CrazyBingo.ALLRIGHTSRESERVED
Filename:
lcd_para.v
Author:
Data:
2018-12-213:
45
Version:
1.0
Description:
defineoflcd.
ModificationHistory:
DateByVersionChangeDescription
========================================================
12/02/18CrazyBingo1.0Original
12/03/19CrazyBingo1.1Modification
12/03/21CrazyBingo1.2Modification
--------------------------------------------------------
//定义颜色变量RGB—5|6|5
//definecolorsRGB—5|6|5
//`defineRED16’hF800/*111110,000000,000000F800红*/
//`defineGREEN16’h07E0/*000000,111111,00000007E0绿*/
//`defineBLUE16’h001F/*000000,000000,111110001F蓝*/
//`defineWHITE16’hFFFF/*111110,111111,111110FFFF白*/
//`defineBLACK16’h0000/*000000,000000,0000000000黑*/
//`defineYELLOW16’hFFE0/*111110,111111,000000FFE0黄*/
//`defineCYAN16’hF81F/*111110,000000,111110F81F青*/
//`defineROYAL16’h07FF/*000000,111111,11111007FF品*/
/******************************************************/
/*|显示|前沿|同步|后沿|显示前沿|同步|后沿|
*|_____|||___||
*________________________________________________________
*|显示|不显示|显示|不显示|
*_________________________________________________________________
*|显示一行帧长|显示一行帧长|
******************************************************/
//----------------------------------------------------
`defineSYNC_POLARITYl’bo
//-----------------------------------------------------
//vgaparameterdefine
`defineVGA_800_480_60FPS_33MHz
//`defineVGA_800_600_72FPS_50MHz
//`defineVGA_1024_768_60FPS_65MHz
//`defineVGA_1440_900_60FPS_105MHz
//defineVGA_1280_1024_60FPS_105MHz
//----------------------------------------------------
//480*272
`ifdefVGA_480_272_60FPS_9MHZ
`defineH_FRONT11’d2
`defineH_SYNC11’d41
`defineH_BACK11’d2
`defineH_DISP11’d480
`defineH_TOTAl1l’d525
`defineV_FRONT11’d2
`defineV_SYNC11’dl0
`defineV_BACK11’d2
`defineV_DISP11’d272
`defineV_TOTAL11’d286
`endif
//----------------------------------------------------
//640*480
`ifdefVGA_640_480_60FPS_25MHZ
`defineH_FRONT11’d16
`defineH_SYNC11’d96
`defineH_BACK11’d48
`defineH_DISP11’d640
`defineH_TOTAL11’d800
`defineV_FRONTll'dl0
`defineV_SYNCll’d2
`defineV_BACK11’d33
`defineV_DISP11’d480
`defineV_TOTAL11’d525
`endif
//----------------------------------------------------
//800*480for7’lcd
`ifdefVGA_800_480_60FPS_33MHz
`defineH_FRONT11’d40
`defineH_SYNC11’dl28
`defineH_BACKl1’d88
`defineH_DISPll’d800
`defineH_TOTAL1l’d1056
`defineV_FRONTl1’dl
`defineV_SYNC11’d3
`defineV_BACK11’d21
`defineV_DISP11’d480
`defineV_TOTAL11’d505
`endif
//----------------------------------------------------
//800*600
`ifdefVGA_800_600_72FPS_50MHz
`defineH_FRONT11’d56
`defineH_SYNC11’d120
`defineH_BACK11’d64
`defineH_DISP11’d800
`defineH_TOTAL11’dl040
`defineV_FRONT11’d37
`defineV_SYNC11’d6
`defineV_BACK11’d23
`defineV_DISP11’d600
`detineV_TOTAL11’d666
`endif
//----------------------------------------------------
//1024*768
`ifdefVGA_1024_768_60FPS_65MHz
`defineH_FRONT11’d24
`defineH_SYNC11’d136
`defineH_BACK11’d160
`defineH_DISP11’d1024
`defineH_TOTAl11’d1344
`defineV_FRONT11’d3
`defineV_SYNC11’d6
`defineV_BACK11’d29
`defineV_DISP11’d768
`defineV_TOTAl11’d806
`endif
//----------------------------------------------------
//1440*900
`ifdefVGA_1440_900_60FPS_105MHZ
`defineH_FRONT11’d80
`defineH_SYNC11’d152
`defineH_BACK
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 设计 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)