ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:21.15KB ,
资源ID:8621218      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8621218.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(LED显示屏系统软件教程.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

LED显示屏系统软件教程.docx

1、LED显示屏系统软件教程LED显示屏系统软件教程通讯协议目录=第一章 概述 21.1 基本格式 21.2 CRC校验和算法 21.3 发送数据到配置区 4第二章 控制类命令 42.1 复位控制卡 42.2 取运行状态 42.3 设定亮度 52.4 发送时间段亮度表 52.5 设定自动开关屏时间 52.6 设定屏体电源状态 52.7 校准控制卡时间 5第三章 图片类命令 63.1 图片数据的整理 63.2 节目表的结构 83.3 发送图片数据和节目表文件 83.4 设定节目表项数 8第四章 文字类命令 94.1 显示文字串 94.2 画线 94.3 切换显示区 94.4 拷贝显示区 94.5 清

2、除显示区 94.6 装入图片到显示区 94.7 将显示区的内容保存为图片 9第一章 概述 本文档中,用字符表示ASCII码,字节表示16进制数据。涉及到两个字节表示一个数据时,总是高字节在前,低字节在后。控制卡上的FLASH芯片每256字节为1页,1型卡上有2048页,2型和4型卡有4096页;第 0页开始共3027页存放图片数据(仅2型、4型卡)第2048页开始共 979页存放图片数据(仅对1型卡)第3027页开始共 6页存放ASCII字符和数字的点阵库(若使用文字模式)第3033页开始共1024页存放16点阵汉字库(若使用文字模式)第4057页开始共 1页保留第4058页开始共 25页存放

3、时钟版面设计的内容第4083页开始共 12页存放节目表第4095页开始共 1页存放配置信息1.1 基本格式CL2005的基本通讯格式为:7字符引导串+1字节屏号+1字符卡类型+2字节数据长度+多字节数据+2字节CRC 其中, 引导串: ESC+“$LYTEC”(ESC的ASCII码值为0x1b) 屏号:控制卡上短路子设定的编号 卡类型:1表示1型卡,A表示2型卡,V表示4型卡 长度:高字节在前,低字节在后,表示有效数据的字节数,不包括引导串、屏号、卡类型、长度自身、CRC校验。 数据:数据的第1字节是命令码,其它为与命令有关的数据 CRC:高字节在前,低字节在后,对长度及数据进行16位CRC校

4、验的结果。 除取控制卡的运行状态外,对其它发送给控制卡的数据包的正确应答为9个字节:“07”+ 接收到的数据包从命令开始的5个字节+“OK” 由此应答格式可知,计算机发出的数据包中,在命令字节后必须至少有2个字节的数据(加上2字节CRC一共5个字节用于应答)。1.2 CRC校验和算法 下面用C语言描述CRC校验算法:WORD CRC_Table256 = 0x0000,0x1021,0x2042,0x3063,0x4084,0x50a5,0x60c6,0x70e7, 0x8108,0x9129,0xa14a,0xb16b,0xc18c,0xd1ad,0xe1ce,0xf1ef, 0x1231,

5、0x0210,0x3273,0x2252,0x52b5,0x4294,0x72f7,0x62d6, 0x9339,0x8318,0xb37b,0xa35a,0xd3bd,0xc39c,0xf3ff,0xe3de, 0x2462,0x3443,0x0420,0x1401,0x64e6,0x74c7,0x44a4,0x5485, 0xa56a,0xb54b,0x8528,0x9509,0xe5ee,0xf5cf,0xc5ac,0xd58d, 0x3653,0x2672,0x1611,0x0630,0x76d7,0x66f6,0x5695,0x46b4, 0xb75b,0xa77a,0x9719,0

6、x8738,0xf7df,0xe7fe,0xd79d,0xc7bc, 0x48c4,0x58e5,0x6886,0x78a7,0x0840,0x1861,0x2802,0x3823, 0xc9cc,0xd9ed,0xe98e,0xf9af,0x8948,0x9969,0xa90a,0xb92b, 0x5af5,0x4ad4,0x7ab7,0x6a96,0x1a71,0x0a50,0x3a33,0x2a12, 0xdbfd,0xcbdc,0xfbbf,0xeb9e,0x9b79,0x8b58,0xbb3b,0xab1a, 0x6ca6,0x7c87,0x4ce4,0x5cc5,0x2c22,0x

7、3c03,0x0c60,0x1c41, 0xedae,0xfd8f,0xcdec,0xddcd,0xad2a,0xbd0b,0x8d68,0x9d49, 0x7e97,0x6eb6,0x5ed5,0x4ef4,0x3e13,0x2e32,0x1e51,0x0e70, 0xff9f,0xefbe,0xdfdd,0xcffc,0xbf1b,0xaf3a,0x9f59,0x8f78, 0x9188,0x81a9,0xb1ca,0xa1eb,0xd10c,0xc12d,0xf14e,0xe16f, 0x1080,0x00a1,0x30c2,0x20e3,0x5004,0x4025,0x7046,0x6

8、067, 0x83b9,0x9398,0xa3fb,0xb3da,0xc33d,0xd31c,0xe37f,0xf35e, 0x02b1,0x1290,0x22f3,0x32d2,0x4235,0x5214,0x6277,0x7256, 0xb5ea,0xa5cb,0x95a8,0x8589,0xf56e,0xe54f,0xd52c,0xc50d, 0x34e2,0x24c3,0x14a0,0x0481,0x7466,0x6447,0x5424,0x4405, 0xa7db,0xb7fa,0x8799,0x97b8,0xe75f,0xf77e,0xc71d,0xd73c, 0x26d3,0x3

9、6f2,0x0691,0x16b0,0x6657,0x7676,0x4615,0x5634, 0xd94c,0xc96d,0xf90e,0xe92f,0x99c8,0x89e9,0xb98a,0xa9ab, 0x5844,0x4865,0x7806,0x6827,0x18c0,0x08e1,0x3882,0x28a3, 0xcb7d,0xdb5c,0xeb3f,0xfb1e,0x8bf9,0x9bd8,0xabbb,0xbb9a, 0x4a75,0x5a54,0x6a37,0x7a16,0x0af1,0x1ad0,0x2ab3,0x3a92, 0xfd2e,0xed0f,0xdd6c,0xcd

10、4d,0xbdaa,0xad8b,0x9de8,0x8dc9, 0x7c26,0x6c07,0x5c64,0x4c45,0x3ca2,0x2c83,0x1ce0,0x0cc1, 0xef1f,0xff3e,0xcf5d,0xdf7c,0xaf9b,0xbfba,0x8fd9,0x9ff8, 0x6e17,0x7e36,0x4e55,0x5e74,0x2e93,0x3eb2,0x0ed1,0x1ef0 ; 计算CRC校验的子函数: void CRC(WORD *CRCValue,BYTE ch); WORD NewCRC = *CRCValue; BYTE CV; CV=(NewCRC8)ch)

