条屏控制协议

上传人:公**** 文档编号:497572023 上传时间:2022-12-10 格式:DOCX 页数:6 大小:107.62KB
返回 下载 相关 举报
条屏控制协议_第1页
第1页 / 共6页
条屏控制协议_第2页
第2页 / 共6页
条屏控制协议_第3页
第3页 / 共6页
条屏控制协议_第4页
第4页 / 共6页
条屏控制协议_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《条屏控制协议》由会员分享,可在线阅读,更多相关《条屏控制协议(6页珍藏版)》请在金锄头文库上搜索。

1、条屏控制协议V40_UNICODE精简版(2011.05.15)通讯波特率:57600, 8, N, 1约定:1, 如未特别说明,所有出现的数字(如:86、0x5A)均指二进制数字,而不是ASCII码。2, 协议中所有长度大于8bit的数字,均以小端格式存储(低字节在前,高字节在后。)第一部分:发送信息包总格式所有下发的指令信息包,都符合如下所述的指令格式:16字节信息头部+32字节指令参数+指令扩展内容+4字节信息尾部信息头: 指令参数:32字节。不同的指令,会有不同的参数,具体见第二部分; 指令扩展内容:可选段,最多1024 字节,如果发送的指令不需要扩展信息,则没有该 段。 信息尾部:校

2、验和结東符字节0-1: 16bit校验和,将本字节之前所有字节相加,取低16位。字节 3: 1 字节信息结束标志,固定为 0x50.注,每条指令总长度不超过16+32+1024+4 = 1076字节,每条指令最短16+32+4 = 52字节。第二部分,具体指令代码描述0x03、 发送信息指令:注:以发送unicode编码的文本信息“你好”为例。完整的数据包如下:A0 38 00 01 00 00 00 00 00 00 00 00 00 03 00 00 01 00 00 00 0F 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0

3、0 01 00 00 00 00 00 01 00 D0 0C ED 16 CE 02 00 50。数据包解析如下: 信息头部:已在第一部分描述,以后不再列举。A0380001000000000000000000030000指令参数:字节24:文字颜色字节和:节目所属分区字节4字节5字节 6字节24文字颜色0x01-红色0x02 -绿色0x03 -黄色;(单色屏直接填充为0x01)。字节30:当前节目所属分区。0x01表示分区1,0x02表示分区2,0x03表示分区3, 不分区等同于一个分区,因此不分区时,该选项直接填0x01。信息内容:参数范围说明:字节 2:动画方式0x00-立刻显示0x0

4、1-左移0x02-右移0x03-上移0x04-下移0x05-左拉幕0x06-下拉幕0x07-右拉幕移动速度,0x00-0x0F,数字越大越快。 页面停留时间,0x00-0xFF,秒数。字库类型(二次开发订制卡)。普通控制卡:文字的 UNICODE 编码。(需要对文字编码做处理,具体代码见文后) . 订制控制卡:文字的GB2312编码。信息尾部 已在第一部分描述,以后不再列举。0x06、 清除所有信息删除所有信息后,屏幕将只显示“当前无信息”。具体指令代码见第四部分的示例包。0x19、临时设置屏幕显示状态 指令参数:显示状态,0x01-显示屏正常显示;0x00-黑屏(关机),不显示任何内容 如果

5、控制卡重启,则屏幕会恢复正常显示状态。具体指令代码见第四部分的示例包。0x23、显示屏硬件设置 指令参数:字节 0:显示屏宽度(单位:像素) /8字节1:屏高(单位:像素)/8字节 2:颜色类型, 1=普通; 2=增强双色字节 3:数据极性, 0=负极性; 1=正极性字节 4: OE 极性, 0=负极性; 1=正极性字节 5:填充为 0字节6:扫描类型,高4位表示扫描方式,低4位代表走线方式。(16 分之一扫描可直 接填充为 0)字节 7:填充为0字节 8-12:填充为 0字节13:启动方式,0x00- FLASH启动(常规);0x01 - RAM启动字节 14-15:填充为 0。 注,显示屏

