树莓派ubuntu mate 20 与openmv串口通信
1、将卡格式化为FAT32文件系统(很简单可自行百度)
2、树莓派镜像ubuntu-mate-20.04.1 32位下载
https://ubuntu-mate.org/download/
3、Win32DiskImager 烧镜像软件
https://sourceforge.net/projects/win32diskimager/
上电开机
不配置网络
(注:由于20版自带python所以不用换源下载,此处可忽略
换源问题root身份打开 /etc/apt/sources.list
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-backpo rts main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse)
4、开终端给root权限 sudo –s
查看映射关系 sudo ls -l /dev
树莓派CPU内部有两个串口,一个PL001 UART和一个Mini UART。Mini UART没有时钟源。关闭蓝牙
系统文件中的firmware文件中 config.txt 在对应的文件末尾加入dtoverlay=miniuart-bt
cmdline.txt文件的有关console的内容全部删掉
sudo systemctl disable hciuart 关闭蓝牙
sudo reboot 重启树莓派
编辑config.txt文件,增加enable_uart=1
sudo reboot
查看映射关系 sudo ls -l /dev
5、Openmv
https://singtown.com/openmv-download/
openmv连接ide进行程序烧录
import time
from pyb import UART
uart = UART(3, 9600)
while(True):
uart.write("Hello World!\r")
time.sleep(1000)
在树莓派新建py文件rdpi.py 内容如下
import serial
import time
ser = serial.Serial('/dev/ttyAMA0', 9600)
#9600为波特率
if ser.isOpen == False:
ser.open() # 打开串口
#ser.write(b"Raspberry pi is ready")
try:
while True:
size = ser.inWaiting() # 获得缓冲区字符
if size != 0:
response = ser.read(size) # 读取内容并显示
print(response)
ser.flushInput() # 清空接收缓存区
time.sleep(0.1) # 软件延时
except KeyboardInterrupt:
ser.close()
python3 rdpi.py
给权限sudo chmod 4755 /usr/bin/python3
6、硬件连接线
2345引脚
gnd vc p5 p4
文档下载:本文电子版