簡體   English   中英

帶樹莓派的RS232

[英]RS232 with raspberry pi

我的問題是在樹莓派和其他硬件之間進行串行通信。 該硬件的推薦連接如手冊中所示,我必須連接RX,TX,GND,RS和CS。

但是在樹莓派上,我們只有RX,TX,因此我將RX和TX以及Pi的GNG連接到了該硬件。 我修改了Pi的參數,如鏈接所示: 這里

然后,我制作了一個簡單的python程序,用於初始化通信並發送數據。 這是代碼:import serial,os port = serial.Serial(“ / dev / ttyAMA0”,baudrate = 9600)print('port is ok')port.write('Command')rcv = port.read(10)打印rcv

在pi上運行此代碼后,我得到了('port is ok'),但問題是該硬件無法正確響應該命令,而作為響應,它通常使我正常,但我得到了一些額外的特征(可讀的)。 這是編碼問題嗎? 有人可以幫忙嗎?

您需要檢查其他硬件上的波特率,或確保接收到的消息的長度=打印消息的長度。

在串行通信中,有兩點要小心:

  • 如果鏈路是雙向的,則這兩個設備必須使用相同的波特率。
  • 在串行上寫入數據時,必須在write()之后刷新數據。 請參考這里 在很多情況下,不需要刷新,但是當兩個不同的設備必須進行通信時,它可以解鎖通信。

如果效率不高,請嘗試使用相同的conf設置其他設備(無流量控制等)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM