上位机图像处理和嵌入式模块部署(树莓派4b的一种固件部署方法)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

如果软件开发好了之后,下面就是实施和部署。对于树莓派4b来说,部署其实就是烧录卡和拷贝文件。之前我们烧录卡,一般就是用读卡器烧入镜像,然后再用micro hdmi转hdmi搭配显示器的方法去配置ip地址,这样有了网络之后,后续的部分就是用网络处理了。这么做当然不是不可以,主要就是麻烦,而且需要屏幕的配合。有些情况下,我们是没有显示器的,特别是出差的时候,这种情况下就显得更不合适了。为此,我们想出了一种基于wifi烧录的方法。

1、Imager配置wifi信息

一开始利用Imager烧录之前,我们就可以在Imager上面配置wifi信息,比如ssid、用户名、密码。除此之外,还有ssh服务、ssh用户名、ssh密码等等配置。我们出差的时候,如果不好配置,其实手机开一个热点,相当于pc和树莓派4b都接到手机热点上,这样就可以顺利进行后面的操作了。

2、Image烧入镜像

配置好了wifi等基本信息,就可以烧入我们需要的镜像信息,这一步没有什么好说的,就是把读卡器+tf卡插入到pc烧录。

3、找到wifi ip地址

烧录好镜像之后,一般是不知道wifi ip地址的,因为这个地址默认是动态分配的。此时就可以通过局域网扫描工具来找出对应的地址。这样,至少我们可以找到树莓派4b对应的网络地址。有了地址,接着直接用mobaxterm ssh连接上去看看,确认是不是真的可以访问树莓派4b了。

4、实现ssh static

用wifi访问,毕竟不是很靠谱,毕竟wifi不可能一直都在。一般情况下,我们还需要配置一个静态地址。这种情况下,一般先设置一个启动文件。假设这个文件时run.sh,那么可以把这个run.sh放在/etc/rc.local里面。我们可以在run.sh里面添加对应的配置,比如静态网络的配置,

ifconfig eth0 up
sudo ifconfig eth0 192.168.0.97 netmask 255.255.255.0 broadcast 192.168.0.255

在此之前可以配置下.vimrc,不然不好操作,

set nocompatible
set backspace=2

配置好之后,找一根网线,直连笔记本电脑和树莓派4b,如果ssh没问题的话,其实代表我们配置的静态地址已经生效了。有了静态地址,后续开发板重启之后,就可以用这个静态地址进行访问开发板了。当然客户有其他ip设置要求的话,修改也很方便的。直接在run.sh中修改就可以了。

5、拷贝文件

前面所做的工作都是为了这一步做的铺垫。建立了ssh之后,就可以直接用mobaxterm通过ssh把需要的文件拖过来。该解压的解压,该配置的配置,该设置环境变量的设置环境变量,这样基本我们需要的文件就可以安装好了。

6、开机启动和测试

拷贝好了文件,下面就是把默认启动的程序放在run.sh,这样树莓派4b开机之后,整个软件就跑起来了。不仅如此,此时如果我们需要利用上位机对树莓派4b进行测试和验证的话,也是ok的。至此,一个基本的硬件固件就烧录好了。全程没有使用到屏幕,还是比较方便的。当然如果把所有的镜像做成一个image,那就更好了。

相关推荐
温、2 天前
【docker学习笔记】docker概念和命令
笔记·docker·持续部署
laufing8 天前
基于 jenkins 的持续测试方案
jenkins·持续部署·持续集成·持续测试
GoppViper8 天前
golang学习笔记16——golang部署与运维全攻略
笔记·后端·学习·golang·持续部署·源代码管理
关关长语9 天前
Gitness 基础安装
运维·devops·持续部署
水煮白菜王1 个月前
《Docker:实现开发环境一致性与高效部署的利器》
java·docker·eureka·持续部署
蜗牛沐雨1 个月前
利用 Docker 和 Poetry 优化 Python 应用部署
python·docker·容器·持续部署·poetry
Funny_AI_LAB2 个月前
高效提速LLM模型推理部署
人工智能·python·语言模型·持续部署
逆天-逍遥哥哥3 个月前
docker离线安装部署
docker·容器·持续部署
轻云UC5 个月前
【k8s】Kubernetes 1.29.4离线安装部署(总)
云原生·容器·kubernetes·k8s·脚本·持续部署