單片機(jī)原理與應(yīng)用設(shè)計(C51編程+Proteus仿真)(第4版) 課件 第4章 開發(fā)與仿真工具_(dá)第1頁
單片機(jī)原理與應(yīng)用設(shè)計(C51編程+Proteus仿真)(第4版) 課件 第4章 開發(fā)與仿真工具_(dá)第2頁
單片機(jī)原理與應(yīng)用設(shè)計(C51編程+Proteus仿真)(第4版) 課件 第4章 開發(fā)與仿真工具_(dá)第3頁
單片機(jī)原理與應(yīng)用設(shè)計(C51編程+Proteus仿真)(第4版) 課件 第4章 開發(fā)與仿真工具_(dá)第4頁
單片機(jī)原理與應(yīng)用設(shè)計(C51編程+Proteus仿真)(第4版) 課件 第4章 開發(fā)與仿真工具_(dá)第5頁
已閱讀5頁,還剩99頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

第4章開發(fā)與仿真工具

1【內(nèi)容概要】

本章介紹軟件開發(fā)工具KeilC51與虛擬仿真工具Proteus的基本特性與使用方法。通過本章學(xué)習(xí),讀者應(yīng)初步了解如何運用Keil軟件進(jìn)行軟件調(diào)試,掌握使用Proteus來進(jìn)行硬件線路搭建和單片機(jī)系統(tǒng)虛擬仿真以及軟硬件聯(lián)調(diào)的基本方法。KeilC51是用于8051單片機(jī)的C51語言編程的集成開發(fā)環(huán)境,它是目前8051單片機(jī)應(yīng)用開發(fā)中的最優(yōu)秀的軟件開發(fā)工具之一。4.1KeilC51的使用4.1.1KeilC51簡介KeilC51(以KeiluVision5為例)由德國Keilsoftware公司開發(fā),它集編輯、編譯、仿真等功能于一體,具有強(qiáng)大的軟件調(diào)試功能,生成的程序代碼運行速度快,所需的存儲器空間小,完全可與匯編語言相媲美,是目前8051單片機(jī)應(yīng)用開發(fā)中的最受歡迎的軟件開發(fā)工具之一。KeilC51集成了文件編輯處理、編譯鏈接、項目(Project)管理窗口、工具引用、仿真軟件模擬器以及Monitor51硬件目標(biāo)調(diào)試器等多種功能,可在KeilC51開發(fā)環(huán)境中極為簡便地進(jìn)行操作。4.1.2基本操作1.軟件安裝與啟動KeilC51的安裝,同大多數(shù)軟件的安裝一樣,根據(jù)提示進(jìn)行。安裝完畢后,在桌面上會出現(xiàn)KeilC51軟件的快捷圖標(biāo)。單擊該快捷圖標(biāo),則啟動該軟件,出現(xiàn)如圖4-1所示的KeilC51界面,圖4-1中標(biāo)出了KeilC51界面各窗口的名稱。圖4-1Keil軟件開發(fā)環(huán)境界面2.創(chuàng)建項目

編寫一個新的應(yīng)用程序前,首先要建立項目。KeilC51用項目管理的方法把一個程序設(shè)計中所需要用到的、互相關(guān)聯(lián)的程序鏈接到同一項目中。這樣,打開一個項目時,所需要的關(guān)聯(lián)程序也都跟著進(jìn)入了調(diào)試窗口,從而方便用戶對項目中各個程序的編寫、調(diào)試和存儲。項目管理便于區(qū)分不同項目中用到的程序文件和庫文件,非常容易管理。因此,編寫程序前,需要首先創(chuàng)建一個新的項目,操作如下(1)在圖4-1所示的編輯界面下,單擊菜單欄中的【Project】,出現(xiàn)下拉菜單,再單擊選中的“NewuVisionProject…”,如圖4-2所示。圖4-2新建項目菜單(2)單擊“NewuVisionProject…”選項后,就會彈出“CreateNewProject”對話框,如圖4-3所示。在“文件名(N)”中輸入一個項目的名稱,保存后的文件擴(kuò)展名為“.uvproj”,即項目文件的擴(kuò)展名,以后直接單擊此文件就可打開先前建立的項目。圖4-3“CreateNewProject”窗口在“文件名(N)”窗口中輸入新建項目文件的名字后,單擊“保存”按鈕即可。(3)選擇單片機(jī),單擊“保存”按鈕后,會彈出圖4-4所示“SelectDeviceforTarget‘Target1’”(選擇單片機(jī))窗口,按照提示選擇相應(yīng)的單片機(jī)。這里選擇的是“AT89C51”(對于AT89S51,也是選擇AT89C51)。(4)單擊“確定”按鈕后,會出現(xiàn)如圖4-5所示的對話框。如果需要復(fù)制啟動代碼到新建的項目,選擇單擊“是”按鈕,會出現(xiàn)圖4-6所示的界面,如選擇單擊“否”按鈕,圖4-6中的啟動代碼項“SARTUP.A51”不會出現(xiàn),這時新的項目已經(jīng)創(chuàng)建完畢。圖4-4“SelectDeviceforTarget1”窗口圖4-5

