解析虛擬串口和電腦自帶串口(COM1)的區(qū)別
虛擬串口能實(shí)現(xiàn)這樣的功能嗎?
最近在為公司開發(fā)一套系統(tǒng),其中用到了一個串口設(shè)備,暫且不論具體設(shè)備是什么用途。但與此設(shè)備的通訊不是通過物理串口,而是通過虛擬串口進(jìn)行的----
現(xiàn)在一真實(shí)的物理串口com1,但是現(xiàn)在已被一個設(shè)備A占用了,實(shí)際應(yīng)用可能需要別的設(shè)備也從這個串口讀數(shù)據(jù),例如:設(shè)備B需要從com1口讀數(shù)據(jù),那么有什么方法可以實(shí)現(xiàn)呢
是不是用一個虛擬串口的程序,虛擬出一個串口出來,例如:com3,com3和com1關(guān)聯(lián),這樣讀取com3的內(nèi)容和從COM1中讀到的數(shù)據(jù)內(nèi)容是一樣的,那設(shè)備A和設(shè)備B可以分別讀取com1和com3的內(nèi)容,但其實(shí)數(shù)據(jù)內(nèi)容都是一樣的,都是從物理串口com1進(jìn)來的..
解答:虛擬的就是虛擬的,是用來調(diào)試程序用的。完全靠程序來模擬,和已有的com1是不共用任何東西的。使用起來也不會產(chǎn)生任何沖突。
我們知道早期的PC機(jī)都具有一到兩個物理串口,COM1/COM2 或 RS232。然后所謂虛擬串口通信,就是在操作系統(tǒng)中安裝一個驅(qū)動軟件,讓操作系統(tǒng)以為有一個物理上的串口能夠操作和通信,但是這個串口在物理上并不存 在,這個虛擬串口的數(shù)據(jù)來源可以是來自網(wǎng)絡(luò)上的,或者來自文件的,或者來自其他物理設(shè)備然后被軟件轉(zhuǎn)發(fā)到這個虛擬的串口上的。
虛擬串口是用操作系統(tǒng)的虛擬驅(qū)動技術(shù)產(chǎn)生的串口(COM口),相對于計(jì)算機(jī)本身的硬件串口(COM1等)來說虛擬串口并不對應(yīng)一個物理上的串口,但是計(jì)算機(jī)應(yīng)用軟件可以像硬件串口一樣地使用虛擬串口,對于串口軟件來說虛擬串口和硬件串口并沒有區(qū)別。
虛擬串口是靠硬件來實(shí)現(xiàn)的,現(xiàn)在市場上有很多協(xié)議轉(zhuǎn)換類的產(chǎn)品。比如:usb轉(zhuǎn)232/485串口,網(wǎng)口轉(zhuǎn)串口,光纖轉(zhuǎn)串口,PCI轉(zhuǎn)232/485等設(shè)備。
小結(jié):通過使用虛擬串口的方式可以很方便的調(diào)試串口信息,不用在設(shè)備儀器邊上進(jìn)行實(shí)時調(diào)試,還可以方便的模擬一些可能會出現(xiàn)錯誤的數(shù)據(jù)格式進(jìn)行調(diào)試。
文章版權(quán)歸西部工控xbgk所有,未經(jīng)許可不得轉(zhuǎn)載。