?

基于仿真軟件的單片機虛擬實驗系統設計與應用

2010-11-25 02:37江國學
制造業自動化 2010年12期
關鍵詞:該軟件調試單片機

姜 韜,江國學

JIANG Tao, JIANG Guo-xue

(吉林省教育學院 教育技術系,吉林 130022)

0 引言

根據高職工科教育的目標和特點,必須增加實踐性教學的課時,注重學生的實際操作能力及技能的培養。為此,實驗設備,尤其是開放性的實驗設備是不可缺少的。但是,眾多的課程都建相應的實驗室,顯然是不太可能的,購買大量的耗材讓學生做出實物,在經費上也是一個不小的負擔。有沒有別的有效的實驗手段來支持實踐教學?能不能讓學生模擬實物制作來驗證所學,提高技能?答案是肯定的,那就是通過軟件仿真技術來達到這些要求。

目前各工科高校電類專業都建立了相應的單片機實驗室,基本都配備了相應的硬件仿真設備構成的實驗板或試驗箱。隨著技術和產品的更新,原有的實驗設備即將過時,更新基本上相當于重建,所以有些學校的單片機實驗室還只是基于8051的,像如今應用普遍的AVR、PIC、ARM不能及時補充,造成了學生知識的欠缺。所以建設單片機仿真系統就尤為迫切,應用仿真系統,不僅可以在計算機構成的虛擬環境中設計電路,還可以對電路進行模擬測試,及時發現潛在的問題,縮短新產品的開發周期。

1 引入單片機軟件仿真系統

伴隨著計算機軟件和硬件技術的飛速發展,在各個領域都出現了各種仿真系統,為各種實際系統的開發提供了準確可靠的保證,同時節約了大量的人力和物力。電子信息技術領域也不例外,出現了大量的仿真工具,如各種EDA(Electronic Design Automation電子設計自動化)工具:模數混合仿真的Multisim、OrCAD、Protel等,數字系統設計仿真的Maxplus II、Fundation、Expert等,系統仿真軟件Systemview等。

但在EDA實驗室中配備的Multisim、Protel、Maxplus II、Systemview等軟件和配套硬件,對單片機的仿真卻無能為力,因此仍然需要建立單片機實驗室。單片機實驗室的建設中基本都是采用硬件仿真系統,所以為了保證實驗的順利開設,同一類型的硬件仿真開發系統就需要采購多套設備,硬件的投資成本相對較高。

另一個很重要的原因就是,目前單片機的課程除了主要開設8051系列單片機課程之外,還開設AVR系列、PIC等系列的選修課。為了保證相應實驗的開設,必須要有配套的實驗系統。如果要保證一定的實驗硬件設備套數,這將是一筆更大的開支。所以在經費緊張的情況下,引入單片機軟件仿真系統就可以大大減少硬件設備的采購,同時降低對硬件設備進行維護的工作量。

2 單片機軟件仿真系統應具有的功能

根據實驗目的,仿真軟件應該具有如下的功能。

1)單片機仿真和SPICE(Simulation Program with Integrated Circuits Emphasis)電路仿真相結合

在仿真單片機系統時,不僅需要知道單片機內部各種寄存器、數據存儲器以及各個端口當前的狀態,更重要的是要完成人機通道、前向通道、后向通道的配置與接口。在這些接口電路中,有許多是模擬電路,而模擬電路的仿真就需要SPICE模型,因此必須要求該系統具有SPICE電路仿真功能。傳統仿真和分析只能針對非智能器件,而單片機仿真則可以針對單片機甚至更加復雜的嵌入式系統進行仿真,實時地對外圍電路同步仿真,大大利于相關項目的開發和應用。

2)支持主流單片機系統的仿真

目前廣泛采用的單片機系統有6800系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、HC11系列等。因為不可能為每一個系列的單片機配備一套軟件,所以要求該軟件盡可能將多個系列的單片機集成在一起。

3)提供軟件調試功能

