数据采集板最新通信协议及测试

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据采集板通讯命令测试

1测试平台

本测试平台依赖于新版数据采集卡,整个通信可以划分为两部分,PC机到单片机的串口通信,以及单片机到FPGA的SPI通信。

2软件环境

对于用户而言,所有测试命令基于串口精灵发送,通过串口精灵返回的数值来判断命令发送正确与否。

串口通讯约定

1,计算机作为主机,数据采集板作为从机。

2,所有的通讯都由主机发起,以从机的应答结束。

3,波特率设置为9600,一个起始位,一个停止位,无校验位。

4,当出现通信错误时(超时,校验错,无应答),采用重传作为处理手段。

主机发送内容定义

从机回复内容的定义

设备地址:数据采集板的地址定义为0XA0。

子地址:不同设备内部不同单元,该设计中子地址定义,默认为0x00.

命令字符:详细定义见下文。

数据长度:数据的长度,不包括检验和的长度,有可能是0。当数据长度是0时,“数据内容”部分不存在。

数据内容:当数据长度不为0时为所发送的数据,不能大于255字节。

累加和:以简单的累加和作为校验。只针对数据部分进行累加,如果数据长度为1,累加和就等于数据内容,如果数据长度为0,不仅数据部分内容为空,累加和部分也为空。

3测试内容

所有的命令可以划分为两类:公共的通讯控制命令以及针对数据采集板的控制命令。公共通讯控制命令可分为以下四条

1设置通讯波特率

2 查询从机状态

3获取从机固件版本信息

4获取固件SN码

针对数据采集板的控制命令有以下三条

1 读取单片机状态

2 设置数据采集板工作模式

3 读取FPGA内部状态

对于控制命令的第二条和第三条而言,其测试内容都包含两部分内容:上位机到单片机的通信验证以及单片机到FPGA的验证。

上位机到单片机的通讯方式采用RS232方式,波特率为9600,一个起始位,8个数据位,以及一个停止位,无校验。上位机到单片机的通信方式都会有应答,具体的应答方式在下面的测试内容中有详细介绍。

单片机到FPGA的通信方式采用SPI方式,CS低有效,SCLK的上升沿采集数据。

4控制命令测试

数据采集板的地址是0xA0。单片机仅仅是一个命令转达的单元。其负责将接收到的控制信息转发给FPGA。

主机给单片机发送的内容定义

表4-12:主机发送内容定义

4.1工作模式设置命令测试

该命令主要完成对视频采集模式的参数设置,包括对FPGA读写操作设定,设置LVDS 行场有效的时间参数,帧头检测参数设置,设置LVDS的单双通道,分辨率以及制式,VIDEO 行场有效时间参数设置。该命令的数据内容共有13字节

4.1.1参数定义

参照数据采集板的设计概要。将工作参数写入到FPGA内部,该命令包含13个字节,下面的内容为各个字节中的所代表的命令的含义。

1)工作模式寄存器定义

命令字符为30-B0的所有命令,每写一个命令字节成功,返回一个成功标志。如果是读操作,那么单片机返回FPGA内部状态内容。

SWITCH:选择当前处理的是CVBS信号还是LVDS信号,1为CVBS,0为LVDS

S/D:针对LVDS信号而言,S为single,当该位为1时,选择单通道,否则为双通道

8/10:颜色分辨率选择,8为8bit,10为10bit。该位为1时,选择8bit,否则为10bit。format:选择电视制式,0为VESA,1为JEADA.

我们需要设置数据采集板工作在LVDS信号采集,双通道,分辨率为8bit,VESA制式下,因此,设定该寄存器内容为0x10

如果我们要设置数据采集板工作在VIDEO信号采集下,那么应该设置该寄存器值为40

此次调试使用到的信号源的分辨率为1366*768,因此设置行有效时间参数为1366的十六进制表示,0x556,其中高三位送给字节1,低八位送给字节2,因此,需要发送两个字节,0x05,0x56

对于VIDEO而言,行有效设置为720,其十六进制表示为0x2D0,即发送两个字节,0x02,0xD0

3)场有效时间参数定义为两字节,一共11bit

字节2,即发送两个字节0x03,0x00.

对于VIDEO而言,场有效设置为576,其十六进制表示为240,则发送两个字节0x02,0x40.

行同步时间以及场同步时间暂且不用,其定义如下:

设置这两个寄存器为0,这里需要发送四个0x00

帧头检测参数有5位组成,我们独用一个寄存器,用第五位表示,高三位保留

8)设置行消隐的后肩(9bit)

对于LVDS信号采集而言,这些数据组成了工作模式设置命令即:10,05,56,03,00,00,00,00,00,0A,00,00,01,共13字节。

对于CVBS信号采集而言,这些数据组成了工作模式设置命令即:40,02,D0,02,40,00,00,00,00,0A,00,00,01,共13字节

4.1.2命令设置

4.1.3上位机与单片机通信

单片机返回到主机的值有三类,

发送完命令后,当主机接受到0x00时,表明此次通讯成功,成功的标志在于,单片机正确的解析到了完整的命令内容,并且命令的内容符合约定,且命令的累加和同单片机计算的累加和校验值一致,整个通信建立成功。

发送完命令后,当主机接收到0xBF时,表明此次通讯不成功,但是引导字符,以及设备地址,以及命令字符都符合要求,不满足的地方在于校验出了问题,需要重新检查命令内容,并计算校验值。

发送完命令后,当主机接受到0x7F,表明此次通讯彻底失败,即命令不是定义的类型。

例如,串口助手发送正确的指令:AAA000200D1005560300000000000A00000179,共

相关文档
最新文档