当前位置 : 安防网>工程运作>安防设计>阅读正文

监控系统无线传输模块设计

作者: 时间:2008-08-13

 前 言
    随着视频编、解码技术和无线传输技术的快速发展,无线视频监控技术日益成熟。在安防、交通以及智能监控等领域,嵌入式无线视频监控系统以其体积小、成本低、使用灵活方便等优点,得到了越来越广泛的应用。本系统利用DM642中性能优越的McBSP模块和EDMA控制器,使数据传输的波特率最高可达115 200 bp s,并且EDMA不需要CPU的参与,极大地提高了程序运行的效率。同时,采用CDMA 无线收发模块,通过TCP和UDP相结合的方法进行无线通信,保证了传输的稳定性和快速性。本系统目前已经通过调试,可用于小区、景区和厂房的远程监控,若稍加扩展还可用于交通和海上监控等领域。

1 系统简介
    该系统在软件框架上采用了DSP /B IOS开发工具以及TI的参考框架Reference Framework 5 (RF5) ,结构紧凑,移植性和可扩展性强[ 1 ] 。具体来说,软件设计分成3大部分: DSP视频信号的采集和处理、视频数据的实时传送、上位机视频数据的解码播放。
2 视频传输软件的设计与实现
2. 1 系统概述
     由于需要实现视频传输,所以必须提高DSP的工作效率和数据的传输速率。本系统利用DM642的EDMA (增强的直接存储器访问)和McBSP (多通道缓冲串口)实现其与CDMA无线数据模块的串口通讯。McBSP在标准串行接口的基础上对功能进行扩展,它支持双缓冲区发送、三缓冲区接收,允许连续数据流传输。EDMA具有传输快速、高效的特性,并且数据传输工作不需要CPU参与,处理任务在后台进行,极大地减小了CPU的负担,提高了传输效率。CDMA无线收发模块采用AnyDATA公司的DTU2800X,它包含1个符合IS295A /B和IS22000标准的完整的数字调制解调器,同时它还提供1个以RS232为标准的串行接口。
    系统采用多线程机制,DM642在进行视频信号采集和压缩的同时,通过McBSP与CDMA 模块通信,对CDMA模块进行初始化。当CDMA准备就绪以后,就主动与上位机建立连接。然后,上位机向DSP发送请求,表明需要传送哪一路视频。DSP收到请求后,对需要传送的视频数据进行分包,并按协议规定的格式进行封装后发送出去。上位机接收数据时,如果发现有错误或者丢包的现象,就向DSP发出指令要求重传相应的包。如果没有发生错误,则DSP继续传送下一帧图像,直到接收到上位机发来的停止命令为止。
2. 2 采用McBSP实现串口通讯
    DM642有2 个多通道缓冲串口: McBSP0 和McBSP1,它们的管脚与视频口(VP0和VP1)的低位管脚是复用的。因此,首先必须在DSP /B IOS里对管脚功能进行设置。在本系统中,把VP0的低位配置成McBSP0,高位配置成8位BT. 656图像格式的视频采集口,同时,VP1的高位和低位分别配置成8位BT. 656格式的视频采集口。这样,可以同时进行3路视频采集。
    DM642上的McBSP是同步串行接口,并不支持通用异步串行收发器标准,不能与CDMA模块直连接而进行数据通信。为了实现DM642 与CDMA的通信,可以扩展适当的硬件,将同步数据转换成UART异步数据进行传输;也可以用软件方法实现:①利用McBSP工作在串口模式; ②利用McBSP工作在通用输入/输出模式。对工作模式的选择可以通过对McBSP控制寄存器进行相应的设置得以实现。为了降低硬件设计的复杂性,并且使软件设计更加方便和直观, 本系统采用软件方法①。为此, 需要将UART的数据发送引脚( Tx )同时连接到McBSP模块的数据接收引脚(DR)和帧同步接收引脚( FSR)上,如图3所示[ 2 ] 。这是因为UART的数据线上既有数据信息,又有帧信息,这样连接可以将异步串行数据的起始位作为McBSP的帧同步接收信号。与此同时, 把UART的数据接收引脚( Rx ) 连接到McBSP的数据发送引脚(DX)上。
2. 3 McBSP控制寄存器的配置
    McBSP以8N1 (8个数据位外加1个停止位,没有奇偶校验位)的模式向UART发送字节。发送操作分成2个相位进行,相位1包括9个16位的字,相位2包括2个8位的字,如图4所示。数据帧的第1部分为起始位和8个数据位,第2部分为停止位。当以16 bit来发送一个UART数据位时,‘1’被编码成0xFFFF,‘0’被编码成0x0000。停止位使用2个8位字,可以根据不同的UART模式的需要,方便地调整成1. 5个停止位。为了实现具体功能,主要的McBSP控制寄存器作如下配置:
(1) 管脚控制寄存器( PCR)FSXM = 1, FSXP = 1,采样率发生器产生低电平有效的起始位。FSRM = 0, FSRP = 1,低电平有效起始位作为McBSP的帧同步接收信号。CLKRM = CLKXM = 1,内部采样发生器产生串行时钟。
(2) 接收/发送控制寄存器(RCR /XCR)(R /X) PHASE = 1,双相位帧模式。由于数据接收引脚(DR)和帧同步接收引脚( FSR)连在一起,为了减少数据位中的低电平对帧同步信号检测的干扰,选用帧的长度较长、帧同步检测信号间隔较大的双相位帧。
    (R /X) F IG = 1,在数据传输过程中忽略帧同步信号。对于接收操作,因为数据线上的低跳变作为帧同步接收( FSR)信号,为了防止McBSP被重新触发,多余的FSR 信号必须被忽略。而对于发送操作,每一个从DXR到XSR的数据传输都会产生一个帧同步发送( FSX)信号,而UART帧不需要这么多的FSX信号,多余的信号也必须被忽略。
(3) 采样率发生器寄存器( SRGR)FSGM = 0,每一个从DXR 到XSR 的数据传输都会产生一个帧同步发送( FSX)信号。CLKSM = 1,采样率发生器的时钟从CPU的内部时钟获得。本系统采用的DM642 的主频是600MHz,McBSP把1 /4主频(即150 MHz)作为采样率发生器的时钟。CLKGDV = (McBSP时钟频率) / ( 16倍的波特率) - 1。这个时钟分频系数必须进行适当设置,使得产生的频率为16倍的波特率。虽然CDMA无线数据模块支持的最高波特率为230 400 bp s,但工作在115 200 bp s时较为稳定,所以采用115 200 bp s的波特率。这样,算出CLKGDV = 80。McBSP各控制寄存器的配置,2. 4 EDMA控制寄存器的配置由于传输的数据是命令和已经压缩好了的视频数据,采用一维传输即可。传输的每一个元素的大小设置为16位。发送时,因为CDMA 串行接口的F IFO大小是512 B,所以EDMA每次搬运的数据包大小不超过512 B,搬运完成时发出中断,以便继续传送下一个数据包。
    接收时,由于DSP接收到的数据来自于CDMA或者上位机的命令,命令包虽然都只有几个字节,但是大小不固定,而EDMA的传输必须先指定接收的元素个数, 当接收完成时才产生中断。所以, 把EDMA的接收元素个数设为比每一个命令都要大的数20,这样,不是利用EDMA的接收中断,而是由程序定时查询接收到的命令并作出相应处理。EDMA各控制寄存器的配置

上一页12 下一页
最新评论共有 0 位网友发表了评论
发表评论
评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名: 密码:
匿名?
注册