是否復(fù)制啟動代碼到工程對話框圖4-6

完成項目創(chuàng)建的界面4.1.3添加用戶源程序文件新的項目文件創(chuàng)建完成后,就需要將用戶源程序文件添加到這個項目中。添加用戶源程序文件通常有兩種方式:一種是新建文件,另一種是添加到已創(chuàng)建的文件中。1.新建文件(1)單擊圖4-1中快捷按鈕,這時會出現(xiàn)新建文件的窗口,如圖4-7所示。在這個窗口中會出現(xiàn)一個空白的文件編輯畫面,用戶可在這里輸入編寫的程序源代碼。圖4-7創(chuàng)建新文件界面(2)單擊圖4-1中快捷按鈕

,保存用戶程序文件,這時會彈出“SaveAs”對話框,如圖4-8所示。(3)在圖4-8所示的“SaveAs”對話框中,在“保存”下拉框中選擇新文件的保存目錄,這樣就將這個新文件與剛才建立的項目保存在同一個文件夾下,然后在“文件名(N)”窗口中輸入新建文件的名字“流水燈”,則文件名的擴(kuò)展名應(yīng)為“.c”。完成上述步驟后單擊“保存(S)”按鈕,此時新文件就創(chuàng)建完成了。這個新文件還需添加到剛才創(chuàng)建的項目中,操作步驟與下面的“添加已創(chuàng)建文件”步驟相同。圖4-8“SaveAs”對話框2.添加已創(chuàng)建文件(1)在項目窗口(圖4-1)中,右鍵單擊“SourceGroup1”,在彈出的列表中選擇“AddnewitemtoGroup‘SourceGroup1’”選項。(2)完成上述操作后,在該窗口中選擇要添加的文件,這里只有剛剛建立的文件“流水燈.c”,選中這個文件后,單擊“Add”按鈕,再單擊“Close”按鈕,文件就添加完成了,這時用戶程序文件“流水燈.c”已經(jīng)出現(xiàn)在“SourceGroup1”目錄下了,如圖4-9所示。圖4-9

添加文件界面4.1.4程序的編譯與調(diào)試上文中在文件編輯窗口中建立了文件“流水燈.c,并且將該文件添加到了項目中,此時還需對程序進(jìn)行編譯和調(diào)試,最終生成可執(zhí)行的.hex文件,具體步驟如下。1.程序編譯單擊快捷按鈕中的

,對“流水燈.c”文件編譯,在圖4-10中的輸出窗口會出現(xiàn)提示信息。從輸出窗口中的提示信息可以看到,程序中有錯誤,認(rèn)真檢查程序錯誤并改正(將程序中的tep改為temp),改正后再次單擊

按鈕進(jìn)行編譯,直至提示信息顯示沒有錯誤為止,如圖4-11所示。圖4-10

文件編譯提示信息圖4-13

提示信息顯示沒有錯誤2.程序調(diào)試程序編譯沒有錯誤后,就可進(jìn)行調(diào)試與仿真。單擊“開始/停止”調(diào)試的快捷按鈕(或在主界面單擊【Debug】菜單中的“Start/StopDebugSession”選項),進(jìn)入程序調(diào)試狀態(tài),如圖4-12所示。圖4-12左面的寄存器窗口給出了常用的寄存器r0~r7和A、B、SP、DPTR、PC、PSW等特殊功能寄存器的值,這些值會隨著程序的執(zhí)行發(fā)生相應(yīng)的變化。在圖4-12存儲器窗口(右下角)的地址欄處輸入“0000”后回車,則可以查看單片機(jī)片內(nèi)程序存儲器的內(nèi)容,單元地址前有“C:”,它表示程序存儲器。如要查看單片機(jī)片內(nèi)數(shù)據(jù)存儲器的內(nèi)容,就在存儲器窗口的地址欄處輸入“d:00”后回車,這樣就可以看到數(shù)據(jù)存儲器的內(nèi)容了。圖4-12

程序調(diào)試界面在圖4-12中出現(xiàn)了一行新增加的用于調(diào)試的快捷命令圖標(biāo),見圖4-13。還有幾個原來就有的用于調(diào)試的快捷圖標(biāo),見圖4-14。

圖4-13

調(diào)試狀態(tài)下的新增加的快捷命令按鈕圖標(biāo)

圖4-14

用于調(diào)試的其他幾個快捷命令按鈕圖標(biāo)在程序調(diào)試狀態(tài)下,可運用快捷按鈕進(jìn)行單步、跟蹤、斷點、全速運行等方式進(jìn)行調(diào)試,也可觀察單片機(jī)資源的狀態(tài),例如程序存儲器、數(shù)據(jù)存儲器、特殊功能寄存器、變量寄存器及I/O端口的狀態(tài)。這些圖標(biāo)大多數(shù)是與菜單欄命令【Debug】下拉菜單中的各項子命令是一一對應(yīng)的,只是快捷按鈕圖標(biāo)要比下拉菜單使用起來更加方便快捷。在程序調(diào)試狀態(tài)下,可運用快捷按鈕進(jìn)行單步、跟蹤、斷點、全速運行等方式進(jìn)行調(diào)試,也可觀察單片機(jī)資源的狀態(tài),例如程序存儲器、數(shù)據(jù)存儲器、特殊功能寄存器、變量寄存器及I/O端口的狀態(tài)。這些圖標(biāo)大多數(shù)是與菜單欄命令【Debug】下拉菜單中的各項子命令是一一對應(yīng)的,只是快捷按鈕圖標(biāo)要比下拉菜單使用起來更加方便快捷。圖4-13和圖4-14常用的快捷按鈕圖標(biāo)的功能簡介如下:4.1.5項目的設(shè)置項目創(chuàng)建后,還需對項目進(jìn)一步設(shè)置。右鍵單擊項目窗口的“Target1”,選擇“OptionsforTarget‘Target1”,見圖4-15,即出現(xiàn)項目設(shè)置對話框,見圖4-16。該對話框下有多個頁面,通常需要設(shè)置的有兩個,一個是Target頁面,另一個是Output頁面,其余設(shè)置取默認(rèn)值就可。圖4-15

項目調(diào)試的選擇圖4-16“OptionsforTarget‘Target1’”窗口Target頁面(1)Xtal(MHz):設(shè)置晶體振蕩器頻率,默認(rèn)值是所選目標(biāo)CPU的最高可用頻率值,可根據(jù)需要重新設(shè)置。該設(shè)置與最終產(chǎn)生的目標(biāo)代碼無關(guān),僅用于軟件模擬調(diào)試時顯示程序執(zhí)行時間。

正確設(shè)置該數(shù)值,可使得顯示時間與實際所用時間一致,一般將其值設(shè)置成與目標(biāo)樣機(jī)所用的頻率相同的值。如果沒必要了解程序執(zhí)行的時間,也可不設(shè)置。(2)MemoryModel下拉列表:設(shè)置RAM的存儲器模式,有3個選項。①Small—所有變量都在單片機(jī)的內(nèi)部RAM中。②Compact—可以使用1頁外部RAM。③Large—可以使用全部外部的擴(kuò)展RAM。(3)CodeRomSize下拉列表:設(shè)置ROM空間的使用,有3個選項。①Small—只使用低于2K的程序空間。②Compact—單個函數(shù)的代碼量不超過2K,整個程序可以使用64K程序空間。③Large—可以使用全部64K程序空間。(4)Useon-chipROM—是否僅使用片內(nèi)ROM選項。注意,選中該項并不會影響最終生成的目標(biāo)代碼量。(5)Operation—操作系統(tǒng)選項。Keil提供了兩種操作系統(tǒng):Rtxtiny和Rtxfull。通常不選操作系統(tǒng),所以選用默認(rèn)項None。(6)off-chipCodMemory—用以確定系統(tǒng)擴(kuò)展的程序存儲器地址范圍。(7)off-chipXdataMemory—用以確定系統(tǒng)擴(kuò)展的數(shù)據(jù)存儲器的地址范圍。上述3個選項必須根據(jù)所用硬件來決定,如果是最小應(yīng)用系統(tǒng),不進(jìn)行任何擴(kuò)展,則按默認(rèn)值設(shè)置。2.Output頁面點擊“OptionsforTarget‘Target1’”窗口的“Output”選項,會出現(xiàn)Output頁面,如圖4-17所示。(1)CreateHEXFile—生成可執(zhí)行文件代碼文件。選擇此項后即可生成單片機(jī)可以運行的二進(jìn)制文件(.hex格式文件),文件的擴(kuò)展名為.hex。(2)SelectFolderforobjects—選擇最終的目標(biāo)文件所在的文件夾,默認(rèn)與項目文件在同一文件夾中,通常選默認(rèn)。(3)NameofExecutable—用于指定最終生成的目標(biāo)文件的名字,默認(rèn)與項目文件相同,通常選默認(rèn)。圖4-17Output頁面(4)Debuginformation—將會產(chǎn)生調(diào)試信息,這些信息用于調(diào)試,如果需要對程序進(jìn)行調(diào)試,應(yīng)選中該項。其他選項選默認(rèn)即可。完成上述設(shè)置后,就可在程序編譯時,單擊快捷按鈕,此時會產(chǎn)生如圖4-18的提示信息。該信息中說明程序占用片內(nèi)RAM共71字節(jié),片外RAM共0字節(jié),圖4-20hex文件生成的提示信息占用程序存儲器共71字節(jié)。最后生成的.hex文件名為“流水燈.hex”,至此,整個程序編譯過程就結(jié)束了,生成的.hex文件就可在后面介紹的Proteus環(huán)境下進(jìn)行虛擬仿真時,裝入單片機(jī)運行。下面對用于編譯、連接時的3個快捷按鈕、與作簡要說明:(1)按鈕,用于編譯正在操作的文件。(2)用于編譯修改過的文件,并生成相應(yīng)的目標(biāo)程序(.hex文件),供單片機(jī)直接下載。(3)按鈕:用于重新編譯當(dāng)前項目中的所有文件,并生成相應(yīng)的目標(biāo)程序(.hex文件),供單片機(jī)直接下載。主要用在當(dāng)項目文件有改動時,來重建整個項目。因為一個項目不止一個文件,當(dāng)有多個文件時,可用本按鈕進(jìn)行編譯。

上述介紹的對C51語言源程序操作方法與過程,也同樣適用于匯編語言源程序。

注意,如果使用Proteus虛擬仿真,無論使用C51語言編寫,還是匯編語言編寫的源程序都不能直接來用,一定要對該源程序進(jìn)行編譯,最終生成可執(zhí)行的目標(biāo)代碼.hex文件,并加載到Proteus環(huán)境下的虛擬單片機(jī)中,才能進(jìn)行虛擬仿真。4.2

Proteus虛擬仿真工具介紹Proteus是英國LabcenterElectronics公司在1989年推出的完全使用軟件手段來對單片機(jī)應(yīng)用系統(tǒng)進(jìn)行虛擬仿真的軟件工具。4.2.1Proteus簡介

Proteus是目前世界上唯一的支持嵌入式處理器的虛擬仿真平臺,它除了可仿真模擬電路、數(shù)字電路外,還可仿真8051、PIC12/16/18系列、AVR系列、MSP430等各主流系列單片機(jī),以及各種外圍可編程接口芯片。此外,它還支持ARM7、ARM9等型號的嵌入式微處理器的仿真。

有了Proteus的虛擬仿真平臺,因此用戶不需要用戶硬件樣機(jī),就可直接在PC上對單片機(jī)系統(tǒng)進(jìn)行虛擬仿真,將系統(tǒng)的功能及運行過程形象化,可以像焊接好的電路板一樣看到單片機(jī)系統(tǒng)的執(zhí)行效果。

38

Proteus元件庫中具有幾萬種元件模型,因此它可直接對單片機(jī)的各種外圍元件及電路進(jìn)行仿真,如RAM、ROM、總線驅(qū)動器、各種可編程外圍接口芯片、LED數(shù)碼管顯示器、LCD顯示模塊、矩陣式鍵盤以及多種D/A和A/D轉(zhuǎn)換器等。此外還可對RS232總線、I2C總線、SPI總線進(jìn)行動態(tài)仿真。Proteus提供了各種信號源、虛擬仿真儀器,并能對電路原理圖的關(guān)鍵點進(jìn)行虛擬測試。

Proteus提供了豐富的調(diào)試功能。在虛擬仿真中具有全速、單步、設(shè)置斷點等調(diào)試功能,同時,它還可觀察各變量、寄存器的當(dāng)前狀態(tài)。目前,Proteus已在包括劍橋大學(xué)、斯坦福大學(xué)、牛津大學(xué)、加州大學(xué)在內(nèi)的全球數(shù)千所高校以及世界各大研發(fā)公司中得到廣泛應(yīng)用。

盡管Proteus具有開發(fā)效率高,不需要附加的硬件開發(fā)裝置成本等優(yōu)點,但是不能進(jìn)行用戶樣機(jī)硬件的診斷。所以在單片機(jī)系統(tǒng)的設(shè)計開發(fā)中,一般是先在Proteus環(huán)境下繪出系統(tǒng)的硬件原理電路圖,在KeilC51環(huán)境下書寫并編譯程序,然后在Proteus環(huán)境下仿真調(diào)試通過。依照仿真結(jié)果,來完成實際的硬件設(shè)計,把仿真通過的程序代碼通過編程器或在線燒錄到單片機(jī)的程序存儲器中,然后運行程序并觀察用戶樣機(jī)的運行結(jié)果,如有問題,再連接硬件仿真器或直接在線修改程序去分析、調(diào)試。4.2.2ProteusISIS的虛擬仿真

ProteusISIS(智能原理圖輸入)界面是用來繪制單片機(jī)系統(tǒng)的電路原理圖,它還可直接實現(xiàn)單片機(jī)系統(tǒng)的虛擬仿真,可產(chǎn)生聲、光及各種動作等逼真的效果。當(dāng)電路連接無誤后,單擊單片機(jī)芯片載入經(jīng)調(diào)試編譯后生成的.hex文件,單擊仿真運行按鈕,即可檢驗電路硬件及軟件的設(shè)計正確與否。Proteus軟件在PC上安裝完后,打開Proteus8.x軟件,可以看到一個主界面,如圖4-19所示。在主界面的菜單欄中,點擊"NewProject",然后輸入項目名稱、儲存路徑以及進(jìn)行單片機(jī)選擇,還有編譯程序的選擇,從而建立一個新項目(具體過程將在本小節(jié)的最后介紹)。或者點擊4142圖4-19

Proteus的主界面"OpenProject"打開一個已經(jīng)建立的項目,就會出現(xiàn)ProteusISIS原理電路圖繪制界面,如圖4-20所示。整個ISIS界面由原理圖編輯窗口、預(yù)覽窗口、對象選擇窗口、工具箱、主菜單欄、主工具欄等區(qū)域組成。1.ISIS界面的窗口簡介ISIS界面主要有3個窗口:原理圖編輯窗口、預(yù)覽窗口和對象選擇窗口。(1)原理圖編輯窗口原理圖編輯窗口是用來繪制電路原理圖、設(shè)計電路、設(shè)計各種符號模型的區(qū)域,圖4-20所示的方框內(nèi)為可編輯區(qū),器件放置、電路設(shè)置都在此框中完成。43圖4-20Proteus的ISIS界面(2)預(yù)覽窗口

預(yù)覽窗口用來對選中的器件對象進(jìn)行預(yù)覽,同時可實現(xiàn)對原理圖編輯窗口的預(yù)覽,如圖4-21所示。它可顯示兩部分內(nèi)容。

如果單擊某個元件列表中的元件時,預(yù)覽窗口會顯示該元件的符號。

當(dāng)鼠標(biāo)指針落在原理圖窗口時(即放置器件到原理圖編輯窗口后或在原理圖編輯窗口中單擊鼠標(biāo)后),它會顯示整張原理圖的縮略圖,并會顯示一個綠色的方框,方框里面的內(nèi)容就是當(dāng)前原理圖窗口中顯示的內(nèi)容。單擊綠色方框中的某一點,就可拖動鼠標(biāo)來改變綠色方框的位置,從而改變原理圖的可視范圍,最后在綠色方框內(nèi)單擊鼠標(biāo),綠色方框就不再移動,從而將原理圖的可視范圍固定。圖4-20

預(yù)覽窗口調(diào)整原理圖的可視范圍2.主菜單欄

圖4-20最上面一行為主菜單欄,包含如下命令:文件、查看、編輯、工具、設(shè)計、繪圖、源代碼、調(diào)試、庫、模板、系統(tǒng)和幫助。單擊任意菜單命令后,都將彈出其下拉的子菜單命令列表。(1)

文件(File)菜單

文件菜單包括項目的新建設(shè)計、打開設(shè)計和打印等操作,如圖4-23所示。ISIS下的文件主要是設(shè)計文件(DesignFiles),其文件類型為ProteusProject。它包括一個單片機(jī)硬件系統(tǒng)的原理電路圖及其所有信息,用于虛擬仿真。

47

下面介紹文件菜單下的“NewProject(新建設(shè)計)”命令。

單擊【File】→“NewProject”,會出現(xiàn)一張空的A4紙模板。新設(shè)計的文件默認(rèn)名為“UNTITLED.DSN”,本命令會把該設(shè)計以這個名字存入磁盤文件中,文件的其他選項也會使用它作為默認(rèn)名。如果想進(jìn)行新的設(shè)計,需要給該設(shè)計命名,可單擊NewProject.pdsprj→“保存設(shè)計”,輸入新的文件名保存即可。如果想進(jìn)行新的設(shè)計,需要給這個設(shè)計命名,可單擊【文件】→“保存設(shè)計”,輸入新的文件名保存即可。圖4-22器件列表圖4-23文件菜單2.工具(Tools)菜單

工具菜單如圖4-24所示。本菜單中的“自動連線(W)”命令文字前的快捷圖標(biāo)

,在繪制電路原理圖時出現(xiàn),按下該圖標(biāo)即進(jìn)入電路原理圖的自動連線狀態(tài)。3.調(diào)試(Debug)菜單

調(diào)試菜單如圖4-25所示,它主要完成單步運行、斷點設(shè)置等功能。51圖4-24

工具菜單圖4-25

調(diào)試菜單3.主工具欄主工具欄位于主菜單下面,以圖標(biāo)形式給出,欄中共有42個快捷圖標(biāo)按鈕:52每一個圖標(biāo)按鈕都對應(yīng)一個具體的菜單命令,主要目的是為了快捷方便地使用這些命令。圖標(biāo)分為4組,簡要介紹快捷圖標(biāo)命令的功能。535455564.工具箱圖4-20中的左側(cè)為工具箱,選擇相應(yīng)的工具箱圖標(biāo)按鈕,系統(tǒng)將提供不同的操作工具。下面介紹工具箱中各圖標(biāo)按鈕對應(yīng)的功能。(1)模型工具欄各圖標(biāo)的功能。5758595.元件列表如圖4-26所示,器件列表用于挑選器件、終端接口、信號發(fā)生器、仿真圖表等。挑選器件時,單擊“P”快捷圖標(biāo),這時會打開挑選器件的對話框,在對話框中的“關(guān)鍵字”里面輸入要檢索的器件的關(guān)鍵詞,例如要選擇使用AT89C51,就可以直接輸入。輸入后能夠在中間的“結(jié)果”欄里面看到搜索的器件的結(jié)果。在對話框的右側(cè),還能夠看到選擇的器件的仿真模型和PCB參數(shù)。選擇了器件AT89C51后,雙擊AT89C51,該器件就會在左側(cè)的器件列表中顯示,以后再用到該器件時,只需在器件列表中選擇即可。60圖4-26

