为了实现上网自由,我做了一个多功能串口服务器

项目作者:小华的物联网嵌入式之旅

介绍:从事电气自动化行业,多次获得物联网设计竞赛,爱好嵌入式设计开发,物联网开发。

设计方案思路的由来,是因为我们现在的开发板基本需要通过串口与WIFI模组或以太网模组连接以实现联网功能,如果多个开发板就要配多个模组,所以做一个类似路由器的功能,将多种串口协议集中连接到串口服务器上面,然后就可以实现通过一个以太网功能实现联网。

在这里插入图片描述

串口服务器网上也有相关的产品售卖,虽然不知他们的控制原理,但是对我来说只需要将串口数据发送到V853上,通过它进行数据解析后集中通过以太网接口发送出去就实现了串口服务器和路由功能。

该服务器因为具备了WIFI模组,所以也可以组成局域网,将所有无线设备都可以连接到模组接收数据,然后再通过以太网接口与其他网络设备进行交互。

主要功能及用途

实现的功能是基于官方提供的V853原理图和晕哥设计方案的基础上进行了功能扩展,新增了串口转换电路:

1、V853最小系统,运行linux操作系统,尽可能运行桌面系统,这样可以像操作电脑一样编辑串口数据。
2、WIFI模组实现联网功能。
3、显示屏LCD接口,用来显示操作界面。所以有了它就更像一台小电脑服务器。
4、摄像头接口,这是预留接口,用来实现摄像头监控,在数控机房里面特别适合。
5、”USB-HUB扩展4路USB接口,通过USB转串口芯片CP2102实现2路R232,2路RS485,4路TTL,总共实现8路串口功能。满足了我们多功能串口服务器。

在这里插入图片描述

软件设计

需要在linux系统上安装Node-Red软件,这个软件是一个图形化编程编辑界面,通过安装相对应的节点就可以实现想要的功能。

例如串口功能,MQTT功能,TCP功能等必要的组件都可以安装实现,只需要设置需要参数就可以完成相关功能,同时还可以进行数据解析,并通过Dashboard数据可视化界面做上位机显示到显示屏上面,摄像头的调用可以使用里面的组件去调用,可以说node-red可以轻松实现串口数据转以太网,实现任何一个串口设备都可以轻松连接到服务器。如下图就是各个节点功能的使用案例。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

所以解决串口和无线有线的连接问题,就可以实现数据交互的服务器。外网如果想查看上位机界面,因为它是网页版,所以通过透传的方式就可以远程打开查看这个网页。

方案原理图

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

PCB是基于Yuzuki大佬的“高性能异构边缘AI视觉开发板”PCB板上画的,让我节省了很多时间。我只需要扩展我的串口功能部分和修改了部分电路与布局。

在这里插入图片描述

开始我的板子有个小插曲,板子刚回来时发现上电后没有反应,检查好几天才发现没有焊接晶振,我还在硬件设计大赛的群里打扰各位大佬为什么我的板子不能工作,识别不到USB等等问题。还好发现了问题并解决了。现在给大家介绍如何烧录Tina Linux系统。

固件烧写及点灯

在全志在线开发者社区的资料下载页面下载红框所示的全部量产工具。

在这里插入图片描述

下载出厂固件。

在这里插入图片描述

打开刷机软件:(该软件在全志资源下载里面都能找到)。

在这里插入图片描述

这个时候按住开发板上FEL按键不松手,然后用Type-C数据线连接电脑和板子的OTG接口,这个时候会进入USB模式,刷机软件就会自动识别并烧录固件。如果没有进入USB模式,可以通过按住FEL按钮,然后点击一下RESET按钮,这时候如果你的电脑开了音量,就听到声音。此时刷机软件也会自动进入烧写模式。

在这里插入图片描述

显示烧录成功:

在这里插入图片描述

刷机软件也自动连接上板子,显示了如下信息:

在这里插入图片描述

然后系统会自动运行,过了一会儿,我们会发现在设备管理中看到Tina ADB,刷机软件的首页也显示连接设备成功。

然后我们需要配置添加ADB到环境变量中:在win10系统中:

我的电脑-属性-高级系统设置-弹出“系统属性”窗口,选择高级栏中的环境变量,弹出的窗口中选择用户变量中的path路径,选择下载并解压的ADB。

在这里插入图片描述在这里插入图片描述

新建一个路径,选择自己的adb路径:

在这里插入图片描述

然后再win10开始栏中输入cmd,打开命令提示符窗口,我们输入adb shell就会看到如下内容,这样我们就进入了linux系统。

在这里插入图片描述

点亮LED灯,连接PH11引脚到LED灯就可以通过控制gpio235的值来点亮和熄灭LED灯。

echo 0 > value点亮LED灯echo 1 > value熄灭LED灯

在这里插入图片描述

如下图我板子的PH11引脚连接到串口的一个蓝色LED指示灯实现点亮LED灯功能。

在这里插入图片描述

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

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

相关文章

Redis 从入门到精通【进阶篇】之Redis事务详解

文章目录 0.前言1.Redis 事务基本流程 1.事务详解1.1. 开始事务1.2. 命令入队1.3. 执行事务1.6. 带 WATCH 的事务1.7. WATCH 命令的实现1.8. WATCH 的触发1.9. 事务的 ACID 性质 2.总结2.1. 在事务和非事务状态下2.2. 小结2.3. 为什么Redis 的事务并不是真正的原子操作2.4. 为什…

SpringBoot学习——追根溯源servlet是啥,tomcat是啥,maven是啥 springBoot项目初步,maven构建,打包 测试

目录 引出追根溯源,过渡衔接servlet是啥?tomcat是啥? 前后端开发的模式1.开发模式:JavaWeb:MVC模型2.Web:Vue,MVVC模型3.后端相关3.1 同步与异步3.2 Controller层3.3 Service层:要加…

【C++初阶(三)】引用详解(对比指针)

💓博主CSDN主页:杭电码农-NEO💓   ⏩专栏分类:C初阶之路⏪   🚚代码仓库:NEO的学习日记🚚   🌹关注我🫵带你学习排序知识   🔝🔝 引用 1. 前言2. 引用的概念3. 引用的特性4. …

Node.js知识梳理(二)——进阶

以下内容来自对《从前端到全栈》一书的学习记录~ 学习的时候用的是V16.20.0,18之后的语法差别还是有的~ 请求优化 我们在请求资源的时候,是需要做优化的,这里的优化涉及到了缓存。浏览器的缓存策略有两种: 强缓存协商缓存 关于…

Valve 签约开源 Linux 图形驱动开发者

导读据外媒 phoronix 报道,Valve 最近聘用了著名开源 Linux 图形驱动开发者 Alyssa Rosenzweig,以改进开源 Linux 图形驱动程序堆栈,增强 Linux 游戏生态系统。 Alyssa Rosenzweig 多年来在 Panfrost 开源、逆向工程 Arm Mali 图形驱动程序方…

Zabbix监控软件 Linux外多平台监控【Windows JAVA SNMP】

在之前的博客中,已经介绍了zabbix的安装,配置,以及如何用zabbix监控Linux服务器。这篇博客则介绍zabbix监控的其他几种方式(Windows服务器 Java应用 SNMP)。 -------------------- Zabbix 监控 Windows 系统 ---------…

[ABC218G] Game on Tree 2 树上游戏

[ABC218G] Game on Tree 2 树上游戏 文章目录 [ABC218G] Game on Tree 2 树上游戏题面翻译输入格式输出格式样例 #1样例输入 #1样例输出 #1 样例 #2样例输入 #2样例输出 #2 样例 #3样例输入 #3样例输出 #3 题目大意分析水法code 正解code 题面翻译 给定一棵树,以及…

Vue 之 mixins 和 provide/inject

一、mixins 1、简介 ​ mixins 又称 混入,是指将一些可复用的代码(JS、生命周期钩子函数等等)抽离出来,定义成mixins模块,然后混入到多个组件中,从而实现组件间的逻辑代码共享,减少重复代码。…

Web安全——数据库mysql学习

数据库mysql基础 Web安全分享一、数据库的基本操作1、MYSQL登录与退出2、MYSQL数据库的一些解释3、MYSQL注释符有三种: 二、数据库的一些基本操作1、数据库的增删改查(sql语句) 三、table 表的操作1、查看表结构2、查看表的内容3、建立表4、约束条件5、修改表的操作…

macOS Sonoma 14 beta 3 (23A5286g) Boot ISO 原版可引导镜像下载

macOS Sonoma 14 beta 3 (23A5286g) Boot ISO 原版可引导镜像,7 月 5 日(北京时间今日凌晨)已发布 本站下载的 macOS 软件包,既可以拖拽到 Applications(应用程序)下直接安装,也可以制作启动 U…

GaussDB云数据库SQL应用系列—分区表管理

目录 前言 一、分区表基本原理 二、分区表主要优势 三、分区表常见场景 四、GaussDB分区表管理(示例) 示例一:创建范围分区表(RANGE) 示例二:创建哈希分区表(HASH) 示例三:创建列表分区…

vue3 实现多层级列表

文章目录 需求背景解决效果index.vue视频效果 需求背景 需要在统一个列表下&#xff0c;实现商品和规格得管理和联动 解决效果 index.vue <!--/*** author: liuk* date: 2023/7/7* describe: 商品列表 */--> <template><div class"container">&…