上海程科电子科技有限公司/郑州中航软件开发有限公司
异步卡字符分区数据更新说明
文档使用说明
此文档使用对象为二次开发编程人员,具备 C 语言或者更高级语言编程的能
力。文档中的一些专业术语也同为面向专业人员,不对公众使用。
对于字符分区,目的是在安装有中航异步全彩控制系统的彩屏上显示和更新
一些更新频率高的信息,如高铁车次信息、公交车车次信息、停车场出入口处的
车辆和停车信息等需要实时变化的信息。
中航异步全彩控制系统支持并不仅限于字符分区,可以同时支持图片、视频、
传感器等分区。 方案实施流程
方案流程
制定显示方案,确定字符分区大小和显示的内容;
确定信息更新通讯方案,比如通过本地局域网、WIFI、本地服务器(需定制)、
远程服务器(需定制)、RS485(需定制);
确定通讯主机通信方案,比如通过计算机、嵌入式主板、Android 显示终端、
单片机等都支持;
根据后续文档提供的具体协议编程;
系统工作原理
以计算机通过百兆以太网和中航异步全彩控制系统通信来说明通信原理和方法,请参见
以下结构示意图。
计算机通过本地网络,使用 LEDPlayer 给 ZH-AXX 全彩异步系统(以下简称 ZH-AXX)发
送分区工程文件,包括字符分区或添加其它分区。注意发送完成后,关闭 LEDPlayer,
这样保证 LEDPlayer 和 ZH-AXX 的 TCP 连接断开,不会占用通信连接和端口;
运行客户自己开发的应用程序,通过 TCP 连接 ZH-AXX 的 20003 端口, 按协议发送数据
来更新指定分区中内容,达到实时刷新界面的目的
字符分区制作
1 上位机 PC 软件编辑节目,设置窗口 ID(1,2,3...),以 ID 区别指定窗口,
每个窗口中同一种素材只能放一个(本例中只放一个单行文本素材)
上海程科电子科技有限公司/郑州中航软件开发有限公司
字符更新协议
1 协议
struct PROTOCOL
{
unsigned short head; 2 字节 // 包头 0xAA99
unsigned short command; 2 字节 // 命令字
unsigned long seqence; 4 字节 // 0
unsigned long length; 4 字节 // 总长度
Data 不定长,由 length-[ PROTOCOL]头确定,具体内
容参见以下列表
};
2 命令 0x001E,发送素材内容到异步卡指定的文件窗中显示
2.1 请求:
名称 长度(字节) 说明
media_type 1 素材类型(单行文本:12)
action 4 动作(0:覆盖)
file_window_id 2 文件窗 ID
content_length 2 内容长度
content n 内容(如果素材是文件,此项
值为路径)
attributes_length 2 填 0
2.2 应答
名称 长度(字节) 说明
上海程科电子科技有限公司/郑州中航软件开发有限公司
status 2 0:成功
-2:设备已占用
3 单行文本示例
byte[] data = AA99 (head) + 001E(command) + 00 00 00 00(序列) + xx xx xx xx(length)
+ 0B(media_type) + 00 00 00 00 00(action) + 00 01(file_window_id) + 00 08 (content_length) +
xx xx xx xx xx xx xx xx(content) +0000(attributes_length)
注:length = data.length();
content_length = content.length();