数据采集板最新通信协议及测试(12页).doc
《数据采集板最新通信协议及测试(12页).doc》由会员分享,可在线阅读,更多相关《数据采集板最新通信协议及测试(12页).doc(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-数据采集板最新通信协议及测试-第 12 页数据采集板通讯命令测试版本历史:版本设计审核批准备注田云钧2010-3-2初次制定。1测试平台 本测试平台依赖于新版数据采集卡,整个通信可以划分为两部分,PC机到单片机的串口通信,以及单片机到FPGA的SPI通信。2软件环境对于用户而言,所有测试命令基于串口精灵发送,通过串口精灵返回的数值来判断命令发送正确与否。串口通讯约定1, 计算机作为主机,数据采集板作为从机。2, 所有的通讯都由主机发起,以从机的应答结束。3, 波特率设置为9600,一个起始位,一个停止位,无校验位。4, 当出现通信错误时(超时,校验错,无应答),采用重传作为处理手段。主机发送
2、内容定义类型引导字符设备地址子地址命令字符数据长度数据内容累加和长度11111n1内容0xAA0xA0XXXXX从机回复内容的定义类型引导字符设备地址子地址命令字符数据长度数据内容累加和长度11111n1内容0x55XXXXXX设备地址:数据采集板的地址定义为0XA0。子地址: 不同设备内部不同单元,该设计中子地址定义,默认为0x00.命令字符:详细定义见下文。数据长度:数据的长度,不包括检验和的长度,有可能是0。当数据长度是0时,“数据内容”部分不存在。数据内容:当数据长度不为0时为所发送的数据,不能大于255字节。累加和: 以简单的累加和作为校验。只针对数据部分进行累加,如果数据长度为1,
3、累加和就等于数据内容,如果数据长度为0,不仅数据部分内容为空,累加和部分也为空。3测试内容所有的命令可以划分为两类:公共的通讯控制命令以及针对数据采集板的控制命令。公共通讯控制命令可分为以下四条1设置通讯波特率2 查询从机状态3获取从机固件版本信息4获取固件SN码针对数据采集板的控制命令有以下三条1 读取单片机状态2 设置数据采集板工作模式3 读取FPGA内部状态对于控制命令的第二条和第三条而言,其测试内容都包含两部分内容:上位机到单片机的通信验证以及单片机到FPGA的验证。上位机到单片机的通讯方式采用RS232方式,波特率为9600,一个起始位,8个数据位,以及一个停止位,无校验。上位机到单
4、片机的通信方式都会有应答,具体的应答方式在下面的测试内容中有详细介绍。单片机到FPGA的通信方式采用SPI方式,CS低有效,SCLK的上升沿采集数据。 4控制命令测试数据采集板的地址是0xA0。单片机仅仅是一个命令转达的单元。其负责将接收到的控制信息转发给FPGA。主机给单片机发送的内容定义表4-12:主机发送内容定义类型引导字符设备地址子地址命令字符数据长度数据内容校验和长度11111X1内容0xAA0xA00x000xXX0xXXXXX表4-13: 数据采集板从机回复内容定义类型引导字符设备地址子地址命令字符数据长度数据内容校验和长度11111X1内容0x550xA00x000xXX0xX
5、XXXX上位机与单片机通讯的命令字符与数据定义项目子地址方向命令数据说明10xA0H下行0x10H0BYTE读单片机状态。0xA0H上行0x10H1BYTE返回单片机状态数据。20xA0H下行0x20H13BYTE设置参数。0xA0H上行0x20H1BYTE返回应答。30xA0H下行0x30H1BYTE读取FPGA内部状态。(8bit)0xA0H上行0x30H1BYTE返回应答。4.1工作模式设置命令测试该命令主要完成对视频采集模式的参数设置,包括对FPGA读写操作设定,设置LVDS行场有效的时间参数,帧头检测参数设置,设置LVDS的单双通道,分辨率以及制式,VIDEO行场有效时间参数设置。该
6、命令的数据内容共有13字节4参数定义参照数据采集板的设计概要。将工作参数写入到FPGA内部,该命令包含13个字节,下面的内容为各个字节中的所代表的命令的含义。1)工作模式寄存器定义bit7bit6bit5bi4bit3bit2bit1bit0R/W_SWITCHS/D8/10format保留保留保留R/W_:控制单片机对FPGA的操作,如果是写操作,那么主机必须依次执行该命令以及执行命令字符为30-B0的所有命令,每写一个命令字节成功,返回一个成功标志。如果是读操作,那么单片机返回FPGA内部状态内容。SWITCH:选择当前处理的是CVBS信号还是LVDS信号,1为CVBS,0为LVDSS/D
7、:针对LVDS信号而言,S为single,当该位为1时,选择单通道,否则为双通道8/10:颜色分辨率选择,8为8bit,10为10bit。该位为1时,选择8bit,否则为10bit。format:选择电视制式,0为VESA,1为JEADA.我们需要设置数据采集板工作在LVDS信号采集,双通道,分辨率为8bit,VESA制式下,因此,设定该寄存器内容为0x10如果我们要设置数据采集板工作在VIDEO信号采集下,那么应该设置该寄存器值为402)行有效时间参数定义为两字节,一共11bit字节1字节2Bit73Bit20Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0RsvHDHDHD
8、HDHDHDHDHDHD0XXxxxxxxx此次调试使用到的信号源的分辨率为1366*768,因此设置行有效时间参数为1366的十六进制表示,0x556,其中高三位送给字节1,低八位送给字节2,因此,需要发送两个字节,0x05,0x56对于VIDEO而言,行有效设置为720,其十六进制表示为0x2D0,即发送两个字节,0x02,0xD03)场有效时间参数定义为两字节,一共11bit字节1字节2Bit73Bit20Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0RsvVDVDVDVDVDVDVDVDVD0XXxxxxxxx同理设置场有效时间参数为768的十六进制0x300,即高两
9、位送给字节1,低八位送个字节2,即发送两个字节0x03,0x00.对于VIDEO而言,场有效设置为576,其十六进制表示为240,则发送两个字节0x02,0x40.行同步时间以及场同步时间暂且不用,其定义如下:4)行同步时间参数定义为两字节,一共9bit字节1字节2Bit71Bit0Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0RsvHSHSHSHSHSHSHSHSHS0XXxxxxxxx5)场同步时间参数定义为两字节,一共9bit字节1字节2Bit71Bit0Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0RsvVSVSVSVSVSVSVSVSVS0XXxx
10、xxxxx设置这两个寄存器为0,这里需要发送四个0x00帧头检测参数有5位组成,我们独用一个寄存器,用第五位表示,高三位保留6)帧头检测参数以及消隐消隐信号最高位定义bit7bit6bit5bi4bit3bit2bit1bit0HFP8HBP8VFP8VBP8FH3FH2FH1FH0bit3-bit0为帧头查找设定值,bit7-bit4分别为四个消隐信号分别的最高位。7)设置行消隐的前肩(9bit)Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0HFP7HFP6HFP5HFP4HFP3HFP2HFP1HFP08)设置行消隐的后肩(9bit)Bit7Bit6Bit5Bit4Bit
11、3Bit2Bit1Bit0HBP7HBP6HBP5HBP4HBP3HBP2HBP1HBP09)设置场消隐的前肩(9bit)Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0HFP7HFP6HFP5HFP4HFP3HFP2HFP1HFP010)设置场消隐的后肩(9bit)Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0HBP7HBP6HBP5HBP4HBP3HBP2HBP1HBP0对于LVDS信号采集而言,这些数据组成了工作模式设置命令即:10,05,56,03,00,00,00,00,00,0A,00,00,01,共13字节。对于CVBS信号采集而言,这些数据组成
12、了工作模式设置命令即:40,02,D0,02,40,00,00,00,00,0A,00,00,01,共13字节4命令设置类型引导字符设备地址子地址命令字符数据长度数据内容校验和长度11111131LVDS内容0xAA0xA00x000x200x0D0x2005560300000000000A0000010x4BCVBS0xAA0xA00x000x200x0D0x4002D00240000000000A0000010x5F4上位机与单片机通信单片机返回到主机的值有三类,发送完命令后,当主机接受到0x00时,表明此次通讯成功,成功的标志在于,单片机正确的解析到了完整的命令内容,并且命令的内容符合约
13、定,且命令的累加和同单片机计算的累加和校验值一致,整个通信建立成功。发送完命令后,当主机接收到0xBF时,表明此次通讯不成功,但是引导字符,以及设备地址,以及命令字符都符合要求,不满足的地方在于校验出了问题,需要重新检查命令内容,并计算校验值。发送完命令后,当主机接受到0x7F,表明此次通讯彻底失败,即命令不是定义的类型。但是,如果将累加和内容或者命令内容部分改变,即最后一个字节不再是0x4B时,串口精灵就会收到0xBF。若将指令的非数据以及校验部分内容部分更改(例如,引导字符,设备地址,命令字符等),则返回0X7F,说明此命令不符合系统要求。需要注意的是,单片机仅仅在命令正确的情况下才会向F
14、PGA发送指令,否则一直处于等待正确命令状态。4单片机与FPGA的SPI通信若FPGA接受到的数据与要求相符,则点亮LED,否则LED不亮。通过实验发现,串口助手将正确指令发出后,FPGA将LED点亮,验证了SPI通信的正确性。,若发送的指令有误,FPGA将不会接收到指令,因为在指令错误的情况下,单片机跟FPGA的SPI通信是建立不起来的。4.2 读取单片机状态命令内部状态寄存器定义bit7bit6bit5bi4bit3bit2bit1bit0CFGWAIT保留保留保留保留保留保留CFG:FPGA配置结束后会给单片机一个应答,若配置没完成,该位置0,配置结束后,变为1;WAIT:等待接收命令字
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 采集 最新 通信协议 测试 12
限制150内