單片機虛擬實驗室的構建分析

時間:2022-02-28 11:28:47

導語:單片機虛擬實驗室的構建分析一文來源于網(wǎng)友上傳,不代表本站觀點,若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

單片機虛擬實驗室的構建分析

摘要:高校單片機課程教學存在課堂與實驗脫節(jié)、實驗室維護成本高、學生學習效果不高等缺點,在教學改革中有必要引入基于Proteus和Keil技術為核心的虛擬實驗室教學手段。本文簡單介紹單片機虛擬實驗室的構建模式,從教材的選擇、仿真模型的設計、實驗操作的開展、自主性與創(chuàng)新性實驗的探索等方面作出相應的改革,提升了教學質(zhì)量與效果,得到師生的充分肯定。并列舉教學實例說明。

關鍵詞:單片機;虛擬實驗室;Proteus;Keil

1概述

1.1課程介紹。單片機作為一種最基礎的電氣智能化控制部件,被廣泛應用在數(shù)碼控制、汽車制造、通訊、電器電子等方面,大到飛機郵輪,小到空調(diào)遙控器。目前單片機有關課程已經(jīng)是高校信息工程、電氣工程、自動化工程、應用電子技術等專業(yè)的一門專業(yè)核心課程,該課程注重理論與實踐的綜合培養(yǎng),強調(diào)學生動手能力與創(chuàng)新思維的培養(yǎng),該課程的開展為培養(yǎng)工程技術人員奠定了良好的理論和實踐基礎[1]。1.2教學改革的必要性。在實際的學習過程中,學生反映這門課程過于抽象、晦澀難懂,理論課程中,僅通過書本與幻燈片無法理解單片機內(nèi)部結構、框架流程、工作原理;實驗課上,學生只會按照既定步驟,機械的去重復實驗操作,對于其中原理知之甚少,也無法與理論融會貫通。溯其根源,還是因為單片機是一門硬件與軟件、理論與實踐高度結合的課程,需要同時進行學習與驗證。只學習理論,會覺得過于抽象、無法理解;只學習實驗,則變成機械模仿,無法掌握理論知識。同時由于實驗室承載能力與課程學時限制,學生動手操作機會比較有限。再加上實驗室設備的有形損耗(包括老化、故障、誤差過大等)與無形損耗(技術的進步導致設備落后),這都增加了實驗室的運行與維護成本。另外,出于對師生人身安全與設備安全的考慮,課程多為驗證性的實驗,無法開展自主與創(chuàng)新性的實驗。這種情況下,課堂的創(chuàng)新氛圍與學生的興趣也難以提高,最終導致該課程枯燥乏味。為提升教學質(zhì)量,國內(nèi)外很多高校都在采用圖形化、仿真模擬與虛擬現(xiàn)實等方法推動虛擬實驗室建設[2],操作者可以在計算機上模擬真實實驗室條件下的實驗操作,可以更加直觀的了解內(nèi)部結構、任意變更參數(shù)重復實驗、降低成本、提高人身與設備安全性。這項技術已經(jīng)廣泛運用在機械、電子、物理、化學、醫(yī)學等學科。

2核心技術