11、&0xff; NewCRC=(NewCRC8); CRC(&CRCResult,n&0xff); for (int I=0;In;+I) CRC(&CRCResult,ByteAryI);1.3 发送数据到配置区 节目数、设定的亮度、开关屏时间等,均存储在FLASH芯片的配置页,发送数据到配置页使用专门的命令: 1字符命令码Q+1字节配置页中的偏移量+1字节数据的字节数+1字节重启标志+数据 配置页中的数据偏移定义如下: 0x00-0x17:24字节,保留 0x18-0x19: 2字节,屏宽 0x1A-0x1B: 2字节,屏高 0x1C-0x1F: 4字节,保留 0x20-0x20: 1字节,

12、预设亮度0-7,8则表示执行时间段亮度,9表示走自动亮度 0x21-0x21: 1字节,节目表项数 0x22-0x23: 2字节,定时开屏之时分,BCD码 0x24-0x25: 2字节,定时关屏之时分,BCD码 0x26-0x2E: 9字节,保留 0x2F-0x2F: 1字节,有效图片数 0x30-0xBB:139字节,时钟版面设计内容 0xBC-0xCB:16字节,数码管显示码 0xCC-0xDF:20字节,时间段亮度表,4项每项为2字节开始时间(BCD码),2字节结束时间(BCD码),1字节亮度 0xE0-0xFF:32字节,保留第二章 控制类命令控制类命令包括复位控制卡、取运行状态、设定

13、亮度、设定开关LED显示屏时间等。2.1 复位控制卡命令格式:命令码V+2个字节的任意数据。2.2 取运行状态 命令格式:命令码D+2字节任意的数据。 对取运行状态,控制卡返回29个字节,“1D”+27字节数据这27个字节的数据中,前20个字节为十六进制的数字ASCII码,每两个拼合成1个字节的16进数据,一共10个字节,其中:第 1字节: D7-D4: 亮度 D3 : 是否处于测试状态 D2 : 是否人工强制开关电源 D1 : 是否因时间段导致关屏 D0 : 是否有汉字库 第 2字节: 当前播放的节目序号 第 3字节: 当前播放的图片序号 第 4字节: 开屏时间-时 第 5字节: 开屏时间-

14、分 第 6字节: 关屏时间-时 第 7字节: 关屏时间-分 第 8字节: 保留 第 9字节: 保留 第10字节: 保留 后面7个字节为BCD码: 第 1字节: 控制卡时钟,秒 第 2字节: 控制卡时钟,分 第 3字节: 控制卡时钟,时 第 4字节: 控制卡时钟,日 第 5字节: 控制卡时钟,月 第 6字节: 控制卡时钟,年 第 7字节: 当前设置的亮度2.3 设定亮度 命令格式:命令码Q+0x20+0x01+0x00+亮度值,亮度值为16进制数,范围0-9。0-7表示屏的亮度,8表示按时间段调整亮度,9表示按亮度传感器采样的结果自动调整亮度。2.4 发送时间段亮度表 命令格式:命令码Q+0xC

15、C+0x14+0x00+20字节亮度表 亮度表一共4项,每项5字节,其中第1、2字节为时间段的开始(时、分,BCD码),第3、4字节为时间段的结束(时、分,BCD码),第5字节为亮度值(0-7)。2.5 设定自动开关屏时间 命令格式:命令码Q+0x22+0x04+0x00+4字节时间 其中,时间的第1、2字节为开屏时刻,第3、4字节为关屏时刻(大于该时刻才真正关屏),这些时刻分别由BCD码的小时和分组成。2.6 设定屏体电源状态 命令格式:命令码P+1字节开关状态+1字节任意数据 其中,开关状态=0表示关屏,1表示开屏,2表示按照时间段自动控制2.7 校准控制卡时间 命令格式:命令码C+7字节

16、时间 这7字节时间均为BCD码,排列顺序为秒、分、时、日、月、星期和年。第三章 图片类命令图片类命令涉及两个方面,一是图片数据本身,另一是节目表。这两类命令都是将数据写往控制卡的FLASH芯片。不同的控制卡,虽然FLASH的容量不一样,但配置信息和节目表等都存放在FLASH芯片的高端,位置都是一样的,仅是图片数据存储的开始地址不一样。 假设LED显示屏的宽为W,高为H,则一个图片的发送次数为: 1、4型卡: TotalSendSteps = (H+127)/128)*16 2型卡单色:TotalSendSteps = (H+127)/128)*16 2型卡双色:TotalSendSteps =

17、 (H+127)/128)*32 必须从0开始到TotalSendSteps-1分步骤循环将一个图片的全部数据发送完毕。 每个图片占用的存储空间的页数为: PagesPerPicture=(W+255)/256)*TotalSendSteps 切记,这里计算出来的TotalSendSteps和PagesPerPicture是发送图片数据计算存储位置和发送次数必须用到的。3.1 图片数据的整理对于图片,常规的存储方案是按行存储,单字节表示水平方向的8个点。对于宽度为W,高度为H的图片,假设原始图片整理为水平排列,一字节表示屏幕8个点的二维数组,该数组的大小应该是 BYTE PictAryHW/8

18、(单色)或BYTE PictAryH*2W/8(双色),对于双色屏,PictAry0至PictAryH-1存放红色数据,PictAryH至PictAry2*H-1存放绿色数据。在控制卡上图片数据是按列存储的,一个字节表示同一列间隔16行的8个点,每次发送W个字节。1、单色屏的数据排列设图片的每个点的数据为:x(0,0),x(0,1),x(0,2),x(0,3),x(0,W-1)x(1,0),x(1,1),x(1,2),x(1,3),x(1,W-1),x(H-1,0),x(H-1,1),x(H-1,2),x(H-1,3),x(H-1,W-1) 对于1型、4型卡,当发送步骤为 y (0到Total

19、SendSteps-1)时,发送的图片数据中第z个字节的值按照从高到低的位的构成为:x(y+112,z),x(y+ 96,z),x(y+ 80,z),x(y+ 64,z),x(y+ 48,z),x(y+ 32,z),x(y+ 16,z),x(y ,z)对于2型卡,当发送步骤为y(0到TotalSendSteps-1)时,发送的图片数据中第z个字节x(y/128)*128+112,z),x(y/128)*128+ 96,z),x(y/128)*128+ 80,z),x(y/128)*128+ 64,z),x(y/128)*128+ 48,z),x(y/128)*128+ 32,z),x(y/12

20、8)*128+ 16,z),x(y/128)*128 ,z)2、双色屏的数据排列设图片的每个点的数据为:R(0,0),R(0,1),R(0,2),R(0,3),R(0,W-1)R(1,0),R(1,1),R(1,2),R(1,3),R(1,W-1),R(H-1,0),R(H-1,1),R(H-1,2),R(H-1,3),R(H-1,W-1)G(0,0),G(0,1),G(0,2),G(0,3),G(0,W-1)G(1,0),G(1,1),G(1,2),G(1,3),G(1,W-1),G(H-1,0),G(H-1,1),G(H-1,2),G(H-1,3),G(H-1,W-1) 对于1型、4型卡,

