【发布时间】:2016-07-27 11:42:57
【问题描述】:
我想使用 pi serial 在 pi 3 中启用串行端口通信。 但是当我尝试打开这样的端口时
test=serial.Serial("/dev/ttyAMA0", 115200)
它给了我错误“port already open”。
我该如何解决?
【问题讨论】:
标签: python serial-port serial-communication raspberry-pi3
我想使用 pi serial 在 pi 3 中启用串行端口通信。 但是当我尝试打开这样的端口时
test=serial.Serial("/dev/ttyAMA0", 115200)
它给了我错误“port already open”。
我该如何解决?
【问题讨论】:
标签: python serial-port serial-communication raspberry-pi3
终于让我的 pi3 工作了(操作系统:debian jessie)
请仔细遵循这 6 个步骤。
第 1 步 - 将 Raspbian Jessie 安装到 SD 卡上并在连接到网络时启动 Pi 通过终端或桌面和 shell 登录 配置系统:
sudo raspi-config
扩展文件系统并在高级页面启用串行,退出并重新启动。
第 2 步 - 如果您有 jessie 新版本,则无需这样做。 更新系统:
sudo apt-get update
sudo apt-get upgrade
第 3 步 - 设备树设置如下:
将设备树添加到 /boot/config.txt 以禁用 Raspberry Pi 3 蓝牙。
sudo nano /boot/config.txt
在文件末尾添加
*如果您想将蓝牙更改为 miniuart 端口(坏)
dtoverlay=pi3-miniuart-bt
*如果你想禁用蓝牙(好)
dtoverlay=pi3-disable-bt
退出编辑器保存您的更改。
第 4 步 - 重启 pi
sudo reboot
第 5 步 -
a)禁用串行控制台编辑文件使用
sudo nano /boot/cmdline.txt
去掉“console=serial0,115200”或“console=ttyAMA0,115200”字相
退出并保存您的更改
b)启用串行控制台编辑文件使用
sudo nano /boot/cmdline.txt
将文件更改为以下内容:
dwc_otg.lpm_enable=0 console=tty1 console=serial0(or ttyAMA0),115200 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
退出并保存您的更改
第 6 步 - 重启 pi
sudo reboot
-----------------**that's all,have fun**-------------------------------
【讨论】:
ttyAMA0 是另一个设备!