一、前期准备
需要准备一张sd卡,内存越大越好。本次烧录的硬件系统是树莓派5。最好能有显示屏,远程桌面不太好弄。
二、操作系统烧录
首先下载好官方的烧录器。
根据自己的操作系统下载。
然后下载官方镜像,这里给出链接树莓派镜像。一般选择“Raspberry Pi OS with desktop and recommended software”这种的,然后选择自己树莓派的操作系统位数(32或64bit)。
下载完后进入页面。device选择你自己的树莓派型号;os选择最下面use custom,然后找到上一步下载完的img.xz镜像文件,打开。
选择sd卡那边就选择已经格式化好的目标sd卡。
注意:!!!
为什么不选择官方推荐的,是有些情况写入镜像时会报错,未知错误,只能这样做。第一次烧录的可以先试一下官方推荐的第一种烧录方法。
如果烧录完成后在配置用户名密码重启后,出现无限循环重启,那么只能重新烧录镜像,且特别注意,在烧录前的设置中一个勾都不要打,直接选清空设置!!!
三、中文输入法
烧录完镜像后,一般的操作就是换源。换源的话换源这个博主写的很详细,完全根据他的走就能行。
中文输入法的话可以参考中文输入法,因为树莓派5和4有点区别,所以里面在raspi-config里只需要找到“zh_CN.UTF-8 UTF-8”打勾即可。
记得每次设置完成后重启一下树莓派有些设置才能生效。
四、各种环境的配置(opencv,pyserial)
opencv在树莓派上还是挺难配置的,在jetson上还是相对简单。这里参考的是opencv。
记得那个在桌面新建的环境文件夹不要删,妥善管理。
然后可以选择性下载vscode,因为pc,jetson上我都习惯了vscode。直接参考vscode就行,不过有些路径可能需要更改。
如果你安装了vscode,那么就要在那个安装了opencv的环境下写代码,也就是编译器(interpreter)选择改文件夹中/bin/python即可,这一步很重要。
pyserial的话也挺麻烦的,pyserial里能下载。也可以激活我们刚才建立的环境,参考pyserial教程里的激活方式,一定要在那个环境下激活,用过anaconda的应该知道这是什么意思。
然后输入下面指令。
source pip install pyserial
五、串口通信
串口通信是一个比较麻烦的步骤。参考串口的一部分,简单讲一下就是不需要管serial0对应了是ttyAMA0还是ttyAMA10,只要不是对应了miniuart就行,硬件接线没有错就行了。然后剩下的步骤就基本上和jetson nano 一样了。
sudo chmod /dev/ttyAMA0
开启串口权限。
代码中需要
import serial
import struct
com = serial.Serial("/dev/ttyAMA0", 115200)
def send_data(a):
tmp = struct.pack("<b", int(a))
com.write(tmp)
... ...
具体的代码可以参考我之前写过的jetson串口通信。
六、结语
树莓派虽然学习资源确实比jetson多,但是一分价钱一分货,在体验了两种开发板后我还是更加喜欢jetson 的ubuntu操作系统。还有一点,树莓派可能不支持热拔插,记得任意时刻想要拔出任何接口记得先关机断电!
感谢:
【本文引用的所有链接里的博客作者】