一,虛擬串口
虛擬串口是計算機通過軟件模擬的串口,當其它設(shè)計軟件使用到串口的時候,可以通過調(diào)用虛擬串口仿真模擬,以查看所設(shè)計的正確性。首先要安裝虛擬串口設(shè)置的軟件,網(wǎng)上有很多設(shè)置虛擬串口的軟件,我用的是VSPD,可試用1個月,試用期過后,該軟件將不能使用,但不用擔心,所設(shè)置的虛擬串口不會消失,可以繼續(xù)使用。
設(shè)置界面:
我設(shè)置的是COM3和COM4,軟件只能成對設(shè)置,主要是因為通信時,一方可以監(jiān)視另一方,如果僅設(shè)置1個虛擬串口的話,如你用COM3發(fā)送接收數(shù)據(jù),但發(fā)送了什么接收到什么,你無法驗證其正確與來源。這是人家編寫軟件的高明之處。軟件設(shè)置時將所設(shè)置的兩個虛擬串口對接,這樣就可實現(xiàn)發(fā)送與接收的監(jiān)視。從設(shè)備管理器中可以看到
兩個虛擬串口對接方式:
這樣可以用串口調(diào)試助手調(diào)試串口通信了,從下圖可以看到COM3發(fā)送的數(shù)據(jù)到達了COM4的接收區(qū)域,COM4發(fā)送的數(shù)據(jù)到達了COM3的接收區(qū)域,從而實現(xiàn)了COM3與COM4之間的互聯(lián)互通。
到這虛擬串口已經(jīng)設(shè)置好,對其它設(shè)計軟件而言,虛擬串口和普通串口沒有區(qū)別,如串口調(diào)試助手對虛擬串口的使用和普通串口的使用方法一樣。
二,虛擬串口在Proteus中的使用
下一步介紹一下虛擬串口在Proteus中的使用,更準確的應該說是“串口在Proteus中的使用”,只不過我們用軟件實現(xiàn)仿真,虛擬串口在這使用的比較頻繁。
先在Proteus中將環(huán)境建立起來,很簡單,先需要兩個元器件就可以建立連接VIRTUAL TERMINAL和COMPIM,如圖VIRTUAL TERMINAL的TXD與COMPIM的TXD相連,RXD與RXD相連,后面有圖分析為什么這樣相連:
VIRTUAL TERMINAL是串口監(jiān)視儀器,可以通過它將數(shù)據(jù)線上的符合RS232協(xié)議的波形捕捉到,并顯示出來,也可以往數(shù)據(jù)線上發(fā)送RS232協(xié)議的波形;COMPIM為串口元件,可設(shè)置占用計算機上哪一個串口,可以是“實際串口”,也可以是“虛擬串口”,對Proteus而言,是分不清虛擬串口還是實際串口的。下一步就要設(shè)置通信速率以及通信格式了,在屬性框中實現(xiàn)設(shè)置相同的就行了。這樣就可實現(xiàn)數(shù)據(jù)的通信了。圖為本人的VIRTUAL TERMINAL和COMPIM的設(shè)置:
下一步就是實現(xiàn)Proteus與串口調(diào)試助手之間的通信了。在VIRTUAL TERMINAL中可直接鍵盤輸入想要發(fā)送的數(shù)據(jù),但界面中無任何顯示,可以通過串口調(diào)試助手看到相應的輸入數(shù)據(jù)。
這樣的的話即實現(xiàn)數(shù)據(jù)從Proteus中傳送到串口調(diào)試助手中了,其相應的數(shù)據(jù)流向關(guān)系為
現(xiàn)在大家知道為什么在Proteus中VIRTUAL TERMINAL的TXD與COMPIM的TXD相連接,而RXD與RXD相連接的原因了吧。
三,在Proteus中實現(xiàn)單片機的串口調(diào)試功能
這個做起來就比較簡單了,我編寫了一個工作在9600bps的8051的串口程序,程序的功能就是將串口接收到的數(shù)據(jù)發(fā)送出來,Proteus中的連線為:
數(shù)據(jù)傳輸?shù)膱D示為:
這樣就模擬實現(xiàn)了單片機與串口之間的通信,可以實現(xiàn)兩者之間的仿真設(shè)計。同樣實現(xiàn)該通信的數(shù)據(jù)流為:
四,總結(jié)
以上為虛擬串口的設(shè)置以及在Proteus中的使用過程,將過程寫下來與大家相互學習,同時利用網(wǎng)絡(luò)的服務(wù)器永久保留下來,方便自己查閱。