DSP实习报告图像采集系统设计_第1页
DSP实习报告图像采集系统设计_第2页
DSP实习报告图像采集系统设计_第3页
DSP实习报告图像采集系统设计_第4页
DSP实习报告图像采集系统设计_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、dsp实习报告题目:图像采集系统的设计 班级:xxx 姓名:xxx 学号:xxx 指导老师:xxxx 目录一. 实习题目3二. 实习背景知识.3三. 实习内容.5四. 实习程序功能与结构说明.8六实习心得.191一、实习题目图像采集系统的设计二、实习目的:1、熟练掌握数字信号处理的典型设计方法与技术手段;2、熟悉d6437视频输入,输出端的操作及编程。;3、掌握常用电子仪器设备的使用方法;4、熟悉锐化变换算法。三、实习背景知识1、计算机2、ccs3.3.软件3、dsp仿真器4、el_dm6437平台el-dm6437evm是低成本,高度集成的高性能视频信号处理开发平台,可以开发仿真达芬奇系列d

2、sp应用程序,同时也可以将该产品集成到用户的具体应用系统中。方便灵活的接口为用户提供良好的开放平台。采用该系列板卡进行产品开发或系统集成可以大大减少用户的产品开发时间。板卡结构框图如图所示:板卡硬件资源:tms320dm6437 dsp ,可工作在400/600 mhz;2 路视频输入,包括一个复合视频输入及一个s端子视频输入;保留了视频输入接口,可以方便与cmos影像传感器连接;3 路视频输出,包括2路复合视频,一路s端子输出;128mbyte 的ddr2 sdram存储器,256mbit的nor flash存储器;用户可选的nand flash接口;可选的256k字节的ic eprom;1

3、个10m/100mbps自适应以太网接口;1 路立体声音频输入、1路麦克风输入,1路立体声音频输出;usb2.0高速接口,方便与pc连接;1个can总线、1个uart接口、实时时钟(带256byte的电池保持ram);4个dip开关,4个状态指示led;可配置的 boot模式;10层板制作工艺,稳定可靠;标准外部信号扩展接口;jtag仿真器接口;单电源+5v供电;板卡软件资源:完整的dsp示例程序及实验指导书;usb演示软件,及读写示例c+程序;功能概述:el-dm6437evm 达芬奇视频开发板通过专用的ddr2存储控制器接口扩展了64mbytes的ddr2 sdram,为视频应用带来了高吞

4、吐、高容量存储带宽,并可以扩展到最大256mbyte;256mbit的nor flash为视频应用程序脱机运行提供了有力的容量保证;板卡通过一个视频解码芯片和cpu连接,使得cpu可以接受外部的复合视频信号输入和s信号输入,信号都是自动检测,大大提高了视频处理的灵活性;cpu还提供视频dac,通过几个运算放大器即可把ddr2存储器内的数据输出为用户可观察到的信号,非常方便;除此之外,板卡还包括很多资源,包括音频输入输出、10m/100m的自适应以太网接口、usb2.0接口、实时时钟、4位led 指示和4位dip开关量输入、can总线及uart接口等等一系列功能;最重要的是所有外部存储器接口信号

5、都连接到扩展接口上,用户可以通过设计外部子板扩展自己的功能。 板上还包括灵活的端口复用切换,使得用户可以根据不同场合使用不同的端口配置,最大的利用cpu各种功能。板卡通过标准接口提供电源输入,采用单5v的供电方式,注意供电电流需要大于1安培,电源调节模块为微处理器及其他外设提供3.3v和1.04/1.2v(对应不同频率cpu)电压。在使用该系列板卡开发过程中可以通过j1接口连接仿真器。四、实习内容:1. 连接好电脑和仿真器,el_dm6437和仿真器; 2. 用视频线一头连接板卡的p3或者p5,另一头连接显示器的av输入,并调制av模式;注:如果带转接头的话,av输入应该是黄色端子。3. 用视

6、频线连接摄像头输出和板卡的f9插座,注意摄像头输出制式为pal;4. 给el_dm6437和摄像头上电,打开ccs并连接;5. 打开colorsharpen文件夹的工程colorsharpen.pjt,此工程功能为:把摄像头捕捉到的一副图像进行锐化处理,并将之输出到显示器;6.编译源程序7. 下载程序out文件,如果没有就先编译一下projectbuild;8. 把摄像头对准需要捕捉的图像场地;9. 设置第一个断点,在video_test.c的422行处;10. 点击运行,稍等片刻后程序停止在断点,此时可以从显示器看到图像;11.继续点击运行,如果成功,显示出锐化图像;并显示这时可以发现显示屏

