Quiero acceder al puerto serie mediante algunos archivos de script BASH a través de / dev / ttyAMA0.
¿Cómo configuro los ajustes del puerto serie como velocidad, paridad par / impar?
Puedes utilizar
stty -F /dev/ttyAMA0 9600
para establecer la velocidad en baudios a 9600 desde la línea de comando. Intenta man stty
ver otras opciones.
Para configurar el UART ttyAMA0 para su aplicación (como minicom)
pi@raspberrypi:~ $ lsb_release -a
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 8.0 (jessie)
Release: 8.0
Codename: jessie
pi@raspberrypi:~ $ gpio readall
+-----+-----+---------+------+---+-Model B2-+---+------+---------+-----+-----+
| BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM |
+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| | | 3.3v | | | 1 || 2 | | | 5v | | |
| 2 | 8 | SDA.1 | IN | 1 | 3 || 4 | | | 5V | | |
| 3 | 9 | SCL.1 | IN | 1 | 5 || 6 | | | 0v | | |
| 4 | 7 | GPIO. 7 | IN | 1 | 7 || 8 | 1 | ALT0 | TxD | 15 | 14 |
| | | 0v | | | 9 || 10 | 1 | ALT0 | RxD | 16 | 15 |
| 17 | 0 | GPIO. 0 | IN | 0 | 11 || 12 | 0 | IN | GPIO. 1 | 1 | 18 |
| 27 | 2 | GPIO. 2 | IN | 0 | 13 || 14 | | | 0v | | |
| 22 | 3 | GPIO. 3 | IN | 0 | 15 || 16 | 1 | IN | GPIO. 4 | 4 | 23 |
| | | 3.3v | | | 17 || 18 | 1 | IN | GPIO. 5 | 5 | 24 |
| 10 | 12 | MOSI | IN | 0 | 19 || 20 | | | 0v | | |
| 9 | 13 | MISO | IN | 0 | 21 || 22 | 0 | IN | GPIO. 6 | 6 | 25 |
| 11 | 14 | SCLK | IN | 0 | 23 || 24 | 1 | IN | CE0 | 10 | 8 |
| | | 0v | | | 25 || 26 | 1 | IN | CE1 | 11 | 7 |
+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| 28 | 17 | GPIO.17 | IN | 0 | 51 || 52 | 0 | IN | GPIO.18 | 18 | 29 |
| 30 | 19 | GPIO.19 | IN | 0 | 53 || 54 | 0 | IN | GPIO.20 | 20 | 31 |
+-----+-----+---------+------+---+----++----+---+------+---------+-----+-----+
| BCM | wPi | Name | Mode | V | Physical | V | Mode | Name | wPi | BCM |
+-----+-----+---------+------+---+-Model B2-+---+------+---------+-----+-----+
Los pines 8, GPIO14, TXD deben estar en modo ALT0 (este pin es la entrada de datos en serie UART)
El pin 10, GPIO15, RXD, debe estar en modo ALT0 (este pin es la salida de datos en serie UART)
Su línea de comando de arranque debería verse así:
pi@raspberrypi:~ $ cat /boot/cmdline.txt
dwc_otg.lpm_enable=0 root=/dev/mmcblk0p7 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
REINICIAR el PI
Detenga el proceso que se adjunta a / dev / ttyAMA0
Debido a que la versión del sistema operativo jessie ha cambiado para usar systemd, el archivo / etc / initab ya no existe. Debe usar el comando systemd systemctl para detener getty.target que se adjunta a / dev / ttyAMA0
pi@raspberrypi:~ $ sudo systemctl stop getty.target
NOTA: Esto lanzará ttyAMA0 hasta que reinicie / reinicie la frambuesa pi. Después de reiniciar, tendrá que dar el comando nuevamente.
init
y prescindirsystemd
de Raspbian "Jessie", de la misma manera que se podría cambiar a la versión anterior "Wheezy"systemd
. Sin embargo, sólo los arqueólogos volver a visitar esta cuestión desde el futuro es probable que quieren llegado a ese extremo y en su lugar la mayoría tendrá que encontrar-cómo configurar un cambio permanente que sobrevivirá un reinicio ...gpio readall
=>gpio: command not found
en Raspian 4.14 se puede resolver: raspberrypi.stackexchange.com/questions/54116/…