Saya ingin mengakses port serial oleh beberapa file skrip BASH via / dev / ttyAMA0.
Bagaimana cara mengkonfigurasi pengaturan port serial seperti kecepatan, paritas genap / ganjil?
Anda bisa menggunakan
stty -F /dev/ttyAMA0 9600
untuk mengatur baud rate ke 9600 dari baris perintah. Coba man stty
lihat opsi lain.
Untuk mengkonfigurasi UART ttyAMA0 untuk aplikasi Anda (seperti 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-+---+------+---------+-----+-----+
Pin 8, GPIO14, TXD harus dalam mode ALT0 (pin ini adalah input data serial UART)
Pin 10, GPIO15, RXD, harus dalam mode ALT0 (pin ini adalah output data serial UART)
Baris perintah boot Anda akan terlihat seperti ini:
pi@raspberrypi:~ $ cat /boot/cmdline.txt
dwc_otg.lpm_enable=0 root=/dev/mmcblk0p7 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait
REBOOT PI
Hentikan proses yang dilampirkan ke / dev / ttyAMA0
Karena jessie versi OS telah berubah untuk menggunakan systemd, file / etc / initab tidak ada lagi. Anda harus menggunakan perintah systemd systemctl untuk menghentikan getty.target yang dilampirkan ke / dev / ttyAMA0
pi@raspberrypi:~ $ sudo systemctl stop getty.target
CATATAN: Ini akan melepaskan ttyAMA0 sampai Anda mem-boot ulang / memulai ulang raspberry pi. Setelah reboot, Anda harus memberikan perintah lagi.
init
dan melakukannya tanpasystemd
pada Raspbian "Jessie" - dengan cara yang sama seperti versi pendahulu "Wheezy" dapat dialihkan kesystemd
. Namun, hanya para arkeolog yang meninjau kembali pertanyaan ini dari masa depan yang mungkin ingin mencapai ekstrem itu dan sebaliknya sebagian besar akan ingin mencari tahu bagaimana mengatur perubahan permanen yang akan bertahan setelah reboot ...gpio readall
=>gpio: command not found
pada Raspian 4.14 dapat diselesaikan: raspberrypi.stackexchange.com/questions/54116/…