树莓派2板上有一个UART(UART0:GPIO 14和15)用于串行通信。
我想知道,在这种情况下,只有GPIO必须使用&而不是USB端口,如果可以自定义/编程其他GPIO用作额外的UART。
如果是,如何?
感谢
没问题!有许多具有多个虚拟/软件UART的解决方案。只需在谷歌上搜索它们,但使用PIPIO库可能会更好。这里还有另外两个例子。
下面是一个Python脚本示例(使用PIPIO库)。
#!/usr/bin/python
import sys
import time
import difflib
import pigpio
RX=18
try:
pi = pigpio.pi()
pi.set_mode(RX, pigpio.INPUT)
pi.bb_serial_read_open(RX, 9600, 8)
print "DATA - SOFTWARE SERIAL:"
while 1:
(count, data) = pi.bb_serial_read(RX)
if count:
print data
time.sleep(1)
except:
pi.bb_serial_read_close(RX)
pi.stop()
IMO比特敲打树莓派是黑暗的,充满了恐怖。你可以使用USB串行设备,但如果你在Windows IoT Core上,它们绝对必须是基于FTDI的。(基于Linux,我相信你没有这个限制)
复盆子Pi上的单个UART真的很缺乏。我的解决方案是使用Arduino Nano来控制我的传感器——每个Nano一个传感器。复盆子Pi通过USB迷你电缆通过USB串行通信与每个Nano进行通信。
您还可以使用CP2102 USB转TTL/串行模块。将其连接到外部设备,然后将CP2102连接到Pi上的USB端口。我还没有尝试过,但预计在下周左右。
以下是我找到的几个FTDI USB串行设备。
USB到6线头
USB到DB9