2013-07-11 15 views
1

我想在Ubuntu中使用Mag Stripe讀取器讀取RS232串行端口。我有一個USB工作正常(ID技術)。但是我想讓神經元讀者也能工作。我一般不熟悉的串口通信,但與節點串行我寫了一個簡單的應用程序,坐着等待設備:使用節點序列讀取串行端口

node tester.js /dev/ttyS0 

比吐出從讀卡器輸出。 USB ID-Tech閱讀器非常有效,但是當我插入串口設備時,我什麼也得不到。我也不確定如何判斷它使用的是哪個串行端口。有沒有更好的工具來「探測」Ubuntu中的串行端口,並找出Mag Reader正在使用哪一個?

UPDATE

周圍似乎研究所用的工具有:

sudo cat /dev/ttyS0 

我遇到的問題是哪個端口連接到設備上,做上述上ttyS0,1,2 ,3什麼也不做,並應該從設備中輸出一些輸出。但是我不知道這是否需要先運行:

sudo inputattach -dump /dev/ttyS0 

這只是掛在光標,我想嘗試和鍵盤類型的讀卡器,但同樣的問題,只是掛起。來自dmesg |的輸出grep ttyS顯示啓用的端口:

[ 1.906700] serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A 
[ 1.927250] serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A 
[ 1.947758] serial8250: ttyS2 at I/O 0x3e8 (irq = 4) is a 16550A 
[ 1.968273] serial8250: ttyS3 at I/O 0x2e8 (irq = 3) is a 16550A 
[ 1.990199] 00:04: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A 
[ 2.010770] 00:05: ttyS1 at I/O 0x2f8 (irq = 3) is a 16550A 
[ 2.031335] 00:06: ttyS2 at I/O 0x3e8 (irq = 5) is a 16550A 
[ 2.051952] 00:07: ttyS3 at I/O 0x2e8 (irq = 11) is a 16550A 
+0

您是否有什麼能夠真正驗證串口上的電氣活動,例如帶有LED的加密狗,或者您知道其他設備實際上是否可以通過串行連接正常工作?測試將是一個簡單的事情發送一些字節到端口和看燈閃爍。 –

+0

謝謝,所以在Linux中,我假設我只是寫入串行端口,並期望在設備上有一些反饋? – Michael

+0

是的,假設您可以以可見的方式這樣做。例如每半秒鐘提升和降低RTS或CTS系列(過去一段時間)。 –

回答

0

插入設備後,您可以運行此節點代碼並檢查每個端口的信息。你可能會認識一些東西,那就是你要找的港口。

var serialport = require("serialport"); 

serialport.list(function (err, ports) { 
    ports.forEach(function(port) { 

     console.log("pnpId: " + port.pnpId); 
     console.log("manufacturer: " + port.manufacturer); 
     console.log("comName: " + port.comName); 
     console.log("serialNumber: " + port.serialNumber); 
     console.log("vendorId: " + port.vendorId); 
     console.log("productId: " + port.productId); 
    }); 
}); 

然後您連接使用:

var myPort = new SerialPort("/dev/ttyACM0", { // replace ttyACM0 with the right port on your computer 
    baudrate: 115200, 
    parser: serialport.parsers.readline("\r\n") 
}); 

希望它能幫助!

+0

你可以看看[這個](https://stackoverflow.com/questions/45936310/serialport-module-in-node-js-works-only-if-minicom-is-active-on-the-端口)問題?將不勝感激任何指針... – Sam