拌合楼系统开发(二十)解决海康DS-TVL224系列屏幕显示二维码思路

前言:

         需求是想在通过程序动态控制显示屏显示二维码,最开始有些担心led这种点阵屏会不会对二维码显示出来后无法识别,实际测时候发现是没问题的。对于显示文字和语音播报,csdn上已经有大神有完整的代码。

海康威视道闸进出口LED屏DS-TVL224系列开发C#源码_ds-tvl224原厂程序及技术指导资料-CSDN博客

       开始以为会是个很简单的事情,但实际很悲催,找不到显示二维码的资料,全网搜了很多止步在显示文字和语音播报,官网就是个渣,中文网站内容不如英文网站内容多,但也没有啥帮助。到我写这篇文章前,我找到了一个思路可以通过程序控制显示二维码,but是固定的内容,还没找到完美的解决方案。

解决问题的过程

        一、设备调试工具

        1. 下载地址:        

         不知道为什么官网竟然下载不到,可以点击下面地址下载。【免费】海康威视道闸进出口LED屏DS-TVL224系列的调试工具,程序中密码led886,管理员密码就不得而知资源-CSDN文库     

          2.  工具简单实用教程

         线路连接很简单,网口接网线,电源直接接220v市电就可以了。

        双击搜到的设备,可以在这里修改设备的IP地址,其他参数就不建议大家修改了

    主界面置发送测试的文本内容,换行通过Ctrl+Enter换行,配置完成后再点击常规信息发送内容,看显示屏是否显示配置的内容

        其他操作包括发送二维码显示都很简单,拿到软件配合屏幕就很快可以上手。

          二、 程序控制显示的代码逻辑

        代码的核心就是建立TCP客户端,按照规则发送包给屏幕的地址,端口是10000,那么难的地方就是包怎么够造了。

          1.  发送文本        

   byte[] cmd_text_0 = { 0x55, 0xAA, 0x00, 0x00, 0x01, 0x00, 0x00, 0xDA, 0x00, 0x00 };byte[] cmd_text_1 = { 0x3D, 0x00, 0x00, 0x00 };//包长度(数据长度+51)byte[] cmd_text_2 = { 0x01, 0x01 };byte[] cmd_text_3 = { 0x3D, 0x00, 0x00, 0x00 };//帧长度(数据长度+51)byte[] cmd_text_4 = { 0x01, 0x01 };byte[] cmd_text_5 = { 0x3C, 0x00, 0x00, 0x00 };//节目长度(数据长度+50)byte[] cmd_text_6 = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01 };byte[] cmd_text_7 = { 0x24, 0x00, 0x00, 0x00 };//区域数据长度 (数据长度+26)byte[] cmd_text_8 = { 0x0E, 0x00, 0x00, 0x00, 0x00, 0x3F, 0x00, 0x3F, 0x00 };byte[] cmd_text_9 = { 0x02 };//颜色 01 红 02 绿byte[] cmd_text_10 = { 0x00, 0x00, 0x01, 0xFF, 0x01, 0x01, 0x10 };byte[] cmd_text_11 = { 0x0A, 0x00, 0x00, 0x00 };//数据长度 低位在前byte[] cmd_text_12 = { 0xD2, 0xBB, 0xC2, 0xB7, 0xC6, 0xBD, 0xB0, 0xB2, 0x38, 0x36 };//数据内容byte[] cmd_text_13 = { 0x00, 0x00, 0x0D, 0x0A };//帧尾

          2. 发送语音:

 byte[] cmd_speak_0 = { 0x55, 0xAA, 0x00, 0x00, 0x01, 0x00, 0x00, 0xDA, 0x00, 0x00 };byte[] cmd_speak_1 = { 0x36, 0x00, 0x00, 0x00 };//包长度(数据长度+51)byte[] cmd_speak_2 = { 0x00, 0x00 };byte[] cmd_speak_3 = { 0x36, 0x00, 0x00, 0x00 };//帧长度(数据长度+51)byte[] cmd_speak_4 = { 0x01, 0x01 };byte[] cmd_speak_5 = { 0x35, 0x00, 0x00, 0x00 };//节目长度(数据长度+50)byte[] cmd_speak_6 = { 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x01 };byte[] cmd_speak_7 = { 0x1D, 0x00, 0x00, 0x00 };//区域数据长度 (数据长度+26)byte[] cmd_speak_8 = { 0x2D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x01 };byte[] cmd_speak_9 = { 0x03, 0x00, 0x00, 0x00 };//数据长度 低位在前byte[] cmd_speak_10 = { 0x32, 0x33, 0x35 };//数据内容 (语音:“二百三十五”)byte[] cmd_speak_11 = { 0x00, 0x00, 0x0D, 0x0A };//帧尾      

        3. 二维码:

        推测如果要显示二维码,同样也是构造数据包给到屏幕就能够显示出来。但这个包该如何构造呢,我直接说出我的笨办法。

         既然是通过网络推送数据,那么就请出了wireshark这个网络抓包工具了。

   我发现这些数据包里面,这三条应该就是控制屏幕的数据包了。

        打开其中一条,定位到数据,发现是55 aa 00 00  符合屏幕控制的包头标识

   那如果我把这三条记录的数据通过程序发送给屏幕,是不是也可以控制显示出二维码,结论当然是可以的。


