摘 要:本文介紹了單片機與PC之間串口通信的軟件仿真,涉及到的軟件有Proteus、Keil、虛擬串口軟件VSPD和串口調(diào)試助手SSCOM3.2軟件。
關鍵詞:單片機;串口通信;VSPD;仿真
隨著計算機技術尤其是單片微型機技術的發(fā)展,人們已越來越多地采用單片機來對一些工業(yè)控制系統(tǒng)中如溫度、流量和壓力等參數(shù)進行檢測和控制。PC機具有強大的監(jiān)控和管理功能,而單片機具有快速及靈活的控制特點,因此串口通信調(diào)試是系統(tǒng)設計時必不可少的。但現(xiàn)在的PC機上很多沒有9針的串口,本文介紹的串口通信仿真完全脫離硬件環(huán)境,僅在一臺PC上就可以完成,并且對PC的硬件配置也沒有要求,因此對于系統(tǒng)設計的串口調(diào)試提供了方便。
1 利用VSPD虛擬串口
VSPD(Virtual Serial Port Driver)可在不占用真實物理串口的情況下,在主機上模擬出一對串口虛擬串口,其在功能以及使用上與真實物理串口是一致的,并通過“軟連接”技術替代串口數(shù)據(jù)線將虛擬的一對串口互連,從而模擬實際工作中“雙串口+串口數(shù)據(jù)線”的環(huán)境,互相收發(fā)數(shù)據(jù),并且創(chuàng)建的串口對的數(shù)量是不受限制的。VSPD創(chuàng)建的虛擬串口,本設計中使用COM4和COM5。
2 Proteus硬件電路設計
Proteus是英國Labcenter electronics公司出版的EDA工具軟件。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機及外圍器件。它是目前最好的仿真單片機及外圍器件的工具。本設計中Proteus中建立的單片機串口通信仿真電路如圖2所示。
Proteus電路本身內(nèi)部集成了電源、晶振還有復位電路,電源也接好了,所以單片機AT89C51不需要另外添加。AT89C51運行的時鐘頻率以其屬性框中的“Clock Frequency”為準。設置AT89C51的屬性,加載編譯好的.HEX文件(由Keil軟件完成.HEX的生成),時鐘頻率設為11.0592M。
COMPIM在Component Mode中可以找到,其內(nèi)部自帶RS-232和TTL電平轉換功能,因此不需要再使用MAX232這樣的電平轉換芯片。單片機連接到COMPIM的線路如圖2所示,注意:AT89C51的TXD與其TXD相連,RXD與其RXD相連。
COMPIM的屬性框中Physical port選擇COM4,波特率:9600,校驗位:None,數(shù)據(jù)位:8,停止位:l。
COMPIM下方的元件是虛擬終端(VIRTUAL TERMINAL),在Virtual Instruments Mode中,可以實時觀察仿真結果。它與單片機的連接:AT89C51的TXD與其RXD相連,RXD與其TXD相連。
3 程序下載至單片機
本設計是從單片機連續(xù)向PC機發(fā)送字符數(shù)據(jù)A至Z。將編好的C語言文件在Keil軟件中創(chuàng)建HEX文件,以備Proteus中AT89C51灌入。
4 串口調(diào)試軟件SSCOM3.2的設置
打開串口調(diào)試助手,修改串口為COM5(與COMPIM中的Physical port:COM4必須成對),波特率:9600,校驗位:None,數(shù)據(jù)位:8,停止位:1,然后打開串口。
5 運行仿真
運行Proteus中仿真按鈕,虛擬終端顯示收到數(shù)據(jù),串口調(diào)試助手中也顯示收到數(shù)據(jù)。成功的界面如圖2所示。
6 小結
本文介紹的串行通信純軟件仿真技術,成本低,效率高,代替了以往的需要的硬件電路、串口通信接口等才能實現(xiàn)的調(diào)試工作,因此性價比非常高。
[參考文獻]
[1]彭芬.《單片機C語言應用技術》[M].西安電子科技大學出版社,2012.2.
[2]Proteus軟件使用手冊.
[3]Keil軟件使用說明.