在学习linux驱动的过程中,正好碰到有个实际的超声模块测试的工作,顺便把学习的知识应用一下,实现了超声测距数据的本地与远端的显示,在此做一下记录。
开发环境:ubuntu20.04
硬件平台:正点原子阿尔法imx6ull开发板
交叉编译器:arm-buildroot-linux-uclibcgnueabihf-gcc 版本10.3.0(buildroot 2022.05)
uboot版本:2020.04
kernel版本:5.10.109
buildroot版本:2022.05
板卡系统部分的工作包括uboot、kernel的移植,buiildroot交叉编译工具链和文件系统制作。
通过buildroot加载了openssh、libwebsockets、civetweb库,现在用buildroot来搭建文件系统确实简单了许多。
应用部分的工作包括lvg_gui显示的移植,lvgl的显示比较简单,从git上直接clone以后,简单修改一下头文件就可以显示,uart串口的通信,通过uart串口读取两个超声模块的数据。websocket服务端,定时向连接的客户端发送获取到的超声模块的数据,客户端做一个web页面的显示。web页面搭建在civetweb服务器上,远端通过IP与端口访问。
功能实现的比较粗糙,比较实用,安装到机器人上以后,在办公室就可以看到机器人上超声模块的数据。
学习的过程中有所感悟,任何的知识都是只是工具,我们需要借助这些工具来实现我们自己的想法。学习源于热爱,而不仅仅是一个谋生的手段。
本地显示:
远端显示:
所用到内容