Raspberry Pi 3b +串行通信在控制台和硬件上均出现问题

时间:2018-11-05 11:32:03

标签: serial-port raspberry-pi3

我对树莓派有点陌生,但我想我设法启用了某种串行通信,但由于似乎同时使用控制台和调制解调器通信而感到困惑。

下面是我的代码:

import time
import serial

ser = serial.Serial(
    port = '/dev/ttyAMA0',
    baudrate = 9600,
    parity = serial.PARITY_NONE,
    stopbits = serial.STOPBITS_ONE,
    bytesize = serial.EIGHTBITS,
    timeout = 1
)

while 1:
    ser.write('AT'+'\r')
    time.sleep(1)
    print(ser.read(10))

下面是我得到的输出:

Linux 9 raspberrypi AT
OK
Login incorrectraspberrypi login:
AT
OK

Login incorrectraspberrypi login:
AT
OK
Login incorrectraspberrypi login:
AT
OK

AT
OK

Login incorrectraspberrypi login:
Traceback (most recent call last):
  File "sim808AT.py", line 17, in <module>
    print(ser.read(10))
  File "/usr/lib..." read
    'device reports readiness to read but returned no data'

然后断开连接...

1 个答案:

答案 0 :(得分:0)

AFAIK,设置不带控制台的串口:

还原对串行所做的任何更改(\ boot \ cmdline.txt,\ boot \ config.txt等中的任何其他行)。注意:可以使用MicroSloth操作系统访问启动分区!

运行sudo raspi-config。 在“ 5个接口选项”->“ P6串行”下,为外壳选择“否”,为端口硬件选择“是”。

重新启动并测试。

顺便说一句,硬件串行现在是ttyAMA0而不是ttyS0。

我实际上发现您的帖子正在寻找自己的解决方案;我在使用最新的Pi映像进行串行处理时遇到问题(2018年10月),但是我离题了;)