《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > Proteus軟件仿真與Keil的單片機系統設計
Proteus軟件仿真與Keil的單片機系統設計
摘要: 隨著半導體技術的飛速發展,以及移動通信、網絡技術、多媒體技術在嵌入式系統設計中的應用,單片機從4位、8位、16位到32位,其發展歷程一直受到廣大電子愛好者的極大關注。單片機功能越來越強大,價格卻不斷下降的優勢無疑成為嵌入式系統方案設計的首選,同時單片機應用領域的擴大也使得更多人加入到基于單片機系統的開發行列中,推動著單片機技術的創新進步。
Abstract:
Key words :

  1 概述

  隨著半導體技術的飛速發展,以及移動通信、網絡技術、多媒體技術在嵌入式系統設計中的應用,單片機從4位、8位、16位到32位,其發展歷程一直受到廣大電子愛好者的極大關注。單片機功能越來越強大,價格卻不斷下降的優勢無疑成為嵌入式系統方案設計的首選,同時單片機應用領域的擴大也使得更多人加入到基于單片機系統的開發行列中,推動著單片機技術的創新進步。

  然而傳統的單片機系統開發除了需要購置諸如仿真器、編程器、示波器等價格不菲的電子設備外,開發過程也較繁瑣。如圖1所示,用戶程序需要在硬件完成的情況下才能進行聯調,如果在調試過程中發現需修改硬件,則要重新制板。因此無論從硬件成本還是開發周期來看,其高風險、低效率的特性顯露無遺。來自英國Labcenter Electronics公司的Proteus軟件很好地詮釋了利用現代EDA工具方便快捷開發單片機系統的優勢。它包括PROTEUS VSM(Virtual System Modelling)、PROTEUS PCB DESIGN兩大組成部分,在PC機上就能實現原理圖電路設計、電路分析與仿真、單片機代碼級調試與仿真、系統測試與功能驗證以及形成PCB文件的完整嵌入式系統設計與研發過程。本文講述PROTEUS VSM單片機系統的PROTEUS設計與仿真功能,圖2為基于PROTEUS仿真軟件的單片機系統設計流程,它極大地簡化了設計工作,得到眾多設計師的青睞。

傳統的單片機系統設計流程

圖1 傳統的單片機系統設計流程  圖2 基于Proteus的單片機系統設計流程

  2 基于Proteus的單片機系統設計與仿真

  Proteus支持51、PIC、AVR、ARM7等多個系列的單片機芯片,集編輯、編譯、仿真調試于一體。它的界面簡潔友好,可利用該軟件提供的數千種數字/模擬仿真元器件以及豐富的仿真設備,使得在程序調試、系統仿真時不僅能觀察到程序執行過程中單片機寄存器和存儲器等內容變化,還可從工程的角度直觀地看到外圍電路工作情況,非常接近工程應用。另外Proteus還能與第三方集成開發環境(如Keil的μVision)進行聯合仿真調試,給予開發人員莫大便利。本設計以51單片機構成的99秒馬表為例描述基于Proteus的硬件設計、基于Keil C的軟件設計以及它們的聯合仿真調試過程。

  2.1 硬件設計

  2個七段數碼管顯示馬表時間,用51單片機的P1口驅動;按鍵SP掛在外部中斷0的I/O口上,第1次按下表示開始運行,第2次按下為計時停止,第3次按下重新歸零;擴展程序存儲器27256、數據存儲器62256主要是緣于嵌入式操作系統μC/OSII下的應用程序設計,片內存儲空間有限,同時也方便擴展。

  根據以上分析,選取的元器件有:AT89C51、4位7段譯碼顯示器、74LS373、27256、62256、按鍵及電阻電容等。Proteus繪制原理圖和Protel軟件相似,先從元件庫中取出所需的元件并在繪圖區布局好,設置元器件屬性,接著進行連線,添加必要的網絡標示等,最后完成電氣檢測。圖3為馬表電路原理圖。

