一、前言 PC环境:Ubuntu18.04.2 LTS JetsonNano环境:Ubuntu 18.04 LTS Jetson Nano的40Pin接口SPI功能默认并未启用,需手动修改设备树文件后写入根文件系统。因使用虚拟机刷写Nano易变砖,不建议用虚拟机。 二、重写设备树 使用非官方脚本文件来刷设备树,在PC端中点击图中Download ZIP下载脚本文件,github地址为https://github.com/rt-net/JetsonNano_DT_SPI,或点击右边附件下载JetsonNano_DT_SPI-master.zip 下载后双击JetsonNano_DT_SPI-master.zip,解压到用户目录下 按下Ctrl+Alt+T打开终端,进入JetsonNano_DT_SPI_master目录,复制下面命令: cd JetsonNano_DT_SPI_master/ ./run.sh 若出现解压文件包错误,则先安装bzip2的1.0.6-8.1版本和支持库,复制下面指令进行安装,否则忽略下面一条命令: sudo apt install bzip2=1.0.6-8.1 libbz2-1.0=1.0.6-8.1 下载根文件系统和R32包后,脚本自动替换设备树文件并写入根文件系统,接着界面提示Nano是否进入Recovery模式 此时应将跳帽置Recovery引脚,J48引脚,MicroUSB接入PC,使用DC头供电 在终端输入y确认 刷写成功后如下图所示 三、SPI测试 Ubuntu下使用Termius等软件连接JetsonNano终端,使用wget命令下载spi_dev_test.c文件,复制下面指令: wget https://raw.githubusercontent.com/raspberrypi/linux/rpi-3.10.y/Documentation/spi/spidev_test.c 编译执行刚才修改好的spidev_test.c文件,复制下面命令: 至此Jetson Nano的spi0可以使用了,下面测试Pioneer600的OLED功能,复制下面命令下载Pioneer例程
wget https://www.waveshare.net/w/upload/a/ad/Pioneer600_code.7z 安装解压工具并解压刚才下载的Pioneer600_code.7z文件,复制下面命令 sudo apt-get install p7zip p7zip --uncompress Pioneer600_code.7z cd JetsonNano/OLED/python/ sudo python3 waveshare.py 其中Pioneer600的OLED与JetsonNano硬件连接如下图所示 若未安装PIL库,OLED显示会失败,失败则先安装下面支持包,复制下面指令: sudo apt-get install python3-dev python3-setuptools libtiff5-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev libharfbuzz-dev libfribidi-dev tcl8.6-dev tk8.6-dev python3-tk sudo apt-get install python3-pip sudo pip3 install pillow |