总结:

      虽然现在的方法只能显示固定的二维码,但至少迈出了代码控制显示二维码的第一部,后面重点就是思考怎么构造数据包了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/17309.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

100个 Unity小游戏系列三 -Unity 抽奖游戏专题二 水果机游戏

一、演示效果 二、知识点 2.1 布局 private void CreateItems(){for (int i 0; i < rewardDatas.Length; i){var reward_data rewardDatas[i];GameObject fruitOjb;if (i < itemRoot.childCount){fruitOjb itemRoot.GetChild(i).gameObject;}else{fruitOjb Instant…

数据中台建设方案(Word版源文档)

建设大数据管理中台&#xff0c;按照统一的数据规范和标准体系&#xff0c;构建统一数据采集&#xfe63;治理&#xfe63;共享标准、统一技术开发体系、统一接口 API &#xff0c;实现数据采集、平台治理&#xff0c;业务应用三层解耦&#xff0c;并按照统一标准格式提供高效的…

最新!!2024年上半年软考【中级软件设计师】综合知识真题解析

2024上半年软考考试已经结束了&#xff0c;为大家整理了网友回忆版的软件设计师真题及答案&#xff0c;总共30道题。 上半年考试的宝子们可以对答案预估分数&#xff01;准备下半年考的宝子可以提前把握考试知识点和出题方向&#xff0c;说不定会遇到相同考点的题目&#xff01…

[集群聊天服务器]----(十)Nginx的tcp负载均衡配置--附带截图

接着上文&#xff0c;我们剖析了服务端和客户端的代码&#xff0c;但是单台服务器的并发量是有限的&#xff0c;面对并发量的要求&#xff0c;我们就需要引入Nginx来实现并发量的要求&#xff0c;将用户请求分发到不同的服务器上分担压力&#xff0c;这就是负载均衡。 选择负…

汽车制造业安全有效的设计图纸文件外发系统是什么样的?

在汽车制造的世界里&#xff0c;那些设计图不仅仅是公司智慧的闪光点&#xff0c;更是它们竞争的秘密武器。但问题来了&#xff0c;当公司需要和供应商、合作伙伴频繁交换数据时&#xff0c;怎样安全又高效地发送这些设计图&#xff0c;就成了一个头疼的问题。这篇文章会深挖一…

python常用镜像

#1. 阿里云镜像&#xff1a;https://mirrors.aliyun.com/pypi/simple/ #2. 清华大学镜像&#xff1a;https://pypi.tuna.tsinghua.edu.cn/simple #3. 豆瓣镜像&#xff1a;https://pypi.doubanio.com/simple/ #4. 中科大镜像&#xff1a;https://pypi.mirrors.ustc.edu.cn/simp…

计算机网络——在地址栏输入网址(URL)之后都发生了什么

网址&#xff0c;也叫域名&#xff0c;域名就像一个 IP 地址的可读版本&#xff0c;比如&#xff0c;百度的域名 www.baidu.com&#xff0c;他的 ip 是 110.242.68.3&#xff0c;输入 IP 一样可以跳转到百度搜索的页面&#xff0c;我想没有一个人没去记百度的 IP 吧。其实我们真…

部署Prometheus + Grafana实现监控数据指标

1.1 Prometheus安装部署 Prometheus监控服务 主机名IP地址系统配置作用Prometheus192.168.110.27/24CentOS 7.94颗CPU 8G内存 100G硬盘Prometheus服务器grafana192.168.110.28/24CentOS 7.94颗CPU 8G内存 100G硬盘grafana服务器 监控机器 主机名IP地址系统配置k8s-master-0…

符合车规级漏电流检测的磁通门传感器KTD1100

电动车充电桩 在政策出台后&#xff0c;充电桩类产品按要求需装配B端漏电流检测装置。它可以有效防止充电桩等设备中的漏电流对用户造成危害&#xff0c;保障用户的用电安全。其次&#xff0c;它可以促进充电桩等产品的质量提升&#xff0c;提高市场的公平竞争&#xff0c;让消…

无线领夹麦克风哪个品牌好?本期文章揭秘无线麦克风哪个品牌好用

​在当下这个全民皆为媒体的时代大潮中&#xff0c;视频分享已然成为了引领风尚的指向标。在自媒体领域竞争愈发激烈的态势下&#xff0c;若要在这片广阔海洋中扬帆远航&#xff0c;优秀的作品毫无疑问是吸引观众的关键所在。而想要塑造出这样的卓越之作&#xff0c;除了需要创…

npm 版本号指定标识符

关于依赖的版本 我们可以先来了解依赖的版本 {"dependencies": {"nestjs/common": "^10.0.0","nestjs/core": "^10.0.0",} } 比如我们常见的依赖版本一般长这样&#xff0c;它一般由三部分组成&#xff1a;major.minor.p…

代谢组数据分析六:基于报告分数的功能分析

代谢组数据分析六:基于报告分数的功能分析 受经典“RSA”方法的启发,我们开发了改进的“基于广义报告者得分的分析(GRSA)”方法,并将其实现在R包“ReporterScore”中,同时配套了全面的可视化方法和通路数据库。“GRSA”是一种无需阈值的方法,适用于所有类型的生物医学特…

unity生命值有时候不会减少,即使明显被击中

碰撞检测不一致&#xff1a; 确保所有敌人对象都有正确设置的标签&#xff08;Tag&#xff09;&#xff0c;并且这个标签是在 OnCollisionEnter 中检查的 "Enemy"。此外&#xff0c;检查敌人和直升机的碰撞器&#xff08;Collider&#xff09;设置是否正确&#xff0…

K8s 小白入门|从电影配乐谈起,聊聊容器编排和 K8s

来听听音乐 电影&#xff0c;是我们生活中的重要调味剂。 配乐&#xff0c;是电影中不可或缺的一部分。 有的时候&#xff0c;配乐可以跟剧情共振&#xff0c;让你按捺不住自己的情绪&#xff0c;或眼含热泪、或慷慨激昂、或人仰马翻、或怅然若失&#xff1b; 有的时候&…

偏微分方程算法之抛物型方程差分格式编程示例一

目录 一、研究问题 二、C++代码 三、结果分析 一、研究问题 从本节开始将对具体的抛物型偏微分问题算例进行C++编程,以加深对抛物型偏微分方程差分格式构造的理解和应用。 采用向前欧拉格式计算抛物型方程初边值问题:

WebGL技术在教育培训中的应用

WebGL技术在教育培训中的应用非常广泛&#xff0c;通过其强大的三维图形处理能力&#xff0c;能够为教育培训提供更加生动、互动和沉浸式的学习体验。以下是WebGL在教育培训中的几个主要应用及其具体实现。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xf…

想用Python做OCR?看看这篇文章

OCR是Optical Character Recognition的缩写&#xff0c;中文名为光学字符识别。它是一种通过计算机技术对图像或扫描文档中的文字进行识别和理解的过程。OCR技术可以将图像中的文字转换为可编辑、可搜索的文本&#xff0c;使得计算机能够理解和处理这些文字信息。 OCR技术通常…

解锁数据的力量:Navicat 17 新特性和亮点

解锁数据的力量&#xff1a;Navicat 17 新特性和亮点 大家好&#xff0c;我是猫头虎。今天我要为大家介绍 Navicat 17 的新特性和亮点。Navicat 是一款专业的数据库管理工具&#xff0c;支持多种数据库类型&#xff0c;包括 MySQL、Oracle、SQL Server、PostgreSQL、MariaDB、…

C++流行编译器的基础认识

有哪些主流的C编译器&#xff1f; C有许多流行的编译器&#xff0c;每个编译器都有其独特的特点和用途。以下是一些流行的C编译器&#xff1a; GNU Compiler Collection (GCC): GCC是一个开源的编译器套件&#xff0c;支持多种编程语言&#xff0c;包括C和C。它是一个功能强大…

【量算分析工具-概述】GeoServer改造Springboot番外系列三

【量算分析工具-概述】GeoServer改造Springboot番外系列三-CSDN博客 【量算分析工具-水平距离】GeoServer改造Springboot番外系列四-CSDN博客 【量算分析工具-水平面积】GeoServer改造Springboot番外系列五-CSDN博客 【量算分析工具-方位角】GeoServer改造Springboot番外系列…