7、显示出摄像头所指影像已被锐化。11.结束注: 1)锐化算法最简单思想是前一个象素取后一象素与本身的差值;五实习程序与结构说明/* * copyright 2007 by techshine incorporated. * all rights reserved. *author: lyj */* * video test * */#include tvp5146.h#define colorbars 1#define loopback 0#define svideo_out 1#define component_out 0typedef struct _rgbcuint8 red;uint8

8、green;uint8 blue;rgbcolor;void picturesharpen(uint32 memaddr);/* - * * * * vpfe_init( ) * * * * ntsc: * * width: 720 * * height: 480 * * * * * * - */void vpfe_init( uint32 buffer, uint32 width, uint32 height )/同步、模式设置 vpfe_ccdc_syn_mode = 0/0x00032f84; / interlaced, with vd pority as negative |(019)

9、 /使能 sdram端口输出到resizer的输入,0disable |(018) /使能 视频口video port,输出到sdram,0disable |(117) /数据写使能,控制ccd列数据是否写入ddr,0disable |(116) /vd/hd使能,如果hd、vd定义为输出,那么内部产生时序,否则外部产生 |(015) /field状态,表明当前的field状态,0奇场,1偶场 |(014) /3 tap低通滤波器,0off |(212) /inpmod 数据输入模式,0ccd raw,1ycbcr 16bit,2ycbcr 8bit,3保留 |(111) /每个象素的包大小,

10、016bit/pixel,18bit/pixel |(78) /ccd 数据宽度,只有inpmod0(12bit-13bit)时有效 / 016bit,115bit,214bit,313bit,412bit / 511bit,610bit,78bit |(17) /传感器场模式,0逐行扫描,1隔行 |(06) /ccd数据极性 |(05) /外部wen信号选择,如果vdhden1(16bit),设置此位将使ccd数据加载到ddr / 0=不使用 |(04) /场 指示器极性,0正极,1负极 |(03) /hd同步极性,0正极,1负极 |(12) /vd同步极性,0正极,1负极 |(01) /场

11、id方向,0输入,1输出 |(0); /vd、hd同步方向,0输入,1输出 vpfe_ccdc_hd_vd_wid = 0; /hd,vd信号脉冲宽度寄存器 vpfe_ccdc_pix_lines = 0x02cf020d; /每行的水平象素,及一帧的行数 /0|(0x2cf16) /每行的水平象素719+1=720 /|(0x20d) /每帧或每场的半行数525+1=526 /* * sph = 1, nph = 1440, according to page 32-33 of the ccdc spec * for bt.656 mode, this setting captures on

12、ly the 720x480 of the * active ntsv video window */ vpfe_ccdc_horz_info = width 1; / horizontal lines /水平象素信息,(3116)=开始象素,(14-0)=输入到ddr的每行象素个数 vpfe_ccdc_hsize_off = width 1; / vertical lines(14bit-0) / 垂直线的线数 vpfe_ccdc_culling = 0xffff00ff; / disable cullng,水平及垂直方向的选择方式 /(31-24)=偶场的水平选择,(23-16)=奇场的水

13、平选择 / (15-8)=保留,(7-0)=垂直选择模式 /* * interleave the two fields */ vpfe_ccdc_sdofst = 0/0x00000249; /ddr线偏移 |(014) /场标志信号翻转,0正常 |(012) /场线偏移,0+1线,1+2线,2+3线,3+4线, |(19) /偶线和偶场的线偏移,0+1,1+2,2+3,3+4,4-1, / 5-2,6-3,7-4, |(16) /奇线和偶场的线偏移,0+1,1+2,2+3,3+4,4-1, / 5-2,6-3,7-4, |(13) /偶线和奇场的线偏移,0+1,1+2,2+3,3+4,4-1

14、, / 5-2,6-3,7-4, |(10); /奇线和奇场的线偏移,0+1,1+2,2+3,3+4,4-1, / 5-2,6-3,7-4, vpfe_ccdc_sdr_addr = buffer; /buffer ddr地址,最低5位忽略 vpfe_ccdc_clamp = 0/; /可选的黑色箝位设置 |(031) /clampen ,clamp使能,0禁止 |(028) /采样象素长度,01pixel,为2n(次幂),57保留 |(025) /采样线长度,01 line,为2n(次幂),57保留 |(010) /采样的开始象素 |(00); /bit4-bit0,平均增益 vpfe_cc