在硬件仿真系統中具有全速、單步、設置斷點等調試功能,同時可以觀察各個變量、寄存器等的當前狀態,因此在該軟件仿真系統中,也必須具有這些功能,同時要支持第三方的軟件編譯和調試環境。只有這樣,經過該單片機軟件仿真系統訓練的學生,才能夠較快地熟悉和使用真正的硬件仿真系統。

4)提供豐富的外圍接口器件

外圍接口不能僅僅限于僅有的幾個器件,要把常用的電子元器件盡可能地囊括其中,使之更接近實際工作。在學生訓練時,可以選擇不同的方案進行比較,這樣更利于培養學生的動手能力和電路設計能力。

5)提供豐富的虛擬儀器

在仿真過程中可以利用虛擬儀器測量外圍電路的特性,培養學生實際硬件的調試能力。

6)具有強大的原理圖繪制功能。

3 單片機軟件仿真系統實驗室的配置方案

根據上述對軟件的要求,并對多種軟件進行對比,我們認為Proteus是目前較好的單片機仿真系統,編譯調試環境選用Keil C51 uVision3軟件,再輔以必要的硬件仿真器、實驗板、編程器和示波器即可構成功能強大、使用方便、易于被學生掌握的單片機實驗室。

1)軟件仿真系統選用Proteus的ISIS(Intelligent Schematic Input System)

Proteus軟件是英國Labcenter electronics公司研發的EDA工具軟件。由ISIS(原理圖設計與仿真平臺)和ARES(Advanced Routing and Editing Software。高級布線和編輯軟件平臺)組成,真正實現了在計算機上完成從原理圖、電路分析與仿真、單片機代碼調試與仿真、系統測試與功能驗證到PCB板生成的完整的電子產品研發過程。

該軟件的主要功能有:

(1)滿足我們提出的單片機軟件仿真系統應具有的功能,并在同類產品中具有明顯的優勢。

(2)具有模擬電路仿真、數字電路仿真、單片機及其外圍電路組成的系統的仿真、RS232動態仿真、I2C調試器、SPI調試器、鍵盤和LCD系統仿真的功能,有各種虛擬儀器,如示波器、邏輯分析儀、信號發生器等,使得相關實驗更直觀,方便,更加有利于教學應用。

(3)支持的單片機類型有:68000系列、8051系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列以及各種外圍芯片。

(4)支持大量的存儲器和外圍芯片。

2)編譯調試環境選用Keil C51 uVision3軟件

該軟件支持眾多不同公司的MCS-51架構的芯片,集編輯、編譯和程序仿真等于一體,同時還支持PLM、匯編和C語言的程序設計。在調試程序、軟件仿真方面有很強大的功能,很多應用MCS-51的工程師都在使用該軟件。所以使用該軟件將使學生獲得很多實際工作經驗,并且通過設置可與ISIS聯機調試單片機系統。

3)配置計算機平臺

上面介紹的這兩款軟件,對機器的配置要求都不高,主流的計算機運行起來綽綽有余。至于計算機的數量,要根據實驗室的規模來確定。我們按標準實驗小組人數的數量配置,基本保證每人一臺。

4)配置硬件仿真器、實驗板、編程器和示波器等

單片機課程安排了10個左右的實驗。這10個實驗都是比較常規的實驗,不需要特殊的器件,所以每門課的實驗首先都是通過單片機仿真軟件實現的。為了讓學生的訓練不脫離實際,給學生提供硬件仿真和驗證的機會,我們的做法是:學生自己繪制原理圖,自己編制程序,在仿真軟件里首先調試通過。調試通過后,將自己編譯好的程序用編程器去燒錄,然后在目標實驗板去觀察運行結果。如果有問題,再連接硬件仿真器去調試、分析。

配置有限的硬件設備,將節約的資金用于購買仿真軟件(使用試用版做試驗也足夠用了,更是省去了不少的花銷),這樣我們用有限的資金解決了單片機實驗室的建設問題,對于經費緊張的學校有一定的借鑒價值。

4 Proteus與Keil的聯機調試設置

兩個軟件安裝后,需要進行相應的設置才能實現聯合的仿真功能。

1)在單片機實驗室每臺電腦上安裝Proteus和Keil uVision3軟件。

2)把Proteus安裝目錄下VDM51.dll(C:Program filesLabcenter ElectronicsProteus6 ProfessionalMODELS)文件復制到keil安裝目錄下的c51in中。

3)編輯keil目錄下tools.ini文件,在[C51]項下,加入TDRV5=BINVDM51.DLL。

4)確定單片機實驗目的。

5)打開Proteus ISIS軟件。設計單片機實驗硬件組成框圖,建立硬件連接原理圖。

6)打開Keil uVison3軟件。建立單片機系統軟件工程,針對實驗要求編制程序。

7)在Keil軟件中,選擇菜單“project-Options for Target 'Target1'”,在出現的對話框中,選擇“Output”頁面,選中,“create Hex File”選項;選擇“Debug”頁面,選中“Use-PROTEUS VSM DRIVER”,進入“Settings”,Host設為127.0.0.1,Port設為8000。

8)在Proteus ISIS軟件中,選擇菜中“Source”-“Add/Remove Source Code Files”,在出現的對話框中,點擊“Chang”按鈕,選擇從Keil uVison3軟件工程中所生成的HEX文件,點擊“OK”。在Debug菜單下選中,“Use Remote Debug Monitor”。

9)在Keil uVison3軟件中直接進行仿真,連續運行或單步運行,即可在Proteus ISIS軟件中看到單片機硬件仿真運行結果。

在聯機調試中,單片機軟件仿真平臺建立過程為(1)—(3)項,實驗過程為(4)—(9)項。

5 單片機軟件仿真系統實驗室的創新應用

建立了單片機軟件仿真平臺的實驗室后,實驗、教學和學生的創新實驗都發生了很多的變化,學生興趣大增,實際動手能力顯著增強。

首先,實驗項目數穩步增加,并已實現該課程實驗獨立設課,并逐步向半開放實驗模式邁進;其次,課程設計,已由原來固定時間、固定題目向現在的全開放、分散型自主模式過渡。再次,改進了教學方式。在單片機教學過程中,應用仿真系統,對單片機系統進行演示教學。學生在老師的啟發下,親自動手完成單片機系統的設計、軟件調試、仿真。

同時,我們建立了創新綜合實驗室,為學生搭建了基于單片機應用的創新平臺。創新實驗室由電子制作小組具體負責,全天候對外開放。通過這個實驗室,加強了學生學習和使用單片機的實踐環節,增強了學生的創新意識和創新思維,達到了提高學生的創新能力的目的。幾年來,開展了多項單片機制作活動,指導學生進行單片機項目制作,極大地提高了學生的單片機實際應用能力。

[1] 王東峰,王會良,董冠強.單片機C語言應用100例[M].北京:電子工業出版社,2009,12-18.

[2] 劉同法,陳忠平.單片機基礎與最小系統實踐[M].北京:北京航空航天大學出版社,2007,35-38.

[3] 蔡希彪,曹洪奎,芳琳.單片機電子時鐘系統的設計與仿真[J].中國科技信息,2007,(4):61-63.

[4] 李芳,李家慶.基于Proteus+Keil的單片機實驗仿真平臺[J].中國教育技術裝備,2009,(4)67-68.

猜你喜歡
該軟件調試單片機
簡單靈活 控制Windows 10更新更方便
基于單片機的SPWM控制逆變器的設計與實現
基于單片機的層次漸變暖燈的研究
基于單片機的多功能智能插排
基于單片機的便捷式LCF測量儀
基于航拍無人機的設計與調試
FOCAS功能在機床調試中的開發與應用
核電廠主給水系統調試
無線通信中頻線路窄帶臨界調試法及其應用
Allen & Heath推出GLD Editor控制軟件
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合