VB中怎样把不同大小的字通过串口传到下位机通过LED显示?

星空独行 2010-12-15 04:32:31
把一组字体大小不统一的文字的点阵码通过串口传到下位机通过LED显示。
...全文
146 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
cbm6666 2010-12-17
  • 打赏
  • 举报
回复
各别的厂家设计方式不一样 代码当然也不一样 是整屏的或单独模块的LED矩阵 代码写法也不一样

大体上传送的方式有两类:一为232或485的串口通讯 一为IP端口的发送, 可选择或固定式的, 厂家都会提供SDK 的, 为了高速路的系统,网上找遍了数十家专业制造厂 也亲自到了北京与深圳的厂家实际检测,最后我选定了北京的厂家

有我能帮得上的地方 你可以Q我 138449666

Private Sub Command3_Click()
LED_SetPower dev, 255, "192.168.123.30", 6666, LED_POWER_ON
End Sub

Private Sub Command4_Click()
LED_SetPower dev, 255, "192.168.123.30", 6666, LED_POWER_OFF
End Sub

Private Sub Command5_Click()
Dim ARect As rect
Timer1.Enabled = False
MakeRoot ROOT_PLAY, SCREEN_COLOR '形成发送数据
AddLeaf 10000 '追加一个页面

SetRect ARect, 0, 0, 32, 16 '限定字符显示在这个区域
AddText "12345", ARect, 1, 1, 1, "楷体", 9, RGB(255, 255, 0)

SetRect ARect, 0, 16, 48, 32 '211 2是滚屏
AddText "浙江霸王衡器有限公司", ARect, 2, 1, 1, "楷体", 9, RGB(255, 255, 0)

SetRect ARect, 0, 32, 64, 48 '限定字符显示在这个区域
AddText "12.34", ARect, 1, 1, 1, "楷体", 9, RGB(255, 255, 0)

Me.Caption = "正在发送数据..."
'上面的数据显示的结果为: 第一个32行显示‘第一行数据’,第二个32行显示‘第二行数据’,第三个32行显示‘第三行数据’
Me.Caption = "正在发送数据..."
LED_SendToScreen dev, 255, "192.168.0.99", 6666
End Sub



星空独行 2010-12-17
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 ybh37 的回复:]
引用 15 楼 wtime101 的回复:
通过公式计算出字符在点阵库中的地址,然后取出点阵码,再传给下位机显示

那就难怪了,我看还是尝试一下泰山的思路自己生成一个点阵,然后传过去。兴许好用
[/Quote]
难道没有其它的方法啦?
咸清 2010-12-17
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 wtime101 的回复:]
通过公式计算出字符在点阵库中的地址,然后取出点阵码,再传给下位机显示
[/Quote]
那就难怪了,我看还是尝试一下泰山的思路自己生成一个点阵,然后传过去。兴许好用
flfq 2010-12-17
  • 打赏
  • 举报
回复
显示的文字不多,下位机rom大的话,直接将字库放在下位机,上位机通讯时传编码就可以了
jiashie 2010-12-16
  • 打赏
  • 举报
回复
LED
咸清 2010-12-16
  • 打赏
  • 举报
回复
难道是BMP 格式后 取点阵~~
星空独行 2010-12-16
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 dbcontrols 的回复:]
放到PICTUREBOX中,采样
[/Quote]
能具体一点吗?
星空独行 2010-12-16
  • 打赏
  • 举报
回复
通过公式计算出字符在点阵库中的地址,然后取出点阵码,再传给下位机显示
of123 2010-12-16
  • 打赏
  • 举报
回复
你怎么调用的?
星空独行 2010-12-16
  • 打赏
  • 举报
回复
我原来只单独调用过12*12、16*16、24*24、32*32的点阵字库,没有传送过字体大小不同的文字。
of123 2010-12-16
  • 打赏
  • 举报
回复
你显示相同字体(最大字号)时是如何做的?
星空独行 2010-12-16
  • 打赏
  • 举报
回复
TO of123
怎样获取点阵?是像楼上说的“放到PICTUREBOX中,采样”那样做吗?还是~~~~~
of123 2010-12-16
  • 打赏
  • 举报
回复
如果不知道传输-显示的对应关系,可以从你能显示的最大字体的传输情况分析出来。
of123 2010-12-16
  • 打赏
  • 举报
回复

要看你的字库如何定义的,下位机显示存储是如何定义的,以及你数据传输的顺序与显示存储的对应关系。

首先,在你的主机端将要显示的点阵排到一个虚拟的显示缓存中(把各种大小的字库码填充进去),然后按规定顺序发送即可。
dbcontrols 2010-12-15
  • 打赏
  • 举报
回复
放到PICTUREBOX中,采样
星空独行 2010-12-15
  • 打赏
  • 举报
回复
我的意思是对于一组不同大小的文字怎么取点阵码,因为不同大小文字对应的点阵字库不同,如果通过不同的字库取码的话,很麻烦!
贝隆 2010-12-15
  • 打赏
  • 举报
回复
参阅LED和上位机的通信协议
贝隆 2010-12-15
  • 打赏
  • 举报
回复
这个的依据通信协议了。
咸清 2010-12-15
  • 打赏
  • 举报
回复
参看LED屏的接口、开发文档。

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