基于Proteus的馬表系統原理圖

點擊看原圖

 

 

圖3 基于Proteus的馬表系統原理圖

  2.2 軟件設計

  隨著嵌入式系統應用不斷擴大,功能不斷增強,為了對整個系統及其所操作的部件、裝置等資源進行統一協調、指揮和有效控制,使開發人員只專注于應用程序設計,在嵌入式系統中引入操作系統是非常必要的。μC/OSII是源碼公開的實時多任務操作系統,具備足夠的穩定性和安全性,特別適合用于中小型嵌入式系統中。μC/OSII的具體介紹和移植過程請見參考文獻[1]。

  Keil公司的Keil μVision3,是目前使用最為廣泛的開發環境之一。這里介紹在Keil μVision3環境下基于μC/OSII嵌入式操作系統的用戶程序設計。根據馬表系統功能,設計兩個任務: 任務1為數碼管顯示,調用系統延時函數實現馬表的運行;任務2為按鍵判斷,屬于中斷級任務,通過按鍵啟動/停止/重置馬表。數碼管顯示和按鍵判斷任務之間用信號量實現通信;其中按鍵任務發出信號量,數碼管顯示任務負責接收信號量。程序流程如圖4所示。部分程序清單如下:

  主程序

程序

  任務1

程序

  任務2

程序

程序流程圖

圖4 程序流程圖

  2.3 系統聯調

  在Proteus硬件電路圖和Keil C程序設計完成之后,接著進行聯合仿真。此時需要對Proteus和Keil兩個軟件進行簡單的配置,具體配置過程見參考文獻\[2\]。同時打開電路仿真圖和C工程文件,在Keil中啟動調試“DebugStart/Stop Debug Session”,并運行DebugGo,此時Proteus仿真被Keil啟動,在Keil和Proteus中都可以觀察運行狀態。程序運行后,可看到數碼管顯示情況,當按下按鍵,數碼管顯示作相應切換。

 

  結語

  基于Proteus電路設計、Keil程序設計以及它們聯合仿真調試的方法,建立了單片機系統硬件設計、軟件設計以及調試的全虛擬環境,使得全部的設計工作基于PC就能完成,顯著提高了設計開發效率,降低開發風險,這對嵌入式方案設計無疑是一個很好的思路。

  參考文獻

  [1] 陳是知.μC/OSII內核分析、移植與驅動程序開發[M].北京:人民郵電出版社,2007.

  [2] 張靖武,周靈彬.單片機系統的PROTEUS設計與仿真[M].北京:電子工業出版社,2007.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 久久综合给合久久狠狠狠色97 | 色羞羞 | 无遮羞成人的动漫在线观看 | 成人激情视频网站 | 中文字幕中文字幕 | 澳门毛片免费播放 | 男女性网站| 欧美网站免费 | 成人性生活免费视频 | 一区二区三区四区视频在线观看 | 伦理久久 | 亚洲天堂色视频 | 欧美色图888| 亚洲综合成人在线 | 午夜成人在线视频 | 日本妇人成熟免费观看18 | 成人日韩 | 久久久久久一级毛片免费野外 | 日韩欧美一区二区三区不卡在线 | 飘花国产午夜精品不卡 | a级毛片蜜桃成熟时2在线播放 | 婷婷人人爽人人爽人人片 | 毛片段 | 男女一级做a爱过程免费视频 | 五月婷婷狠狠 | 91精品在线国产 | 国产麻豆va精品视频 | 国产免费一区2区3区4区 | 成人18网站 | 国产极品粉嫩 | www日本黄色 | 免费看的黄色录像 | 天天操天天干天搞天天射 | 亚洲国产一区在线观看 | 一级特黄aaa大片免费看 | 欧美成人手机在线视频 | 国产精品小黄鸭一区二区三区 | 午夜欧美性欧美 | 人人天天夜夜 | 乡村乱妇一级毛片 | 国产亚洲papapa |