摘 要: Proteus是一款功能強大的EDA軟件,利用其提供的ISIS平臺和VSM平臺可實現(xiàn)單片機的交互仿真功能,并實現(xiàn)軟件代碼級的調(diào)試,還可借助第三方編譯軟件keil實現(xiàn)高級語言的跟蹤調(diào)試,安裝Vdmagdi軟件能夠?qū)崿F(xiàn)Keil與Proteus的聯(lián)機調(diào)試。熟練使用Proteus軟件不僅對單片機課堂教學和學生實驗非常有用,而且對單片機的應用設計也有非常大的幫助。
關鍵詞: Proteus; 單片機; 仿真
Proteus軟件是英國Labcenter electronics公司出版的EDA工具軟件。它不僅具有其他EDA工具軟件的仿真功能,還能仿真單片機及外圍器件,因此是目前最好的仿真單片機及外圍器件的工具?,F(xiàn)已受到單片機愛好者、從事單片機教學的教師、致力于單片機開發(fā)應用的科技工作者的青睞。Protues軟件不僅可將許多單片機實例功能形象化,還可將許多單片機實例運行過程形象化。前者可在相當程度上得到實物演示實驗的效果,后者則是實物演示實驗難以達到的效果。隨著科技的發(fā)展,計算機仿真技術已成為許多設計部門重要的前期設計手段。它具有設計靈活、結果、過程統(tǒng)一的特點,可縮短設計時間,減少耗資,也可降低工程制造的風險。所以在單片機開發(fā)應用中,Proteus也能獲得越來愈廣泛的應用。
1 單片機系統(tǒng)的Proteus設計與仿真的開發(fā)過程
Proteus強大的單片機系統(tǒng)設計與仿真功能,使其成為單片機系統(tǒng)應用開發(fā)和改進的手段之一,全部過程都是在計算機上通過Proteus完成的,其過程一般也可分為Proteus電路設計、Proteus源程序設計和生成目標代碼文件、Proteus仿真三步。單片機系統(tǒng)的Proteus設計與仿真流程圖如圖1所示。
2 Proteus軟件的源碼調(diào)試功能
Proteus軟件提供了源碼調(diào)試功能,用戶可以直接在Proteus環(huán)境下進行匯編語言的源代碼跟蹤調(diào)試,同時還提供了與Keil、IAR等第三方編譯軟件的接口,可采用C語言等高級語言編程,進行跟蹤,分析指令的執(zhí)行情況,還可通過調(diào)試菜單調(diào)出寄存器窗口、SFR窗口、IDATA窗口,為用戶編寫應用程序帶來方便。
2.1 Proteus下51單片機匯編源碼調(diào)試
Proteus中的VSM(Virtual System Modelling)提供了簡單的文本編輯器SRCEDIT,它是記事本的修改版。Proteus用它作為源程序的編輯環(huán)境,可在該編輯器中按單片機語言系統(tǒng)規(guī)則編寫源程序。其中的菜單、命令按鈕與一般“窗口”的菜單、按鈕及其功能基本一樣。VSM對于不同系列的微處理器提供了相應的編譯器,即目標代碼生成工具,可根據(jù)單片機型號及語言要求來選取編譯器,51單片機及其兼容單片機的代碼生成工具選用ASM51。
利用Proteus提供的源程序編輯器編寫一個文件名為小燈亮.ASM源程序,如圖2所示。
程序編寫后,即可進行目標代碼生成工具設置,如果首次使用某一編譯器,則需設置代碼產(chǎn)生工具,單擊菜單“Source-Add/Remove Code Generation Tools”,如圖3所示。其中,Code Generation Tool(代碼產(chǎn)生工具)設置為ASEM51;Make Rules(生成規(guī)則)中,Source Extn(源程序擴展名)設置為ASM;Obj Extn(目標代碼擴展名)設置為HEX;Command Line(命令行)設置為%1;Debug Data Extraction(調(diào)試數(shù)據(jù)提?。┲?,List File Extn設置為LST。然后單擊“Source-Build All”(全編譯、匯編),編譯結果在彈出的編譯日志對話框中,無錯則生成目標代碼文件。對ASEM51系列及其兼容單片機而言,目標代碼文件格式為*.HEX。目標代碼文件“小燈亮.HEX”。若有錯,則可根據(jù)編譯日志提示來調(diào)試源程序,直至無錯生成目標代碼文件為止。