2016-05-09 33 views
0

我有一個覆盆子pi呼叫監測系統。它在樹莓派2上運行良好。但是,它不是在串口上傳輸數據。我的簡單程序是樹莓pi3串行通信不起作用

import serial 
port=serial.Serial("/dev/ttyAMA0",baudrate=10417,timeout=.05) 
address=1 
port.write(chr(address)) 

它無法接收數據。可能會有一些配置問題。我編輯/boot/cmdline.txt文件

sudo nano /boot/cmdline.txt 

除去控制檯= ttyserial1,115200 kgdboc = ttyserial1,115200。

,但我沒有得到的/ etc/inittab文件中註釋掉T0:23:重生:/ sbin目錄/蓋蒂-L ttyAMA0 115200 VT100

sudo nano /boot/config.txt 

添加在最後的頁面

dtoverlay=pi3-disable-bt 
enable_uart=1 

禁用藍牙調制解調器

sudo systemctl disable hciuart  

我必須做更多的接收串口數據什麼樣的配置?

回答

0

假設你已經爲串口設置了通常的設置,就像你之前在pi2上工作一樣,那麼可能情況是,因爲rapberry pi 3已經改變了一些東西,ttyAMA0現在指的是連接到藍牙的串行端口。舊的串口現在稱爲ttyS0。所以如果你有一個RPI3,無論你在哪裏看到下面的「ttyAMA0」,你應該閱讀「ttyS0」。

所以......

import serial 
port=serial.Serial("/dev/ttyS0",baudrate=10417,timeout=.05) 
address=1 
port.write(chr(address)) 
+0

使用,而不是從無限循環AMA0控制出口S0。但沒有有效的數據傳輸或接收。有沒有其他設置s0?或其他設置與pi3有關? – user007

+0

尊敬的@ user007,您是否解決了ttyAMA0上的無限循環問題,因爲現在,我有同樣的問題無法讀取任何東西。 – user3751548