| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- 云飞科技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 (U口-工业相机) Todo: 待实现
- 操控大华华睿的工业相机, 通过大华提供的SDK, 封装实现拍照功能
- 12、./camera (统一相机接口) Todo: 待实现
- 封装各类相机支持, 自动适配, 便于项目集成时灵活的使用各类相机
- 13、./sshd (远程运维模块) Todo: 待完善
- 实现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年于郑州
|