虛擬實驗室在單片機領域主要包含以下兩個核心技術:2.1Proteus軟件。Proteus是英國LabCenterElectronics公司開發(fā)的E-DA程序(仿真軟件),是目前業(yè)界技術含量最高、型號最齊全的微控系統(tǒng)仿真平臺軟件。與同類產(chǎn)品相比,Proteus除了具備仿真功能外,還可以實現(xiàn)仿真單片機以及附屬外部設備[3]。該軟件從框架結構設計、參數(shù)調(diào)試到單片機與外接設備協(xié)同仿真,快速轉換到PCB(PrintedCircuitBoard印刷線路板)設計,可以將思路與產(chǎn)品完美銜接。該軟件不僅支持采用PLM(計算機編程語言)、匯編與C語言進行程序開發(fā),同時支持多窗口、多文件編輯,支持兼容市面上常見芯片模型。Proteus主要包括設計圖輸入系統(tǒng)ISIS、動態(tài)原件庫、混合仿真器、以及印刷線路板編輯器ARES等。元件庫包括數(shù)字與模擬、直流與交流、信號發(fā)生器、示波器等多種虛擬設備。Proteus軟件不只是一個單片機的仿真環(huán)境,更是一個擁有無窮擴展范圍與創(chuàng)新空間的實驗平臺。在缺乏必要的輸入、輸出、顯示、調(diào)試等硬件設備的條件下,依然可以利用該軟件,清晰形象的了解單片機的結構原理、方便快捷的展示實驗過程與結果。既克服了硬件與學時上的困難,又提高了學生的掌握水平,培養(yǎng)了學習興趣,擴展了創(chuàng)新思維。這是過去的“灌輸式”課堂與“模仿式”實驗所無法達到的效果的。2.2Keil軟件。Keil是使用最廣泛的采用C語言的單片機開發(fā)軟件,由美國KeilSoftware公司出品。與匯編語言相比,C語言功能強大、結構簡單、可讀性強、維護方便。同時Keil擁有一整套開發(fā)程序,包括C語言編譯、宏匯編、項目鏈接、數(shù)據(jù)運行庫管理以及仿真調(diào)試模擬器等等,這些功能都被組合成一個集成開發(fā)軟件。該軟件安裝簡單、功能完善、調(diào)試準確、工作效率高、生成匯編代碼緊湊、便于理解與糾錯[4]。2.3協(xié)同作用。為了建設虛擬實驗室,需要將二者緊密聯(lián)系在一起。Proteus不僅支持MCS系列以及派生系列的單片機,同時也支持AVR和PIC核心的單片機。Proteus軟件可采用模擬與數(shù)字、直流與交流等數(shù)千種元器件,以及數(shù)據(jù)庫中沒有的型號,也可以根據(jù)實驗需求進行創(chuàng)建。這就需要將C語言與匯編語言進行編譯,然后進行軟件與硬件的仿真模擬。解決了這個框架問題后,采用Proteus建設虛擬實驗室就水到渠成了。

3虛擬實驗室的建設

構建單片機虛擬實驗室,硬件上需要計算機與互聯(lián)網(wǎng)或者局域網(wǎng),軟件上需要計算機操作系統(tǒng)、Proteus和Keil軟件,外觀上就像一個普通的計算機房。虛擬實驗室將電腦網(wǎng)絡、虛擬現(xiàn)實與多媒體交互等技術融合在一起,學生通過計算機接入互聯(lián)網(wǎng)或者局域網(wǎng)內(nèi)的虛擬實驗室系統(tǒng),通過輸入終端與虛擬軟件進行交互,輸入?yún)?shù),設定程序,就可以方便快捷的得到相應的結果。[5]每個學生都有足夠的時間和親自動手的機會,來進行實驗,這在傳統(tǒng)的真實實驗室中是很難做到的。3.1虛擬實驗室的框架。從結構上看,單片機虛擬實驗室分為管理模組和教學模組。管理模組分為教師、學生、管理員三個功能,在系統(tǒng)登陸與權限上予以區(qū)別,是為了方便教師授課、學生學習、管理員維護系統(tǒng)而設置。通過網(wǎng)絡的連接,教師可以將實驗任務與內(nèi)容快速發(fā)送到學生界面、學生實驗操作也可以及時反饋到教師終端,提高了學習效率,活躍了課堂氣氛。教學模組提供了豐富的單片機結構與原理教學課程,學生可以預習課程內(nèi)容、開展虛擬實驗以及生成與修改實驗報告。見圖1。從教學內(nèi)容上看,單片機虛擬實驗分為驗證性與創(chuàng)新開發(fā)性實驗兩種。實驗模板結構通常由教師提前設定統(tǒng)一格式,并下發(fā)給學生終端。模板包括:實驗名稱、元器件庫、實驗工作區(qū)與提示項等內(nèi)容。實驗名稱指明本次實驗的目的,元器件庫限定本實驗所需的元器件、實驗工作區(qū)為學生實驗的主要活動區(qū)域、提示項則包含實驗要求、程序設計難點、如何排除故障等。3.2虛擬實驗教學過程。實驗教學可以采用投影儀演示操作,也可使用局域網(wǎng)同步演示、或者播放視頻操作,講解實驗原理以及具體操作。學生實驗操作,包括:Proteus軟件中設計電路流程圖、Keil軟件中編寫程序并編譯、項目裝載到虛擬單片機、程序調(diào)試、驗證結果正確性、輸出實驗結果。如果結果錯誤,則重新編寫Keil程序。實驗完成后,學生將實驗結果輸入到電子實驗報告系統(tǒng)中,通過局域網(wǎng)或者互聯(lián)網(wǎng)上傳到教師終端,完成本節(jié)課的實驗任務??梢钥闯?,與傳統(tǒng)實驗室操作相比,虛擬實驗室能夠提供標準化、形象化、易操作、界面互動性強的實驗課程,每個學生都能夠更直觀的理解單片機、親自動手進行操作,達到事半功倍的學習效果。在自主創(chuàng)新性試驗中,由于虛擬實驗室擺脫了對實驗室硬件、人身安全、設備維護檢修等限制條件,學生們可以更加開放的去設計電路,充分發(fā)揮學生的主觀能動性,調(diào)動學生的學習興趣,在今后走向工作崗位中,打下了良好的專業(yè)基礎。

4教學實例

下面以“控制秒表的啟動、停止和清零”為例,介紹如何用protues和keil實現(xiàn)單片機虛擬實驗的完成。任務要求:單片機系統(tǒng)的振蕩頻率fosc=11.0592MHz,設計一個啟動、停止和清零受按鍵控制的秒表。S0鍵作啟動鍵,按S0鍵,啟動秒表走時。S1鍵為停止鍵,按S1鍵,秒表停止走時,顯示時間一直保持不變。S2鍵為清0鍵,按S2鍵,秒表停止走時,顯示數(shù)值為0。上電時,秒表停止計時,數(shù)碼管顯示0秒。本任務中,數(shù)碼管采用動態(tài)顯示,用P1和P2口控制顯示。P1口作段選口,P2口作位選口。鍵盤采用獨立式按鍵,P3口鍵盤的控制口,P3.0、P3.1、P3.2分別連接S0、S1、S2三個按鍵。T0、T1都做定時器使用。T0控制鍵盤掃描和數(shù)碼管掃描的時間間隔。T1做秒表的定時器。首先在protues建立如圖2的硬件電路圖。在keil環(huán)境中建立項目文件,進行相應設置后新建scdclock.c,經(jīng)編譯后生成二進制目標文件scdclock.hex,在protues環(huán)境下將程序載入單片機,運行電路后就可以看到任務要求的實驗效果。[6]本任務中需要對定時計數(shù)器的TH0、TH1、TMOD、TCON以及中斷寄存器IE、中斷優(yōu)先級寄存器IP進行設置,也用到了鍵盤掃描、鍵碼識別、鍵盤去抖等相關知識,還用到了數(shù)碼管的連接、動態(tài)顯示等相關知識。通過對本任務的學習,可以使學生及時而準確的掌握所學知識、掌握單片機軟硬件綜合開發(fā)能力。

5結束語

單片機虛擬實驗室的構建,不僅可以對單片機課程改革注入了強大的活力,提升教學質(zhì)量,減少了實驗室硬件維護開發(fā)成本,更重要的是將單片機這門抽象復雜的專業(yè)核心課程以另一種直觀、形象、具體的形式展現(xiàn)在了學生面前,使得學生學習效果得到很大的提高,為今后的學習工作打下了堅實的基礎。

參考文獻:

[1]張?zhí)m華,鄒華,劉純利.單片機原理及應用[M].北京:機械工業(yè)出版社,2012.

[2]李昌.基于虛擬實驗軟件的高職單片機教學改革[J].中國教育信息化,2013(24):35-36.

[3]劉炳堯.KeilC+Proteu6.9-搭建自己的單片機仿真實驗室[J].電子制作,2013(8):52-54.

[4]許超,吳新杰,張丹.基于Proteus和Keil的單片機課程教學改革[J].遼寧大學學報(自然科學版),2011(1):27-29.

[5]朱韶平.基于虛擬實驗的《單片機原理與應用》實驗教學改革研究[J].赤峰學院學報,2015(31):34-36.

[6]李文華,單片機應用技術[M].大連:大連理工出版社,2018.

作者:劉云朋 王春霞 單位:焦作大學