我想獲得一個python腳本寫入與pyserial串行端口,以node.js使用serialport2。python字節()在serialport2與node.js
我對於python中的bytes()
非常困惑,難怪任何人都可以幫我一把嗎?
蟒蛇:
ser.write(bytes(chr(160))
ser.write(bytes(chr(157))
讓我怎麼做到這一點的Node.js的?
node.js中使用的serialport2位於here。
我想獲得一個python腳本寫入與pyserial串行端口,以node.js使用serialport2。python字節()在serialport2與node.js
我對於python中的bytes()
非常困惑,難怪任何人都可以幫我一把嗎?
蟒蛇:
ser.write(bytes(chr(160))
ser.write(bytes(chr(157))
讓我怎麼做到這一點的Node.js的?
node.js中使用的serialport2位於here。
寫(緩衝液,[回調])
寫數據到串口。
參數
buffer
- 這可以是一個節點緩衝器對象或字符串。callback(err, byteWritten)
- 寫入字節後調用回調函數。
所以,你可以給一個字符串對象或Buffer對象作爲參數。一個Buffer object可能會做你想要的(發送整數值):
var buffer = new Buffer([ 8, 6, 7, 5, 3, 0, 9]);
這將初始化緩衝區這個數組的內容。請記住,數組的內容 是表示字節的整數。
爲您的數據,這將是:
var buffer = new Buffer([160, 157]);
順便說一句,你不需要做任何特殊的鑄造用Python與PySerial。從PySerial API documentation:
寫(數據)
- 參數:
data
- 要發送的數據。- 返回:寫入的字節數。
- 引發SerialTimeoutException:如果爲端口配置了寫入超時並且超出時間。
將字符串數據寫入端口。
版本2.5中的更改:當 可用(Python 2.6及更高版本)和str時,接受字節和bytearray的實例。
請注意「版本2.5中已更改」的說明。
也許您會搜索String.fromCharCode(code)
將字符代碼轉換爲JS中的字符串。
與serialport2嘗試這種情況:
port.write(String.fromCharCode(160, 157));
我很確定在Python代碼中不需要bytes()強制轉換。無論如何,你是否問如何使用serialport2將數據讀入node.js? – ford
我想通過node.js中的serialport2寫入串口,謝謝。 – utp