21、当发送步骤为 y (0到TotalSendSteps-1)时,发送的图片数据中第z个字节的值按照从高到低的位的构成为:G(y+48,z),G(y+32,z),G(y+16,z),G(y ,z),R(y+48,z),R(y+32,z),R(y+16,z),R(y ,z)对于2型卡,当发送步骤为y(0到TotalSendSteps-1)时,发送的图片数据中第z个字节的值按照从高到低的位的构成为:若y=TotalSendSteps/2:G(y-TotalSendSteps/2)/128)*128+112,z),G(y-TotalSendSteps/2)/128)*128+ 96,z),G(y-Tot

22、alSendSteps/2)/128)*128+ 80,z),G(y-TotalSendSteps/2)/128)*128+ 64,z),G(y-TotalSendSteps/2)/128)*128+ 48,z),G(y-TotalSendSteps/2)/128)*128+ 32,z),G(y-TotalSendSteps/2)/128)*128+ 16,z),G(y-TotalSendSteps/2)/128)*128 ,z)3.2 节目表的结构一个节目表项为12字节的结构类型:struct ProgListStru / 12字节 BYTE PictIndex; / 图片序号,从0开始 B

23、YTE EnterLeave; / D7-D4:进入方式, D3-D0:退出方式 BYTE Stay; / 停留时间,D7:单位,0:秒,1:分;D6-D0为停留时间 BYTE Flag_Speed; / D7: 1表示后一图片紧随本图片退出时进入 / D6: 1表示D7为1,且是水平移动 / D5: 整页时钟标志,显示时钟版面设计的内容 / D4: 定时播放标志 / D3-D0: 速度 BYTE WeekFlag; / 允许播放的周定时,为1的bit表示该日播出,/ D7对应周日,D6-D1对应周六-周一 BYTE StartHour; / 允许播放的开始时段,时,BCD码 BYTE Sta

24、rtMinute; / 分,BCD码 BYTE EndHour; / 结束播放的开始时段,时,BCD码 BYTE EndMinute; / 分,BCD码 BYTE TimerMode; / 时钟播放标志,顶部单、双行时钟日历等。 BYTE NC0; / 保留 BYTE NC1; / 保留;3.3 发送图片数据和节目表文件发送图片和节目表文件,统一使用存储数据到FLASH命令,格式为: 命令码R+2字节页地址+1字节页数量+数据发送图片数据时,假设当前发送第n个图片的第m步,则页数量的计算公式为: PageCountPerStep = (W+255)/256;页地址PageAddr的计算公式为:

25、 if (卡类型=1) PageAddr = n * PagesPerPicture + m*PageCountPerStep + 2048; else PageAddr = n * PagesPerPicture + m*PageCountPerStep;发送节目表时,页地址为4083(0xFF3),总的页数量则为12*节目表项数。因为控制卡上的通讯缓冲区最大为2080,也就是,每次发送不得超过8页,因此发送节目表时,需要根据实际页数处理为多次发送,每次均要计算页地址和页数量。3.4 设定节目表项数命令格式:命令码Q+0x21+0x01+0x01+节目表项数第四章 文字类命令4.1 显示文字

26、串命令格式:命令字H+1字节Bank号+2字节x坐标+2字节y坐标+1字节颜色+串+0x004.2 画线命令格式:命令字J+1字节目标Bank号+2字节起点X坐标+2字节起点Y坐标+2字节终点X坐标+2字节终点Y坐标+1字节线条颜色因为控制卡只支持画水平线或垂直线条,所以,起点和终点或X坐标一致,或Y坐标一致。4.3 切换显示区命令格式:命令字K+1字节目标Bank号+1字节任意数据4.4 拷贝显示区命令格式:命令字L+1字节目标Bank号+1字节任意数据4.5 清除显示区命令格式:命令字M+1字节目标Bank号+1字节任意数据4.6 装入图片到显示区命令格式:命令字N+1字节目标Bank号+1字节图片索引4.7 将显示区的内容保存为图片命令格式:命令字O+1字节源Bank号+1字节图片索引 本教程由LED显示屏厂家视爵光旭公司编写

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1