15、dc_dcsub = 0; /ccd数据要减去的值,当clampen=0时有效 vpfe_ccdc_colptn = 0xee44ee44; /调色板设置 /0|(030) /第三线调色板,3个象素,0r,1gr,2gb,3b /|(028) /cp3lpc2,象素个数2 /|(026) /cp3lpc1,象素个数1 / |(024) /cp3lpc0,象素个数0 / |(022) /第二线调色板 / |(020) / |(018) / |(016) / |(014) /第一线调色板 / |(012) / |(010) / |(08) / |(06) /第0线调色板 / |(04) / |(0

16、2) / |(00); vpfe_ccdc_blkcmp = 0; /黑色补偿 /0|(024) /r红色 /|(016) /gr / |(08) /gb / |(00); /b蓝色 vpfe_ccdc_fpc_addr = 0x86800000; /不知道干吗用的 vpfe_ccdc_fpc = 0; vpfe_ccdc_vdint = 0; /vd中断时序,(30-16)=vdint0,(14-0)=vdint1 vpfe_ccdc_alaw = 0; /a 率设置 vpfe_ccdc_rec656if = 0/0x00000003; /rec656接口 |(11) /fvh错误纠正使能

17、|(10) ; /rec656接口使能 /* * input format is cb:y:cr:y, w/ y in odd-pixel position */ vpfe_ccdc_ccdcfg = 0/0x00000800; /ccd配置寄存器 |(015) /使能vsync内部的锁存功能,0使用vsync锁存 |(013) /msbinvi,色度输入信号最高位是否在sdram中翻转,0正常 |(012) /ddr的字节是否交换,如果字节包已经使能,象素个数必须为偶数 / 0正常 |(111) /ycbcr 8bit输入时y的位置,0偶像素,1奇象素 |(08) /指定ccd有效范围,0当

18、wen为逻辑“与”时内部信号有效,反之为“” |(06) /fid检测,0vsync时序锁存fid信号,1不锁存,2vd边缘锁存,3vd、hd的相位决定 |(05) /ccir656输入数据宽度,08bit,110bit |(04) /ycinswp,yi输入和ci引脚输入交换,0不交换 |0; vpfe_ccdc_fmtcfg = 0; /数据重新格式化、图象口配置 /0|(016) /图象口数据准备好频率,跟内核频率有关,0coreclock*1/2=75mhz /|(015) /video port 使能 / |(012) /video port输入选择,0bit 156 / |0; v

19、pfe_ccdc_fmt_horz = 0/0x000002d0; /数据重新格式化、图象输入接口水平信息 |(016) /bit3129保留,从hd开始的水平开始象素 |(0x2d00) /bit1513保留,水平方向的象素个数=0x2d0=720 |0; vpfe_ccdc_fmt_vert = 0/0x0000020e; /数据重新格式化、图象输入接口垂直信息 |(016) /bit3129保留,从vd开始的水平开始象素 |(0x20e0) /bit1513保留,水平方向的象素个数=0x20e=526 |0; vpfe_ccdc_fmt_addr0 = 0; vpfe_ccdc_fmt_

20、addr1 = 0; vpfe_ccdc_fmt_addr2 = 0; vpfe_ccdc_fmt_addr3 = 0; vpfe_ccdc_fmt_addr4 = 0; vpfe_ccdc_fmt_addr5 = 0; vpfe_ccdc_fmt_addr6 = 0; vpfe_ccdc_fmt_addr7 = 0; vpfe_ccdc_prgeven_0 = 0; vpfe_ccdc_prgeven_1 = 0; vpfe_ccdc_prgodd_0 = 0; vpfe_ccdc_prgodd_1 = 0; vpfe_ccdc_vp_out = 0/0x041a2d00; /video p

21、ort输出设置 |(0x20d17) /被时钟输出到video port的垂直线数=0x20d=525 |(0x2d04) /被时钟输出到video port的水平线数=0x2d0=720 |(00); /每个输出行的水平开始象素=0 vpfe_ccdc_pcr = 0x00000001; / enable ccdc,bit1是否busy,bit0enable /如果禁止的话,ccdc会向dsp发送中断,不需要中断需要配置intc/* - * * * * vpbe_init( ) * * * * ntsc: * * width: 720 * * height: 480 * * * * * *

22、- */void vpbe_init( uint32 buffer, uint32 width, uint32 height, uint32 colorbar_loopback_mode, uint32 ntsc_pal_mode, uint32 output_mode ) int16 basep_x; int16 basep_y;rgbcolor rc; if ( ntsc_pal_mode = ntsc ) basep_x = 0x7a; / 122 basep_y = 0x12; / 18 else basep_x = 0x84; / 132 basep_y = 0x16; / 22 /

