Linux下PCI轉串列埠卡及USB轉串列埠

JasLi發表於2008-05-08

公司賣給客戶兩臺互為備份的加密機和一臺伺服器,加密機使用串列埠而伺服器只有一個串列埠。儘管加密機也可以用TCP,但現在程式不支援。要修改程式,工作量比較大,於是想到用轉換器。

[@more@]

下面從網上找到的參考,自己小改了一下兒。

一、PCI轉串列埠卡安裝型號NetMos Nm9835CV
1、插入PCI卡到主機
2、啟動Linux,開啟終端
3、輸入命令:#setserial /dev/ttyS0 -a (COM-1)
顯示內容:/dev/ttyS0, Line 0, UART: 16550A, Port: 0x3f8, irq: 4
Baud_base: 115200, clos_delay: 50, divisor: 0
closing_wait: 3000, closing_wait2: infinite
Flags: spd_normal skip_test
4、輸入命令:#setserial /dev/ttyS2 -a (COM-3)
顯示內容:/dev/ttyS2, Line 2, UART: unknown, Port: 0x3e8, irq: 4
Baud_base: 115200, clos_delay: 50, divisor: 0
closing_wait: 3000, closing_wait2: infinite
Flags: spd_normal skip_test
第3、4步操作的目的主要是對主機自帶串列埠及PCI擴充套件串列埠的區別。區別在於4顯示的內容中UART:未unknow。不過若您檢測這一步的時候UART為16550A而不是unknow,證明你的系統已經認識了擴充套件的串列埠,不需要進一步設定,直接跳入第8步測試就可以了。
5、需要輸入命令檢視一下您當前PCI檢測的狀態,以便對擴充套件串列埠進行設定
#more /proc/pci
會顯示出一堆的資訊,不要因為看不懂而嚇壞了。只要看到類似於這個PCI的資訊,比如:PCI communication。 。 。或者Board with Nm9835CV part。 。 。可能就是這個卡了,主要看看它的終端是多少,即irq多少及分配的地址是多少。例如:(不一定完全一樣)
Board with Nm9835CV part irq:11
I/O at 0xc000 [0xc001] serial port 1
I/O at 0xc400 [0xc401] serial port 2
I/O at 0xc800 [0xc801] not used
I/O at 0xd000 [0xd001] not used
I/O at 0xd400 [0xd401] not used
I/O at 0xd800 [0xd801] not used
6、知道PCI擴充套件卡的終端為11串列埠1地址為0xc000串列埠2地址為0xc400..
就可以設定擴充套件的串列埠了。輸入命令:
setserial /dev/ttyS2 port 0xc000 UART 16550A
irq 11 Baud_base 115200
另一個串列埠也類似的這麼操作
7、設定完畢後,就可以看看設定的情況了,輸入第2步的命令看看,UART是否就是16500A而不是unknow了,如果是16500A恭喜,可能設定好咯,如果不是那就再檢查一下吧。
8、設定好了後是不是需要測試一下是否能夠通訊呢?最好的辦法是兩臺pc相連。如果pc為windows作業系統就用超級終端,是linux呢就用minicom吧
9、裝有linux的機器,首先需要設定一下監聽的串列埠引數,輸入命令
#minicom -s
進入介面後有個框彈出來,如果你還認識點英文單詞的話,就回知道選擇哪個的。應該是第三個吧,串列埠設定。
將第一行更改為/dev/ttyS2
波特率也更改您所需要的。
更改完後儲存,儲存的那個選單應該是save ... df1
最後exit
10、在另外一臺機器傳送資料,這臺機器minicom介面就能夠收到資訊了,成功後覺得挺有意思。另外不要把兩個COM順序弄翻了,如果弄錯了哪個是COM3 COM4測試可就不靈便咯。

二、USB-Serial (usb轉串列埠)用的是UTS4009P usb to 4 port rs232 adapter(db9pin) cable(black)
1、將裝置u口插入pc
2、輸入#lsmod先看看能否檢測到這個裝置,就看有沒有pl2303字眼可以了。如果有,則不需要再裝驅動。如果沒有則需要驅動程式,那您就按照步驟安裝吧,安裝完畢後再輸入這個命令瞧瞧,是否安裝成功。
3、檢測步驟,檢測步驟與第一的8條以後內容類似,只是需要主意的是設定串列埠裝置的時候可能不是ttyS2了,有可能是ttyUSB0之類。最好能看看您/dev下面的檔案。就因為開始我將這點忽略了,總是測試不通,著急了兩天呢。最後終於搞定了。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/60325/viewspace-1003621/,如需轉載,請註明出處,否則將追究法律責任。

相關文章