6、实际宽高必须为8的整倍数,通常都为16 的整倍数。0x24、读取硬件设置 控制卡将在回馈扩展信息中,按照上条命令的格式返回设置参数第三部分,终端回馈信息包总格式所有回馈的信息包,均符合如下所述的格式:终端回馈包格式和下行包格式相同,只是将包头标志改为“ 0xAF”,结束标志改为 “0x5F”。执行结果通过“指令代码”字段返回。具体错误代码参照备注.注1, 对于群发信息,无论执行成功于否,终端都不会返回。第四部分,示例包1,发送文本信息 “LED 显示屏”,进入动画=“立刻显示”,停留时间=“2”,颜色=“红”A0 40 00 01 00 00 00 00 00 00 00 00 00 03 0

7、3 02 01 00 00 00 0E 02 02 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 01 00 00 00 0C 00 01 00 4C 00 45 00 44 00 AE 23 AA 36 BF 19 6804 00 504,清除屏内的所有信息:A0 34 00 01 00 00 00 00 00 00 00 00 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

8、 DB 00 00 50注意:发送显示节目时,必须按照下面的指令顺序发送信息,否则会导致发送失败,如下1.发送关屏指令(0x19+参数)2发送显示节目3.发送开屏指令(0x19+参数)关屏指令:A0 34 00 01 00 00 00 00 00 00 00 00 00 19 19 18 0000 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1F 01 00 50开屏指令:A0 34 00 01 00 00 00 00 00 00 00 00 00 19 19

9、18 01 00 00 00 00 00 00 00 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20 01 00 50第五部分,UNICODE编码详细说明1、发送文本信息时,发送处理过的UNICODE编码,UNICODE编码无论英文或汉字, 均以16bit表示(即占2字节)。如“啊”字的UNICODE编码是“0x4A 0x55”,字母“A” 的 UNICODE 编码是 “0x41 0x00”。2、UNICODE 和 ANSI 编码的区别。UNICODE以16bit代表一个字符,英文字符和ANSI

10、编码兼容。如字母“A”,在ANSI 编码中是0x41,在UNICODE中是0x41 0x00, 转换为一个16bit的数字后,是0x0041。汉字和世界上其它地方的语言,采用统一的编码。(在我们板卡中,字库已经包含了所 有的汉字(简体、繁体、生僻字),但不包括其它国家的文字,如韩文等)3、发送文字的UNICODE编码时,要做什么处理 控制卡在接收文字时,并不是原封不动的接收其 UNICODE 编码,而是要做一定的处理,以便于控制卡显示。具体处理代码为:(其中IpStr是要转换的原始UNICODE字符串,pBuff是用于存放转换结果的缓冲区) void CopyWchar(LPCWSTR lpS

11、tr, WORD *pBuff)int nCount, nLen = 0;nCount = wcslen(lpStr);WCHAR ch;for(int i=0; ivnCount; i+)ch = lpStri;if(ch = 0x80)if(ch = 0x2000 & ch = 0x3000 & ch = 0x4E00 & ch = 0xF900 & ch = 0xFFFF)ch = ch - 0xF900 + 1648 + 1024 + 20902 + 128; ch += 128;pBuffi = ch;第六部分,备注内容1,为了保持终端对服务器的响应速度,通常终端不会对服务器的包做太多校验,终端返回 的错误含义为:1.1 收到的包格式正确,但是校验和验证错误。错误码为 1。(如果收到的包格式不正 确,终端会丢弃该包,不会发出回馈信息)1.2 收到的包验证正确,但是指令无法识别。错误码为 2.1.3 收到的包验证正确,但是指令尚未实现或者控制卡不支持。错误码为 3.1.4包中参数错误,如发送信息时指定的ID大于控制卡允许的ID上限、设置硬件参数时指定的屏幕高宽超出最大范围。错误码为4.返回 0 代表执行成功。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 建筑资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号