как включить связь последовательного порта (ttyAMA0) с использованием последовательного порта pi в pi3?

Я хочу включить связь через последовательный порт в pi 3, используя pi serial. но когда я пытаюсь открыть такой порт

test=serial.Serial("/dev/ttyAMA0", 115200)

выдает ошибку "порт уже открыт".

как я могу это решить?


person naseer mohammad    schedule 27.07.2016    source источник


Ответы (1)


наконец-то это помогло моей pi3 (os: debian jessie)

внимательно следуйте этим 6 шагам.

Шаг 1. Установите Raspbian Jessie на SD-карту и загрузите Pi при подключении к сети. Войдите через терминал или рабочий стол и оболочку. Настройте систему с помощью:

sudo raspi-config

Разверните файловую систему и включите последовательный порт на расширенной странице, выйдите и перезагрузитесь.

Шаг 2. В этом нет необходимости, если у вас есть новая версия jessie. Обновите систему с помощью:

 sudo apt-get update

 sudo apt-get upgrade

Шаг 3. Настройки дерева устройств, как показано ниже:

Добавьте дерево устройств в /boot/config.txt, чтобы отключить Bluetooth Raspberry Pi 3.

sudo nano /boot/config.txt

Добавить в конец файла

* если вы хотите сменить блютуз на порт miniuart (плохо)

dtoverlay=pi3-miniuart-bt

* если вы хотите отключить Bluetooth (хорошо)

dtoverlay=pi3-disable-bt

Выйдите из редактора, сохранив изменения.

Шаг 4 – перезагрузите пи

sudo reboot

шаг 5 –

а) чтобы отключить последовательную консоль, отредактируйте файл, используя

sudo nano /boot/cmdline.txt

убрать слово фаза "console=serial0,115200" или "console=ttyAMA0,115200"

Выйдите и сохраните изменения

б) для включения последовательной консоли отредактируйте файл с помощью

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 – перезагрузите пи

sudo reboot

 -----------------**that's all,have fun**-------------------------------
person naseer mohammad    schedule 27.07.2016
comment
Так что ttyAMA0 это другое устройство! - person dsgdfg; 27.07.2016
comment
ttyAMA0 не является устройством. это номер порта по умолчанию, назначенный операционной системой pi для подключения к последовательным портам в raspberry pi. - person naseer mohammad; 01.08.2016