器件列表界面4.2.3Proteus的各種虛擬仿真調(diào)試工具Proteus提供了多種虛擬仿真工具,以檢查設(shè)計的正確性,為單片機(jī)系統(tǒng)的電路設(shè)計、分析以及軟硬件聯(lián)調(diào)測試帶來極大的方便。1.虛擬信號源ProteusISIS為用戶提供了各種類型的虛擬激勵信號源,并允許用戶對其參數(shù)進(jìn)行設(shè)置。單擊工具箱中的快捷圖標(biāo)

,就會出現(xiàn)如圖4-27所示的各種類型的激勵信號源的名稱列表以及選擇的正弦波信號源,在預(yù)覽窗口中顯示的是正弦波信號源符號。圖4-27名稱列表中各符號所對應(yīng)的激勵信號源,如表4-1所示。圖4-27

各種激勵信號源表4-1 各種激勵信號源2.

虛擬儀器單擊工具箱中的快捷按鈕

,可列出Proteus所有的虛擬儀器名稱,如圖4-28所示。65圖4-28

虛擬儀器名稱列表圖4-28中的名稱列表中所對應(yīng)的虛擬儀器名稱,如表4-2所示。表4-2各種符號對應(yīng)的虛擬儀器下面簡要介紹在單片機(jī)應(yīng)用系統(tǒng)調(diào)試中常用的幾種虛擬儀器。1.虛擬終端虛擬終端的原理圖符號如圖4-29所示。在調(diào)試異步串行通信時使用。虛擬終端共有4個接線端,其中RXD為數(shù)據(jù)接收端,TXD為數(shù)據(jù)發(fā)送端,RTS為請求發(fā)送信號,CTS為清除傳送,是對RTS的響應(yīng)信號。圖4-29虛擬終端的原理圖符號

圖4-30為單片機(jī)與上位機(jī)(PC)之間進(jìn)行串行通信,使用虛擬終端就可免去PC的仿真模型,直接由虛擬終端VT1、VT2顯示出經(jīng)RS232串行接口模型與單片機(jī)之間異步發(fā)送或接收數(shù)據(jù)的情況。

VT1顯示的數(shù)據(jù)表示了單片機(jī)經(jīng)串口發(fā)給PC的數(shù)據(jù),VT2顯示的數(shù)據(jù)表示了PC經(jīng)RS232接口模型接收到的數(shù)據(jù),從而省去了PC的串口模型。圖4-30

單片機(jī)與PC之間串行通信的虛擬終端

虛擬終端在運行仿真時會彈出一個仿真界面,當(dāng)PC向單片機(jī)發(fā)送數(shù)據(jù)時,可以和虛擬鍵盤關(guān)聯(lián),用戶可從虛擬鍵盤經(jīng)虛擬終端輸入數(shù)據(jù);當(dāng)PC接收到單片機(jī)發(fā)送來的數(shù)據(jù)后,虛擬終端相當(dāng)于一個顯示屏,會顯示相應(yīng)信息。(2)I2C調(diào)試器圖4-28中的虛擬儀器名稱列表中的“I2CDEBUGGER”就是I2C調(diào)試器,原理圖符號如圖4-31所示。I2C調(diào)試器允許用戶監(jiān)測I2C接口總線,可以查看I2C總線發(fā)送的數(shù)據(jù),同時也可作為從器件向I2C總線發(fā)送數(shù)據(jù)。I2C調(diào)試器有3個接線端。SDA:雙向數(shù)據(jù)線。SCL:時鐘線,雙向。TRIG:觸發(fā)輸入,能使存儲序列被連續(xù)地放置到輸出隊列中。圖4-31I2C調(diào)試器的原理圖符號圖4-32所示為單片機(jī)通過控制I2C總線向帶有I2C接口的存儲器芯片AT24C02(即圖中的FM24C02F)進(jìn)行讀寫,可利用I2C調(diào)試器來觀察I2C總線數(shù)據(jù)傳送的過程。啟動仿真,鼠標(biāo)右鍵單擊I2C調(diào)試器,出現(xiàn)I2C調(diào)試窗口,如圖4-34所示。單擊其中的“+”符號,還能把I2C總線傳送數(shù)據(jù)的細(xì)節(jié)展現(xiàn)出來。I2C總線傳送數(shù)據(jù)時,采用了特別的序列語句,出現(xiàn)在數(shù)據(jù)監(jiān)測窗口中。圖4-32單片機(jī)讀寫帶有I2C接口的存儲器AT24C02的電路原理圖

由圖4-33可見,使用I2C調(diào)試器可非常方便地觀察I2C總線上傳輸?shù)臄?shù)據(jù),非常容易手動控制I2C總線發(fā)送的數(shù)據(jù),為I2C總線的單片機(jī)系統(tǒng)提供了十分有效的仿真調(diào)試手段。圖4-33I2C調(diào)試窗口及單片機(jī)向AT24C02寫入和讀出的數(shù)據(jù)(3)SPI調(diào)試器SPI調(diào)試器允許用戶查看沿SPI總線發(fā)送和接收的數(shù)據(jù)。圖4-34所示為SPI調(diào)試器的原理圖符號。SPI調(diào)試器共有5個接線端:DIN:接收數(shù)據(jù)端。DOUT:輸出數(shù)據(jù)端。SCK:時鐘端。 :從模式選擇端,從模式時此端必須為低電平才能使終端響應(yīng);當(dāng)工作在主模式下,而且數(shù)據(jù)正在傳輸時此端才為低電平。TRIG:輸入端,能把下一個存儲序列放到SPI的輸出序列中。

SPI調(diào)試器的窗口如圖4-34所示,它與I2C調(diào)試窗口是相似的。圖4-34SPI調(diào)試器的原理圖符號圖4-35SPI調(diào)試器的窗口4.電壓表和電流表ProteusVSM提供了4種電表,如圖4-36所示,分別是DCVoltmeter(直流電壓表)、DCAmmeter(直流電流表)、ACVoltmeter(交流電壓表)和ACAmmeter(交流電流表)??煞謩e把4種電表放置到原理圖編輯窗口中。圖4-364種電表的原理圖符號4.2.4虛擬設(shè)計仿真舉例

Proteus環(huán)境下的一個單片機(jī)系統(tǒng)的原理電路虛擬設(shè)計與仿真需要3個步驟。(1)ProteusISIS環(huán)境下的電路原理圖設(shè)計。(2)在KeilC51平臺上進(jìn)行源程序的輸入、編譯與調(diào)試,并最終生成目標(biāo)代碼文件(*.hex文件)。(3)調(diào)試與仿真,在Proteus環(huán)境下將目標(biāo)代碼文件(*.hex文件)加載到單片機(jī)中,并對系統(tǒng)進(jìn)行虛擬仿真。下面以“流水燈”的設(shè)計為例,介紹如何使用Proteus。771.新建或打開一個設(shè)計文件(1)建立新設(shè)計文件單擊主菜單的“NewProject”選項新建一個項目,會彈出圖4-37所示的“新建項目”窗口。點擊“Next”,出現(xiàn)一個新的界面后,單擊要選的“DEFAULT”選項,再單擊“NEXT”按鈕,選用系統(tǒng)默認(rèn)的模板,即建立一個該模板的空白文件。(2)保存文件。建立了一個新的文件后,第一次保存該文件時,選擇【File】→“SaveProjectAs”選項,這樣就會以新的文件名保存該設(shè)計文件。如果不是第一次保存,可直接單擊“保存”快捷按鈕即可。圖4-37

“新建項目”窗口2.選擇需要的元件到元件列表

電路設(shè)計前,要把設(shè)計“流水燈”電路原理圖中需要的器件列出,如表4-3所示。然后根據(jù)表4-3選擇器件到器件列表中。觀察圖4-21,左側(cè)的器件列表中沒有一個器件,單擊左側(cè)工具欄中的按鈕,再單擊器件選擇按鈕就會出現(xiàn)“PickDevices”窗口,在窗口的“關(guān)鍵字”欄中,輸入“AT89C51”,此時在“結(jié)果”欄中出現(xiàn)“器件搜索結(jié)果列表”,并在右側(cè)出現(xiàn)“器件預(yù)覽”和“器件PCB預(yù)覽”,如圖4-41所示。在“器件搜索結(jié)果列表”中雙擊所需要的器件“AT89C51”,這時在主窗口的器件列表中就會添加該器件。用同樣的方法可將表4-3中所需要選擇的其他器件也添加到器件列表中。

所有器件選取完畢后,單擊窗口右下方的“確定”按鈕,即可關(guān)閉“PickDevices”窗口,回到主界面進(jìn)行原理圖繪制。8081表4-3

流水燈所需元件列表3.放置元件并連接電路1.器件的放置、調(diào)整與編輯

①元件的放置。單擊元件列表中所需要放置的元件,然后將鼠標(biāo)移至原理圖編輯窗口中單擊一下,此時就會在鼠標(biāo)指針處有一個紅顏色的元件,移動鼠標(biāo)選擇合適的位置,單擊一下左鍵,此時該元件就被放置在原理圖窗口了。例如選擇放置單片機(jī)AT89C51到原理圖編輯窗口,具體步驟如圖4-38所示。若要刪除已放置的元件,用鼠標(biāo)左鍵單擊該元件,然后按Delete鍵即可刪除。如果進(jìn)行了誤刪除操作,可以單擊恢復(fù)快捷按鈕恢復(fù)。一個單片機(jī)系統(tǒng)電路原理圖設(shè)計,除了元件還需要各種終端,如電源、地等,單擊主工具欄中的快捷按鈕,就會出現(xiàn)各種終端列表。單擊元件終端中的某一項,上方的窗口中就會出現(xiàn)該終端的符號,如圖4-39(a)所示。圖4-38

