林偉 蔡丹鳳
摘 要:嵌入式系統(tǒng)的課程教學(xué)難,學(xué)生學(xué)習(xí)易受阻,硬件設(shè)施繁雜,導(dǎo)致了教學(xué)過(guò)程中出現(xiàn)很多問(wèn)題。為此,我們?cè)诮虒W(xué)環(huán)節(jié)引入Proteus軟件。Proteus軟件不僅可以在課堂教學(xué)中進(jìn)行演示,也可在實(shí)驗(yàn)教學(xué)和課程設(shè)計(jì)中對(duì)電子電路進(jìn)行驗(yàn)證、設(shè)計(jì),綜合不同階段的學(xué)習(xí),提高學(xué)生的動(dòng)手能力,逐步掌握硬件系統(tǒng)設(shè)計(jì);通過(guò)Proteus軟件的動(dòng)態(tài)仿真,學(xué)生可以更加快速有效地排查電路中故障錯(cuò)誤,提高學(xué)習(xí)效率。在教學(xué)中引入Proteus軟件對(duì)于教學(xué)成果和成本方面,具有較高的推廣價(jià)值。
關(guān)鍵詞:Proteus;嵌入式系統(tǒng);實(shí)驗(yàn);動(dòng)態(tài)仿真
1概述
現(xiàn)代電子電路設(shè)計(jì)已經(jīng)進(jìn)入電子設(shè)計(jì)自動(dòng)化時(shí)代,電路仿真是電子設(shè)計(jì)自動(dòng)化中的一項(xiàng)重要技術(shù),可以廣泛應(yīng)用于電子產(chǎn)品的分析、設(shè)計(jì)、檢測(cè)、改造和技術(shù)革新等方面。嵌入式系統(tǒng)是以計(jì)算機(jī)體系結(jié)構(gòu)、計(jì)算機(jī)軟件以及其他相關(guān)電子技術(shù)為基礎(chǔ)上發(fā)展而來(lái)的綜合技術(shù)。嵌入式系統(tǒng)技術(shù)已經(jīng)成為當(dāng)下主流發(fā)展研究技術(shù),對(duì)于具備一定嵌入式開(kāi)發(fā)能力的人才在企業(yè)非常受歡迎。在當(dāng)前高校普遍開(kāi)設(shè)的嵌入式系統(tǒng)課程中,普遍采用的微處理器是8位的單片機(jī)8051,32位ARM7TDMI 核的飛利浦NXP LPC系列和三星S3C44B0芯片。實(shí)驗(yàn)教學(xué)中往往以單片機(jī)作為學(xué)習(xí)嵌入式的基礎(chǔ)鋪墊,待基礎(chǔ)掌握后將ARM7內(nèi)核CPU 作為升級(jí)版單片機(jī)引入,輕松過(guò)渡到ARM平臺(tái)。
傳統(tǒng)的嵌入式系統(tǒng)教學(xué),課堂環(huán)節(jié)基本是在傳統(tǒng)實(shí)驗(yàn)箱基礎(chǔ)上輔助純理論教學(xué),由于硬件的限制,學(xué)生可自主實(shí)驗(yàn)和拓展項(xiàng)目較少,不利于創(chuàng)新學(xué)習(xí)。針對(duì)傳統(tǒng)教學(xué)模式的不足,為此將Proteus軟件引入到課堂教學(xué)、實(shí)驗(yàn)、畢業(yè)設(shè)計(jì)、創(chuàng)新設(shè)計(jì)中,能起到更好的學(xué)習(xí)效果。這種教學(xué)方案將傳統(tǒng)理論教學(xué)可以實(shí)時(shí)的與實(shí)驗(yàn)相結(jié)合,不僅可以提高理論教師的實(shí)踐能力同時(shí)對(duì)于學(xué)生而言,不會(huì)產(chǎn)生對(duì)理論的抵觸心理,更多的實(shí)驗(yàn)自主能夠更好的激發(fā)學(xué)生的學(xué)習(xí)創(chuàng)新興趣。
2 Proteus軟件介紹
Proteus 嵌入式系統(tǒng)仿真與開(kāi)發(fā)平臺(tái)是目前世界上最先進(jìn)、最完整的嵌入式設(shè)計(jì)與仿真平臺(tái),由英國(guó)Labcenter 公司開(kāi)發(fā)的[1]。Proteus主要由ARES、ISIS兩大模塊構(gòu)成,ARES主要用于印刷電路板( PCB) 的設(shè)計(jì)及其電路仿真,ISIS 主要用于原理圖的設(shè)計(jì)并仿真。在Windows 操作系統(tǒng)平臺(tái),可以對(duì)各種模擬器件和集成電路進(jìn)行仿真、分析( SPICE)。
Proteus軟件和其它EDA工具軟件一樣提供仿真功能,但是它還能從原理圖布圖、代碼調(diào)試到單片機(jī)與外圍電路協(xié)同仿真,一鍵切換到PCB 設(shè)計(jì),實(shí)現(xiàn)了真正意義上的從概念到產(chǎn)品的完整設(shè)計(jì)。能夠同時(shí)提供將電路仿真軟件、PCB 設(shè)計(jì)軟件和虛擬模型仿真軟件三大功能的軟件目前只有Proteus軟件;在編譯方面,它也支持IAR、Keil 和MatLAB 等多種編譯。
3 Proteus軟件在實(shí)驗(yàn)教學(xué)中的優(yōu)越性
教師在實(shí)際教學(xué)中通過(guò)Proteus和Keil搭建虛擬實(shí)驗(yàn)平臺(tái),同時(shí)引入仿真平臺(tái),輔以硬件實(shí)驗(yàn)的驗(yàn)證,可以使得學(xué)生更好的由理論過(guò)渡到實(shí)踐,對(duì)于產(chǎn)品的電子系統(tǒng)能夠有更全面的理解和掌握[2]。畢業(yè)生在自己的畢業(yè)論文設(shè)計(jì)中可以采用Proteus軟件為輔助手段;學(xué)生可以采用Proteus軟件為輔助手段,進(jìn)行大學(xué)生科技創(chuàng)新活動(dòng),或參加市級(jí)以及全國(guó)各類(lèi)電子設(shè)計(jì)競(jìng)賽活動(dòng)。下面是利用Proteus軟件進(jìn)行仿真和硬件驗(yàn)證的流程圖:(圖1)
針對(duì)Proteus軟件以上多種優(yōu)點(diǎn),建立一個(gè)Proteus實(shí)驗(yàn)室,它的出現(xiàn)為電類(lèi)專(zhuān)業(yè)的實(shí)驗(yàn)教學(xué)帶來(lái)了前有未有的新思維和解決之道。Proteus實(shí)驗(yàn)室可以為教學(xué)創(chuàng)造一個(gè)更加優(yōu)質(zhì)的平臺(tái),在現(xiàn)有資源的基礎(chǔ)上,實(shí)驗(yàn)室具有如下的優(yōu)點(diǎn):
3.1 功能多樣化 Proteus軟件除了提供仿真電路分析實(shí)驗(yàn)、模擬電子線路實(shí)驗(yàn)、數(shù)字電路實(shí)驗(yàn)外,同時(shí)還可以對(duì)嵌入式系統(tǒng)實(shí)驗(yàn)仿真,提供嵌入式系統(tǒng)(單片機(jī)應(yīng)用系統(tǒng)、ARM應(yīng)用系統(tǒng))仿真實(shí)驗(yàn)功能是它區(qū)別其它軟件的最大特點(diǎn),因此,Proteus軟件是一個(gè)多功能的實(shí)驗(yàn)平臺(tái)。它的多樣化功能解決了教師教學(xué)過(guò)程中可能出現(xiàn)硬件設(shè)備不齊全問(wèn)題。
3.2 資源開(kāi)放 由于其硬件是基于網(wǎng)絡(luò)平臺(tái)的,如一個(gè)單位內(nèi)的局域網(wǎng)、或企業(yè)網(wǎng)、或校園網(wǎng)(或單機(jī)板,基于一臺(tái)PC)或Internet用戶。因此解決了學(xué)生受傳統(tǒng)實(shí)驗(yàn)室的時(shí)間、空間、及實(shí)驗(yàn)內(nèi)容的限制問(wèn)題,可以發(fā)揮自身的學(xué)習(xí)熱情來(lái)學(xué)習(xí),更好的解放由傳統(tǒng)硬件帶來(lái)的思維限制,提高創(chuàng)新能力,同時(shí)也可以最大發(fā)揮設(shè)備的利用率。
3.3 內(nèi)置資源先進(jìn) Proteus實(shí)驗(yàn)室主要由其Proteus仿真軟件實(shí)現(xiàn),軟件內(nèi)部包括萬(wàn)種以上元器件及多達(dá)30多個(gè)元件庫(kù),多種現(xiàn)實(shí)存在的虛擬儀器儀表,豐富的測(cè)試信號(hào)源,先進(jìn)的混合仿真系統(tǒng)(SPICE電路仿真器+數(shù)字仿真器+MCU仿真器)?;谏鲜鰪?qiáng)大的內(nèi)置配備,可以保證實(shí)驗(yàn)室的先進(jìn)性。另外,軟件提供用戶自己制作器件模型,英國(guó)Labcenter公司也能夠?yàn)橛脩糁谱?,此外,軟件跟硬件相比升?jí)更為方便,幾乎無(wú)成本,可以保持軟件庫(kù)中的器件的實(shí)時(shí)先進(jìn)性,保證了實(shí)驗(yàn)室的先進(jìn)性。
3.4 實(shí)驗(yàn)創(chuàng)新化 Proteus仿真軟件內(nèi)置的豐富資源是進(jìn)行創(chuàng)新型實(shí)驗(yàn)研究的基礎(chǔ)。軟件庫(kù)中提供了儀器儀表、信號(hào)源、元器件、器件模型,教師利用軟件設(shè)計(jì)相應(yīng)的教學(xué)內(nèi)容或者進(jìn)行創(chuàng)新實(shí)驗(yàn)的研究,學(xué)生除了完成實(shí)驗(yàn)內(nèi)容外可以自己研究感興趣的內(nèi)容,由于豐富的軟件庫(kù)中器件,不受到傳統(tǒng)硬件的束縛,可以更好的放開(kāi)思維,展開(kāi)實(shí)驗(yàn)仿真學(xué)習(xí),對(duì)于提高學(xué)生的自主學(xué)習(xí),培養(yǎng)創(chuàng)新能力有重大的意義。
3.5 易管理、易維護(hù) 由于其核心為Proteus仿真軟件,在實(shí)驗(yàn)過(guò)程中不會(huì)產(chǎn)生損耗問(wèn)題,軟件的管理、維護(hù)也僅僅是帳戶的管理、軟件的安裝及更新,設(shè)備的管理工作量得到了降低,可以將更多的時(shí)間精力投入到實(shí)驗(yàn)創(chuàng)新研究中。
3.6 低投入、高回報(bào)
將Proteus實(shí)驗(yàn)室與傳統(tǒng)實(shí)驗(yàn)室對(duì)比,投入低,回報(bào)高。教師只需建立相應(yīng)的計(jì)算機(jī)網(wǎng)絡(luò)平臺(tái)(也可使用已有的計(jì)算機(jī)網(wǎng)絡(luò)平臺(tái)),外加購(gòu)買(mǎi)一套Proteus網(wǎng)絡(luò)板軟件,部分實(shí)驗(yàn)驗(yàn)證板即可。幾乎不會(huì)產(chǎn)生維護(hù)費(fèi)用,此外,建立這樣的實(shí)驗(yàn)室還可以被嵌入式系統(tǒng)(單片機(jī)應(yīng)用系統(tǒng)、ARM應(yīng)用系統(tǒng))、微機(jī)原理與接口技術(shù)課程學(xué)習(xí)用到,做到資源利用的最大化。
4 Proteus軟件的應(yīng)用實(shí)例
由于液晶顯示器的低功耗、體積小、顯示內(nèi)容豐富、超薄輕巧等諸多優(yōu)點(diǎn),已經(jīng)被廣泛應(yīng)用在袖珍式儀表和低功耗應(yīng)用系統(tǒng)中[3]。在LCD顯示電路的硬件電路中,我們通常使用LPC2106芯片和LM016L顯示模塊。LPC2106由一個(gè)支持仿真的ARM7TDMI-S CPU、與片內(nèi)存儲(chǔ)器控制器接口的ARM7 局部總線、與中斷控制器接口的AMBA高性能總線(AHB)和連接片內(nèi)外設(shè)功能的VLSI外設(shè)總線組成。LM016L液晶模塊通過(guò)指令編程來(lái)完成讀寫(xiě)操作、屏幕和光標(biāo)控制。LCD顯示電路電子電路圖如下圖所示:
圖2 ?LCD電子電路圖
我們可以看到,雖然在這個(gè)電路中,電路并不復(fù)雜,但是LPC2106這個(gè)芯片是雙電源芯片,CPU操作電壓范圍為1.65V~1.95V(1.8V ±8.3%) ,I/O電壓范圍為3.0V~3.6V(3.3V ±10%) ,這兩個(gè)小伏電壓范圍比較難調(diào)整,學(xué)生在實(shí)驗(yàn)過(guò)程很容易就會(huì)出現(xiàn)電壓過(guò)大,燒壞芯片的事故。除此之外,學(xué)生還很有可能出現(xiàn)電路連接等錯(cuò)誤,在實(shí)際操作中,這會(huì)很大程度地影響教學(xué)。所以,我們可以采用用Proteus軟件來(lái)仿真電路這一方案。
下面是基于ARM7的LCD顯示電路仿真,介紹電路的設(shè)計(jì)和使用Proteus 進(jìn)行仿真與實(shí)現(xiàn)的過(guò)程。首先運(yùn)用Keil編譯C語(yǔ)言,連接生成Hex文件,使用PROTEUS 7.8SP2仿真,選用ARM7 LPC2106 芯片和LM016L,將Hex文件導(dǎo)入,然后進(jìn)行軟件仿真調(diào)試[4]。其電路原理圖如下圖所示:
圖3 系統(tǒng)電路圖
設(shè)計(jì)的最終效果是使得字符串從左往右逐個(gè)依次出現(xiàn)在屏幕上,同時(shí)逐漸右移,直至全部消失。然后再?gòu)挠蚁蜃笾饌€(gè)依次出現(xiàn),待移到最左端后消失。如此循環(huán)往復(fù)。其設(shè)計(jì)效果如以下圖所示:
圖4 ?設(shè)計(jì)效果顯示框圖
在這個(gè)實(shí)驗(yàn)中,學(xué)生可以通過(guò)Proteus模擬ARM7芯片設(shè)計(jì),將理論與實(shí)際相結(jié)合,應(yīng)用現(xiàn)有的仿真工具和嵌入式軟件開(kāi)發(fā)平臺(tái),合理規(guī)范地設(shè)計(jì)實(shí)現(xiàn)一個(gè)小型LCD顯示電路功能。同時(shí),提供KeilC51 uVision2軟件的調(diào)試功能。
如果電路出現(xiàn)結(jié)果與實(shí)驗(yàn)?zāi)康挠兴睿梢岳密浖{(diào)試系統(tǒng)全速、單步、設(shè)置斷點(diǎn)等,對(duì)各個(gè)變量、寄存器狀態(tài)進(jìn)行實(shí)時(shí)觀察。只需利用仿真軟件在計(jì)算機(jī)平臺(tái)上進(jìn)行各種仿真調(diào)試工作即可,能夠不動(dòng)用電烙鐵試驗(yàn)板就能知道結(jié)果的方法,大大提高了電路設(shè)計(jì)的效率和可操作性,將解析法在近似處理中帶來(lái)的較大誤差有效的避免,還可以與實(shí)物試制和調(diào)試相互補(bǔ)充,通過(guò)理論與實(shí)踐相結(jié)合的教學(xué),大大提高教學(xué)效率,更好的達(dá)到教學(xué)目的,也能提高學(xué)生自主的學(xué)習(xí)興趣,培養(yǎng)學(xué)生自己的探究研究問(wèn)題能力,提高創(chuàng)新意識(shí)。
5 結(jié)語(yǔ)
采用Proteus仿真軟件作為嵌入式系統(tǒng)實(shí)驗(yàn)教學(xué)平臺(tái),不僅幫助工科類(lèi)學(xué)院學(xué)生更快地掌握業(yè)內(nèi)主流電子設(shè)計(jì)工具,綜合最新的電子設(shè)計(jì)技術(shù),提升學(xué)生的實(shí)踐動(dòng)手能力,還使得學(xué)生在校期間,比較靈活地將不同學(xué)科的電子設(shè)計(jì)知識(shí)融會(huì)貫通,為學(xué)生提供更多的實(shí)踐與應(yīng)用平臺(tái),拉近了學(xué)習(xí)與就業(yè)的距離。實(shí)踐證明,這種教學(xué)方法在教學(xué)效率、成本預(yù)算、后期維護(hù)方面優(yōu)勢(shì)明顯,具有較高的推廣價(jià)值。
參考文獻(xiàn):
[1]朱清慧,張風(fēng)蕊,等.Proteus教程-電子線路設(shè)計(jì)、制版與仿真[M].北京:清華大學(xué)出版社,2008.
[2]陳燕,李娜娜.Proteus和Keil在單片機(jī)教學(xué)中的應(yīng)用[J].中國(guó)科技信息,2009(20):194-195.
[3]周立功.ARM嵌入式系統(tǒng)基礎(chǔ)教程[M].北京航空航天大學(xué)出版社,2008年9月第2版.
[4]周潤(rùn)景.PROTEUS在MCS-51&ARM7系統(tǒng)中的應(yīng)用百例[M].電子工業(yè)出版社,2006年10月第一版.
作者簡(jiǎn)介:林偉(1967-),男,上海,碩士,講師,主要從事電子技術(shù)教學(xué)科研工作。