23、* * setup vpbe */ vpss_clk_ctrl = 0x00000018; / enable dac and venc clock, both at 27 mhz vpbe_pcr = 0; / no clock div, clock enable /* * setup osd */ vpbe_osd_mode = 0/0x000000fc; / osd模式寄存器 / 最后8位指定背景色地址(rom0) |(015) /cb/cr顺序,0=cb/cr,1=cr/cb (修改这个1会把背景变红) |(014) /osd窗口垂直扩展使能,如果使能,bitmap窗口 /y值将延伸为6

24、/5。0= *1,1=*6/5 |(013) /osd窗口水平扩展使能,如果使能,bitmap窗口 /x值将延伸为9/8。可用于pal和ntsc切换 |(012) /延伸滤波使能,14、13位使能才有用,或者video串口 /smoothing已经设置,小心使用 |(011) /video窗口,类似14位 |(010) /video窗口,类似13位 |(09) /field(场信号)翻转1 |(08) /背景颜色表选择,0rom,1ram |(0xfd0) /clut(color look-up table)背景颜色查找表地址 ; /这是一部分图象不显示时出现的颜色 /-osd窗口0、1设置

25、,!暂时不用! vpbe_osd_osdwin0md = 0| / disable both osd windows and cursor window (013)| /rgb0e rgb输入还是bitmap输入 / 0=bitmap,1=16bit rgb,如果此位设置, / *#*那么window1的该位不能为1 *#* (012)| /cluts0, osdwindow0的颜色查找表位置,0=rom,1=ram (010)| /ohz0 osd窗口0水平放大倍数(1、2、4) (08)| /ovz0 osd窗口0垂直放大倍数 (06)| /bmw0 bitmap位宽0=1,1=2,2=4

26、,3=8 (03)| /blnd0 osd窗口0和video窗口0混合率 (02)| /te0 osd窗口0透明,0=不使能,如果使能,根据 / blnd0出效果 (01)| /osd窗口0显示模式,0=field,1=frame 0 ; /osd窗口0激活=1 vpbe_osd_osdwin1md = 0| 015| /oasw window0的品质模式? 013| /rgb1e rgb输入还是bitmap输入 012| /cluts1 010| /ohz1 08| /ovz1 06| /bmw1 03| /blnd1 02| /te1透明不使能 0 4 vpbe_osd_vidwin0of

27、st = width 4; vpbe_osd_vidwin0adr = buffer;/video window0地址寄存器,这里指向ddr,最低5位忽略 vpbe_osd_vidwin0xp = 0;/video window0 x起始坐标 实际偏移比此值少一半? / 象素单位,从basepx开始算起,20刚好在边上 vpbe_osd_vidwin0yp = 20; /此值对ntsc显示有影响,0则无影响 vpbe_osd_vidwin0xl = width; /图象大小 vpbe_osd_vidwin0yl = height 1; /video window0 y轴(垂直)长度,以象素/行

28、(pixels/lines)为单位 /在frame模式,根据line/field来指定值 /-其他参数 vpbe_osd_miscctl = 0 /其他选择,比如video window rgb 模式禁止了。 |(011) /video 窗口0、1延伸滤波器系数翻转,只有v1efc或v0efc / 设置才有效,0=inversed,1=normal |(09) / osd窗口0的rec601衰减使能,0=正常 |(08) / osd窗口1的rec601衰减使能,0=正常 |(07) /rgb使能=1,此时rgb数据会在内部转换成yuv422 |(06) /决定哪个video窗口用rgb模式0=

29、window0,1=window1,(rgb888,24bit格式数据) / 两个window不能同时用 |(04) /颜色查找表选择,0表0,1表1 |(02) /ping pong 缓冲翻转选择, / 如果pprv=0,0vidwin0adr地址,1ppvwin0adr地址 / 如果pprv=1,1vidwin0adr地址,0ppvwin0adr地址 |(01) /ping pong 翻转选择pprv |0; /reserved /-video window0、1模式设置 vpbe_osd_vidwinmd = 0/0x00000003; / video window1 模式设置 |(01

30、4) / video window1延伸滤波器凳,只有 / vvrsz和ef恍效时才有效 |(012) / video window1 水平直接放大,0=1,1=2,2=4 |(010) / video window1 垂直直接放大 |(19) /video window1 显示模式 /手册是不是说错了? /(1)如果为field模式,每field的line(在vidwin1yl指定),可以从 / 显示缓冲读取出来,而且每field数据可以重复的发送到venc /(2)如果为frame模式,2倍的line /field会从显示缓冲读取出来,而且 / 每field的数据隔行扫描到venc / 0=field,1=frame |(08) /video 窗口1的图象是否显示,0=off / 以上为video window1参数,以下为video window0参数 /-video window0 模式设置-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论