元件放置的操作步驟此時可選擇合適的終端放置到電路原理圖編輯窗口中去,放置的方法與元件放置的方法相同。圖4-39(b)為圖4-39(a)列表中各項對應(yīng)的終端符號。根據(jù)上述介紹,設(shè)計者可將所有的元件和終端放置到原理圖編輯窗口中去。圖4-39

終端列表及終端符號②

元件位置的調(diào)整。

改變元件在原理圖中的位置,用鼠標(biāo)左鍵單擊需調(diào)整位置的元件,元件變?yōu)榧t顏色,移動鼠標(biāo)指針到合適的位置,再釋放鼠標(biāo)即可。

調(diào)整元件的角度,用右鍵單擊需調(diào)整的元件,會出現(xiàn)圖4-40所示的菜單,操作菜單中的命令選項即可。③

元件參數(shù)設(shè)置。在需要設(shè)置參數(shù)的元件雙擊鼠標(biāo)左鍵,就會出現(xiàn)“編輯元件”窗口。下面以單片機(jī)AT89C51為例,此時雙擊AT89C51,出現(xiàn)“編輯元件”窗口。設(shè)計者可根據(jù)設(shè)計的需要,在需要設(shè)置參數(shù)的元件雙擊鼠標(biāo)左鍵,進(jìn)入“編輯元件”窗口自行完成原理圖中各元件的參數(shù)設(shè)置。圖4-40調(diào)整元件角度的命令選項(2)電路元件的連接

兩元件間繪制導(dǎo)線。在元件模式快捷按鈕與自動布線器快捷按鈕按下時,兩個元件導(dǎo)線的連接方法是:先單擊第一個元件的連接點,移動鼠標(biāo),此時會在連接點引出一根導(dǎo)線。如果想要自動繪出直線路徑,只需單擊另一個連接點。如果設(shè)計者想自己決定走線路徑,只需在希望的拐點處單擊鼠標(biāo)左鍵。需要注意的是,拐點處導(dǎo)線的走線只能是直角。在自動布線器快捷按鈕松開時,導(dǎo)線可按任意角度走線,只需要在希望的拐點處單擊鼠標(biāo)左鍵,把鼠標(biāo)指針拉向目標(biāo)點,拐點處導(dǎo)線的走向只取決于鼠標(biāo)指針的拖動。

連接導(dǎo)線連接的圓點。單擊連接點按鈕,會在兩根導(dǎo)線連接處或兩根導(dǎo)線交叉處添加一個圓點,表示它們是連接的。

導(dǎo)線位置的調(diào)整。對某一繪制的導(dǎo)線,要想進(jìn)行位置的調(diào)整,可用鼠標(biāo)左鍵單擊導(dǎo)線,導(dǎo)線兩端各有一個小黑方塊,單擊右鍵出現(xiàn)菜單,單擊“拖曳對象”,即可拖曳導(dǎo)線到指定的位置,也可進(jìn)行旋轉(zhuǎn),然后單擊導(dǎo)線,這就完成了導(dǎo)線位置的調(diào)整。

繪制總線與總線分支。

總線繪制:單擊工具欄的圖標(biāo)按鈕,移動鼠標(biāo)到繪制總線的起始位置,單擊鼠標(biāo)左鍵,便可繪制出一條總線。如想要總線出現(xiàn)不是90°角的轉(zhuǎn)折,此時自動布線器快捷按鈕應(yīng)當(dāng)松開,總線即可按任意角度走線,只需要在希望的拐點處單擊鼠標(biāo)左鍵,把鼠標(biāo)指針拉向目標(biāo)點,在總線的終點處雙擊鼠標(biāo)左鍵,即結(jié)束總線的繪制。

總線分支繪制:總線繪制完后,有時還需繪制總線分支。為使電路圖顯得專業(yè)和美觀,通常要把總線分支畫成與總線成45°角的相互平行的斜線,如圖4-41所示。注意,此時一定要把自動布線器快捷按鈕松開,總線分支走向只取決于鼠標(biāo)指針的拖動。

對于圖4-41所示的總線分支的繪制,先在AT89C51的P0口右側(cè)畫一條總線,然后再畫總線分支。在元件模式快捷按鈕

按下且自動布線器快捷按鈕

松開時,導(dǎo)線可按任意角度走線。先單擊第一個元件的連接點,然后移動鼠標(biāo)指針,在希望的拐點處單擊鼠標(biāo)左鍵,最后向上移動鼠標(biāo)指針,在與總線成45°角相交時單擊鼠標(biāo)左鍵確認(rèn),這樣就完成了一條總線分支的繪制。而其他總線分支的繪制只需在其他總線的起始點雙擊鼠標(biāo)左鍵,不斷復(fù)制即可。例如,繪制P0.1引腳至總線的分支,只要把鼠標(biāo)指針放置在P0.1引腳口的圖4-41

總線與總線分支及線標(biāo)位置,則會出現(xiàn)一個紅色小方框,雙擊鼠標(biāo)左鍵,自動完成像P0.0引腳到總線的連線,這樣可依次完成所有總線分支的繪制。在繪制多條平行線時也可采用這種畫法。

放置線標(biāo)簽。從圖4-41

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論