孫萬(wàn)麟
(昌吉學(xué)院 物理系,新疆 昌吉 831100)
Proteus軟件是英國(guó) Labcenter Electronics公司開(kāi)發(fā)的一款EDA軟件,近年來(lái),因Proteus軟件具有虛擬儀器豐富、實(shí)驗(yàn)周期短、硬件投入少、實(shí)驗(yàn)過(guò)程損耗小、仿真過(guò)程直觀形象以及與實(shí)際工程項(xiàng)目設(shè)計(jì)非常相似等優(yōu)點(diǎn),我國(guó)有好多高校已建立Proteus虛擬仿真實(shí)驗(yàn)室,比如香港理工大學(xué)、中山大學(xué)、華南理工大學(xué)、哈爾濱工程大學(xué)等眾多院校,這些高校已將Proteus軟件作為教學(xué)輔助工具,不僅用于單片機(jī)、模擬電路和數(shù)字電路等課程實(shí)踐教學(xué),而且也應(yīng)用于學(xué)生課程設(shè)計(jì)、畢業(yè)設(shè)計(jì)以及各類競(jìng)賽設(shè)計(jì)與仿真[1-4]??傊?,Proteus軟件由于虛擬儀器豐富和仿真過(guò)程生動(dòng)直觀,受到眾多學(xué)者的青睞。
眾所周知,技術(shù)類課程是我國(guó)各大工科院校的專業(yè)核心必修課,比如“微機(jī)原理與接口技術(shù)”“單片機(jī)原理及應(yīng)用”“DSP技術(shù)與嵌入式系統(tǒng)”等課程,它們包含很多抽象專業(yè)術(shù)語(yǔ)和復(fù)雜系統(tǒng)構(gòu)成,學(xué)生要完全理解老師在課堂上講授內(nèi)容很難,因而在實(shí)驗(yàn)、實(shí)訓(xùn)以及課程設(shè)計(jì)等實(shí)踐過(guò)程中會(huì)碰到很多困惑。鑒于此,本文探究將Proteus仿真軟件應(yīng)用于“微機(jī)原理與接口技術(shù)”和“DSP技術(shù)與嵌入式系統(tǒng)”課程中,通過(guò)電路圖設(shè)計(jì)及其仿真,幫助學(xué)生更好理解有些難點(diǎn),并提高學(xué)生動(dòng)手設(shè)計(jì)能力。
Proteus軟件是由Labcenter UK開(kāi)發(fā)的EDA軟件仿真平臺(tái),擁有豐富的虛擬儀器儀表,是PCB板設(shè)計(jì)的集合,并兼有電路分析和系統(tǒng)仿真功能。因其優(yōu)良的兼容性,可連接多種外圍設(shè)備和虛擬儀器,并能實(shí)現(xiàn)各類控制芯片與其外電路的仿真,工作界面是一個(gè)標(biāo)準(zhǔn)的Windows界面,其界面及簡(jiǎn)要功能介紹如圖1所示。
圖1 Proteus工作界面
電路設(shè)計(jì):以8086作為主控芯片,采用8255A作為數(shù)據(jù)輸入輸出接口,由8255A數(shù)據(jù)端口PA采集一組開(kāi)關(guān)S0—S7狀態(tài)信息,再將采集狀態(tài)信息通過(guò)8255A數(shù)據(jù)端口PB傳送至8只發(fā)光二極管D0—D7進(jìn)行輸出顯示。根據(jù)8255A選擇控制字寄存器工作原理,若開(kāi)關(guān)閉合時(shí),與其對(duì)應(yīng)二極管就會(huì)導(dǎo)通點(diǎn)亮;若開(kāi)關(guān)斷開(kāi)時(shí),與其對(duì)應(yīng)二極管不導(dǎo)通熄滅。另外,采用數(shù)據(jù)端口PC7驅(qū)動(dòng)一只發(fā)光二極管作為8255A正常工作狀態(tài)檢測(cè)提示。
仿真方法:本文采用微機(jī)原理常用Emu8086軟件進(jìn)行電路源程序代碼調(diào)試和編譯,本電路軟件設(shè)計(jì)流程圖[5-6]如圖2所示。
圖2 軟件設(shè)計(jì)流程圖
利用Emu8086軟件將調(diào)試無(wú)誤源程序代碼編譯生成.com可執(zhí)行文件,因8086微機(jī)芯片只能加載和關(guān)聯(lián).com文件,再利用Proteus軟件設(shè)計(jì)并繪制電路圖,然后雙擊Proteus電路圖中8086主控芯片,將各參數(shù)屬性和大小必須與所設(shè)計(jì)電路器件設(shè)置一致,參數(shù)配置如圖3所示。
圖3 參數(shù)配置
同時(shí)將生成的.com文件加載到8086芯片中。點(diǎn)擊Proteus全速運(yùn)行按鈕,仿真結(jié)果如圖4所示。
圖4 仿真結(jié)果圖
圖中,PC7端口所接發(fā)光二極管點(diǎn)亮,證明8255A各個(gè)接口正常工作;此時(shí)是開(kāi)關(guān)從上往下依次是S2、S4、S7閉合,所以對(duì)應(yīng)發(fā)光二極管D2、D4、D7點(diǎn)亮。當(dāng)然,改變開(kāi)關(guān)狀態(tài)(閉合和斷開(kāi)),相應(yīng)二極管會(huì)出現(xiàn)亮滅狀態(tài)改變,實(shí)現(xiàn)電路設(shè)計(jì)功能,證實(shí)電路設(shè)計(jì)正確。
電路設(shè)計(jì):采用AT89C51單片機(jī)作為主控芯片,行驅(qū)動(dòng)模塊采用74HC573,列驅(qū)動(dòng)模塊采用3-8譯碼器74HC138,將4個(gè)8×8LED點(diǎn)陣組合為一個(gè)16×16LED點(diǎn)陣屏。在I/O接口方面,使用單片機(jī)P1口接點(diǎn)陣屏行驅(qū)動(dòng),單片機(jī)P2口接點(diǎn)陣屏列驅(qū)動(dòng),這里采用P0口接上拉電阻,以保證信息傳輸穩(wěn)定性。該設(shè)計(jì)實(shí)驗(yàn)功能是編程并實(shí)現(xiàn)LED點(diǎn)陣屏上循環(huán)顯示“昌”“吉”“學(xué)”“院”4個(gè)漢字。
仿真方法:本文采用單片機(jī)常用Keilc51軟件進(jìn)行電路源程序代碼調(diào)試和編譯,本電路軟件設(shè)計(jì)流程圖[7-16]如圖5所示。
圖5 軟件設(shè)計(jì)流程圖
并利用Keilc51軟件將調(diào)試無(wú)誤源程序代碼編譯生成.hex可執(zhí)行文件,因AT89C51單片機(jī)芯片只能加載和關(guān)聯(lián).hex文件,再利用Proteus軟件設(shè)計(jì)并繪制電路圖,然后雙擊Proteus電路圖中AT89C51主控芯片,將各參數(shù)屬性和大小必須與所設(shè)計(jì)電路器件設(shè)置一致,參數(shù)配置如圖6所示。
圖6 參數(shù)配置
同時(shí)將生成的.hex文件加載到AT89C51芯片中。點(diǎn)擊Proteus全速運(yùn)行按鈕,仿真結(jié)果如圖7所示。
圖7 仿真結(jié)果圖
分別為“昌”“吉”“學(xué)”“院”4個(gè)漢字循環(huán)顯示,符合電路設(shè)計(jì)要求。
電路設(shè)計(jì):采用DSP常用TMS320F28027PT芯片作為主控芯片,使用I/O口GPIO接16個(gè)LED發(fā)光二極管,為了使16個(gè)LED發(fā)光二極管穩(wěn)定輸出,采用每個(gè)發(fā)光二極管接一個(gè)保護(hù)電阻,由X1、X2引腳、石英晶體、電容等構(gòu)成10MHZ自激振蕩電路,由TRST引腳、彈性按鍵等構(gòu)成復(fù)位電路,設(shè)計(jì)LED亮滅間隔為0.5秒。該設(shè)計(jì)實(shí)驗(yàn)要求實(shí)現(xiàn)16個(gè)LED發(fā)光二極管花樣流水顯示,具體花樣是:16個(gè)LED發(fā)光二極管首先從左至右依次點(diǎn)亮,緊接著從右至左依次點(diǎn)亮,其次從中間向兩端依次點(diǎn)亮,緊接著從兩端向中間點(diǎn)亮,然后再?gòu)念^開(kāi)始,依次循環(huán)往復(fù)運(yùn)行下去。
仿真方法:本文采用DSP常用CCS軟件進(jìn)行電路源程序代碼調(diào)試和編譯,本電路軟件設(shè)計(jì)流程圖[17-23]如圖8所示。
圖8 軟件設(shè)計(jì)流程圖
并利用CCS軟件將調(diào)試無(wú)誤源程序代碼編譯生成.cof可執(zhí)行文件,因TMS320F28027PT芯片只能加載和關(guān)聯(lián).cof文件,再利用Proteus軟件設(shè)計(jì)并繪制花樣流水燈電路圖,然后雙擊Proteus電路圖中TMS320F28027PT主控芯片,將各參數(shù)屬性和大小必須與所設(shè)計(jì)電路器件設(shè)置一致,參數(shù)配置如圖9所示。
圖9 參數(shù)配置
同時(shí)將生成的.cof文件加載到TMS320F28027PT芯片中。點(diǎn)擊Proteus全速運(yùn)行按鈕,16個(gè)LED發(fā)光二極管按照實(shí)驗(yàn)設(shè)計(jì)要求花樣流水顯示,其中流水燈從中間向兩端依次點(diǎn)亮的仿真結(jié)果如圖10所示。
圖10 仿真結(jié)果圖
本文探究了將Proteus仿真軟件應(yīng)用于“微機(jī)原理與接口技術(shù)”、“單片機(jī)原理及應(yīng)用”和“DSP技術(shù)與嵌入式系統(tǒng)”等課程電路設(shè)計(jì)及仿真中,并給出了具體虛擬仿真方法。研究表明,利用Proteus軟件進(jìn)行技術(shù)類課程電路設(shè)計(jì)及仿真,不但易于理解電路組成和各個(gè)芯片引腳排列、功能等,而且能夠直觀地看到外圍電路運(yùn)行情況。