我想讀取和寫入串行連接/dev/ttyUSB0
,波特率爲115200
。 [它可能也是相關的,它使用PL2303
芯片組]有沒有辦法在Python 2.7中,通過print
和raw_input
陳述?以半實時(<0.1秒延遲)在Python中讀取/寫入串行數據
0
A
回答
1
您正在尋找的術語是波特率。 115200波特意味着串行端口能夠每秒傳輸115200位(:讀取BITS)。這是一個相當普遍的波特率,所以只要你的USB UART能跟上就不應該成爲問題。我有一個超過19200年不可靠的超級舊FTDI USB UART,但這是唯一一個讓我悲傷的人。糟糕的電纜的症狀被破壞,在響應和傳輸中缺少字符。
我不認爲你可以使用print或raw_input進行串行處理。如果可以的話,我看不到任何理由,因爲這不是他們的目的。你想要使用的是pyserial模塊:https://github.com/pyserial/pyserial
我有這個項目https://github.com/PyramidTechnologies/Python-RS-232在Raspberry Pi上運行就好了。
ser = serial.Serial(
port=portname,
baudrate=115200,
bytesize=serial.SEVENBITS,
parity=serial.PARITY_EVEN,
stopbits=serial.STOPBITS_ONE
)
一定要設置爲任何目標設備講
然後進行讀寫,設置一些這樣的流量控制:
// msg could be a list of numbers. e.g. [4, 56, 34, 213]
ser.write(msg)
// Experiment with delay before reading if you are not getting
// a response right away.
time.sleep(0.1)
// Keep reading from port while there is data to read
out = ''
while ser.inWaiting() > 0:
out += ser.read(1)
if out == '':
continue
// out is now the received bytes
// https://pythonhosted.org/pyserial/pyserial_api.html#serial.Serial.read
實施要點
相關問題
- 1. 延遲與0.1秒的持續時間
- 2. 如何在串行端口寫入之間執行250毫秒的延遲?
- 3. 從TCPClient讀取時延遲
- 4. 在異步FIFO中寫入延遲後讀取?
- 5. cProfile - 保留Python對象中的數據/延遲寫入磁盤
- 6. 延遲讀取TCP套接字數據
- 7. 再現與Java編寫的寫入後讀取延遲插座
- 8. 時間步長從UTC秒數的0.1秒到半小時(30分鐘)
- 9. 如何在寫入時管理寫入和讀取串行端口取決於讀取數據
- 10. 延遲連續寫入串口
- 11. 用於低延遲讀取和寫入的持久性策略
- 12. Vbscript延遲5秒
- 13. 從輸入中讀取數據在Smalltalk中逐行寫入流
- 14. python串行寫入超時
- 15. 在Firebase中讀取和寫入數據
- 16. Twisted Producer延遲寫入
- 17. C#延遲寫入XML
- 18. 延遲寫入SQL Server
- 19. YAML流延遲讀取
- 20. Cassandra和讀取延遲
- 21. 在jQuery中延遲加載數據2秒ajax
- 22. 延遲時間爲200毫秒的實時視頻流
- 23. 在Python中讀取和寫入大量數據
- 24. Python串行,可以寫但不能讀
- 25. 如何實時讀取/寫入原始音頻數據(使用python)?
- 26. Servlets什麼時候讀取或寫入實際數據
- 27. 在C中延遲了x微秒pic18f
- 28. 在Python中添加multipe時間延遲
- 29. SlidingWindows可以在python apache beam中使用半秒時間嗎?
- 30. Python誤讀串行數據