云飞科技RTU-LINUX数据板通用代码模块封装库

niujiuru 2ff37580af 1, 新增同步系统时间的小程序;2, 优化之前提交的新增HTTP同步获取时间的netmgrd.go代码;3, 重新编译打包 10 小時之前
.vscode 3fc05b052b 优化完善sshd模块代码 2 月之前
air530z fa042d21a3 优化修改Air530Z_GetPos2D()函数,加强健壮性,解决程序退出时,串口释放后的偶发性崩溃 3 周之前
air720u feb8346152 去掉函数调用换行时末尾多余的"\"符号 2 月之前
baseapp aaba8077e0 优化修改代码, 允许日志模块从其它配置文件加载日志设置 2 月之前
camera 0d9b5a49c2 优化修改说明文件 2 月之前
dh_takephoto 30c0851364 优化代码风格和注释 2 周之前
docs 95fa483555 优化修改代码, 增强容错处理 4 月之前
ec200u feb8346152 去掉函数调用换行时末尾多余的"\"符号 2 月之前
hk_takephoto 30c0851364 优化代码风格和注释 2 周之前
netmgrd 2ff37580af 1, 新增同步系统时间的小程序;2, 优化之前提交的新增HTTP同步获取时间的netmgrd.go代码;3, 重新编译打包 10 小時之前
package 2ff37580af 1, 新增同步系统时间的小程序;2, 优化之前提交的新增HTTP同步获取时间的netmgrd.go代码;3, 重新编译打包 10 小時之前
scripts f21e9e4975 1, 继续优化Shell控制脚本, 使其兼容性更好; 2, 优化后, 重新编译打包基础模块测试程序 3 周之前
sshd 5a3f8f6184 优化修改sshd的默认配置文件 4 周之前
swapi b3353fb883 优化swapi底层c库, 使得信号量、互斥量、读写锁相关超时函数不再依赖系统时间 2 周之前
tests 95fa6c92fe 优化修改camera模块代码 2 月之前
tools 2ff37580af 1, 新增同步系统时间的小程序;2, 优化之前提交的新增HTTP同步获取时间的netmgrd.go代码;3, 重新编译打包 10 小時之前
utils e9bfe51690 优化修改sshd模块代码,解决自测过程中发现的问题和bug 2 月之前
vendor_lumberjack 1f576e38f0 优化vendor, 删除没有修改的原始包, 只保留修改的包 4 月之前
ymodem ae9891ba21 优化修改代码 1 月之前
Makefile 2ff37580af 1, 新增同步系统时间的小程序;2, 优化之前提交的新增HTTP同步获取时间的netmgrd.go代码;3, 重新编译打包 10 小時之前
go.mod 35671228bf 优化sshd模块,远程执行指令时记录历史日志,便于溯源 2 月之前
go.sum 35671228bf 优化sshd模块,远程执行指令时记录历史日志,便于溯源 2 月之前
main.go 23ea3f51bb 优化writeDeviceIMEI()函数, 增强其并发操作时的安全性 2 周之前
readme.txt 07b4b6d8f8 优化修改sshd模块client端代码, 提升性能 2 月之前

readme.txt

云飞科技RTU-LINUX数据板通用代码模块封装,使用C和GO语言混编:
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
一、模块介绍
01、./docs (技术文档资料)
收集、汇总 相关技术文档

02、./swapi (C 通用函数库)
C语言通用函数基础封装库

03、./baseapp (应用程序父类)
GOLANG语言通用应用父类

04、./utils (通用能力封装)
基于RTU板块功能, 使用GOLANG封装常用函数, 提高复用与可维护性

05、./scripts (后台守护脚本)
SHELL脚本封装库, 后台守护软件运行等功能, 可以平替硬件看门狗

06、./air720u (拨号上网模块)
通过串口指令控制合宙"Air720U"硬件模块, 实现移动网络通信功能

07、./air530z (地理定位模块)
通过串口指令控制合宙"Air530Z"硬件模块, 实现地理坐标定位功能

08、./ec200u (拨号上网模块)
通过串口指令控制移远-"EC200U"硬件模块, 实现移动网络通信功能

09、./netmgrd (综合联网管理)
实现联网检测、自动切换有线与移动网络及时间同步等基础网管功能

10、./hk_takephoto (海康工业相机)
操控海康机器人工业相机, 通过海康提供的SDK, 封装实现拍照功能

11、./dh_takephoto (大华工业相机)
操控大华华睿的工业相机, 通过大华提供的SDK, 封装实现拍照功能

12、./camera (相机统一调用)
封装各类相机支持, 自动适配, 便于项目集成时灵活的使用各类相机

13、./sshd (远程运维模块)
实现SSH远程登录功能(reverse ssh),实现远程控制功能,运维管理

14、./ymodem (串口传输文件)
通过串口传输文件的功能模块, 项目中, 一般用于升级控制板的固件

二、编译说明
1, export交叉编译工具链"gcc-linaro-5.5.0-2017.10-x86_64_arm-linux-gnueabihf"的位置到PATH环境变量
2, make target=armv7hf
3, make clean
注释: 主要编译C语言时使用, Go语言不需要, 通过Makefile文件联合在一起编译

三、附加说明
1, 含C代码的模块一般都带有C编写的单元测试程序,可以在上位机上运行以下命令:
"valgrind --leak-check=full --show-leak-kinds=all --track-origins=yes a.out"
进行内存泄露检查,通过检查后的模块代码才能放心使用

2, 判断生成的armv7hf可执行文件依赖哪些依赖库,可以在上位机上运行以下命令:
arm-linux-gnueabihf-readelf -d ./a.out | grep NEEDED


Written by niujiuru 2025年于郑州