SPComm向LED条屏发送数据(100)

  • 主题发起人 主题发起人 Delxl
  • 开始时间 开始时间
D

Delxl

Unregistered / Unconfirmed
GUEST, unregistred user!
我现在做一个条屏控制小程序,我有一个条屏协议(不是我写的),其内容很丰富如:发送字符串的协议为(这个协议我用得起): 0F5H+0C3H+地址+02H+发送的字符串的ASSIC码或汉字内码+1AH+校验码 发送功能码并保存的协议为(这个就恼火了): 0F5H+0C3H+地址+05H+停留时间+移动速度+汉字总数+功能码50Byte+1AH+校验码 功能码50Byte表示100幅的功能, 每幅半个字节,上半个字节在前(就这句看不明白,所以不知发送协议串时该怎么写) 功能码为:1:左移; 2:右移; 3:上移;4:下移;5:停留显示;等等请曾写过的朋友指点。
 
1. 选择你熟悉的通讯代码, 例如comm32, spcom等, 熟练掌握二进制数据块的传输;2. 要熟悉计算机的一些最基本的概念, 例如: 位,字节,字,整数,浮点数,校验位...3. 你的具体问题可能是"半字节"的问题, 字节有8个bit(位), 半个字节就是4个bit; 一个bit(位)是计算机最小的存储单位, 可以表示0,1两种状态, 一个字节(8bit)可以表示256种状态(0..255), 半个字节(4bit)最多表示16种状态(0..15);4. 你要做的是将100福状态(功能不会超过16)都用4位来分别表示, 再两两合成到一个字节, 组成50个字节的功能码就可以了; 具体的字节运算参见Delphi的字节运算符;5. 其实还有一个重要的编程经验就是: 试验 例如你可以试验各种字节操作, 最终获得如何很好地控制字节...等数据; 串口通讯试验... 包括你的字幕控制, 也是要多次试验...
 
功能码50Byte表示100幅的功能, 每幅半个字节,上半个字节在前(就这句看不明白,所以不知发送协议串时该怎么写) 功能码为:1:左移; 2:右移; 3:上移;4:下移;5:停留显示;等等////////////////////////////// 比如第1、2幅的功能为:第一幅左移,第二幅右移,则字节表示是:$12,如果再加上第三、四幅都上移,则是:$1233。功能码是50字节,所以剩余的字节可能要填0,具体测试一下就知道了。
 

Similar threads

D
回复
0
查看
923
DelphiTeacher的专栏
D
D
回复
0
查看
715
DelphiTeacher的专栏
D
D
回复
0
查看
676
DelphiTeacher的专栏
D
后退
顶部