999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

單片機系統計算機輔助設計工具及軟硬件設計和仿真

2010-09-12 05:16:44吳澤球
長治學院學報 2010年2期
關鍵詞:調試單片機程序

吳澤球

(武夷學院,福建 武夷山 354300)

單片機系統計算機輔助設計工具及軟硬件設計和仿真

吳澤球

(武夷學院,福建 武夷山 354300)

選用C51語言作編程語言,KEIL和Proteus、雙龍軟件作為主要的軟件編譯、調試、仿真、下載和制作的工具,可以方便地進行51單片機的軟件設計,并能進行硬件仿真和電路板制作,是優異的計算機輔助開發工具組合。最后提出了一個單片機系統開發方法和工具的設想。

單片機;計算機輔助設計;軟硬件;設計;仿真

1 引言

使用適當的計算機輔助技術和工具來輔助單片機控制系統的設計開發能夠大大地節省人的勞動,產生電腦解放人腦的巨大效益。早期的如Z80單片機,雖然使用匯編語言編程,但是機器只識別由0和1組成的編碼,故當編出程序后還需要人工將其翻譯成機器碼,再輸入到單片機中,然后才能進行軟硬件調試。現在這種勞動早已經被電腦取代。其勞動效率提高了何止千百倍!雖然如此,人們還是在不斷追求更高效的方法,開發更高效的工具。在單片機系統設計開發中,計算機輔助設計及軟硬件結合仿真的開發設計工具已經被眾多的開發者所使用。

2 51單片機控制系統設計開發工具及選用

現在對于51系列單片機已經有了不少開發工具和設備,如:支持用C語言開發51單片機程序的常用開發軟件就有加拿大軟件公司DAVEDUNFIELD推出的MICRO-C51編譯器、IAR公司及2500 A.D公司開發的編譯器[1]、Windows集成開發環境Keil軟件[2]、Intel公司的ASM51、美國的Cybernetic Microsystern Inc公司的Cys8051等。國內的有Med-Win集成開發環境、偉福集成開發軟件等[3]。功能比較齊全的集成開發環境可以將用戶在開發應用軟件過程中所需的所有工具有機地結合起來,這些工具包括編輯器,高級語言編譯器,匯編器,定位/連接器等,能為用戶提供友好的開發環境。軟件和硬件仿真的工具有Nahau公司的EMUL5lXA-PC實時在線仿真器[4]、英國Labcenter公司的Proteus軟件[5]等。

8051單片機應用程序可使用匯編語言,其優勢是與硬件密切相關,可以方便地實現硬件功能,占用資源小、執行速度快。但后來開發的C51語言,可以方便地實現程序設計模塊化,代碼可讀性好、易維護和升級,而且在絕大多數應用條件下執行效率已經非常接近匯編語言,采用C51語言進行單片機軟件編程有其獨特優勢。因此用C51進行單片機程序設計已經成為單片機程序設計的主流之一。

對于C51的編譯執行,目前最普遍使用的是KEIL 51軟件。KEIL 51是德國KEIL公司開發的單片機C語言編譯器,其前身是FRANKLIN C51,它集成了文件編輯處理、編譯鏈接、項目管理、窗口、工具引用和軟件仿真管理等多種功能,它的仿真功能中,有兩種仿真模式:軟件模擬方式和目標板調試方式。在軟件模擬方式下,不需要8051單片機硬件就能完成程序仿真調試,這可以極大地提高用戶程序的開發效率。

在硬件的仿真方面也有一些軟件,其中Proteus是一款相當不錯的軟件。Proteus是英國Labcenter electronics公司研發的EDA工具軟件,它不僅是模擬電路、數字電路、模/數混合電路的設計與仿真平臺,還是一款先進、完整的多種型號微控制器(單片機)仿真器[6]。其中的ISIS智能原理圖輸入系統是Proteus系統的中心,它是畫原理圖和仿真的設計環境。Proteus可以與KEIL結合使用和聯合進行單片機軟、硬件的仿真調試,這使得不需要單片機硬件系統就能完成程序仿真調試,以及對單片機系統硬件不能包括電子線路部分的仿真。這給單片機系統的設計帶來了極大的便利。

根據上述情況,綜合考慮使用的效果和工具軟件獲得的成本,本文推薦以下51單片機的計算機輔助設計工具組合:選擇用C51語言作主要的編程語言,KEIL和Proteus、雙龍軟件作為主要的軟件編譯、調試、仿真、下載和制作PCB板的工具軟件,應該是目前性價比上相當好的組合。這些軟件都可以得到能滿足一般需求的免費版本。

3 51單片機的計算機輔助設計工具組合的使用

3.1 設計系統的硬件結構和軟件各模塊流程圖

首先按照一個單片機控制系統的功能要求,設計出硬件電路和軟件總體結構,對各模塊作軟件設計得到各模塊的程序流程圖。

3.2 用C51語言進行編程

C51是在完全支持標準C全部指令和規則基礎上擴展而成的,可以方便地設計模塊化的程序。有了各模塊的程序流程圖后,就容易分別對各程序模塊按流程圖用C語言進行編程。編寫程序可以啟動KEIL,在其界面下進行。

3.3 用Proteus畫出單片機電路

為了能夠對硬件電路進行仿真,需要用Proteus畫出單片機系統的電路,一般可以按系統的各模塊分別畫出電路,仿真成功后再組合成總的電路,也可以將整個電路一次畫出。用何種方法視電路、軟件的復雜程度和調試難易的具體情況而定。

3.4 軟硬件結合仿真和調試

可以用KEIL軟件對編好的C51語言程序進行編譯,編譯通過后就可以在KEIL上進行調試,這時可以用KEIL與Proteus聯合工作進行軟、硬件的調試和仿真。當然里往往需要對軟、硬件設計進行多次的改動和仿真調試。

3.5 制作硬件電路

軟硬件調試通過后,就可以制作硬件電路了,這時可用Proteus的ARES軟件方便地進行PCB板的設計和制作,然后就可以進行元件的安裝。

3.6 實際軟硬件調試、修改

最后是用實際的硬件電路進行實際的軟硬件調試和修改。這時可以用雙龍軟件將調試好的程序下載到硬件電路的8051單片機中進行測試和調整。由于軟件并不能完全地仿真真實電路,所以這時的硬件電路及軟件還可能需要作進一步改進。

4 舉例

下面用一個顯示模塊的設計來舉例說明使計算機輔助設計工具進行軟硬件結合仿真設計。

4.1 確定顯示的功能、硬件結構和軟件流程圖

顯示功能模塊包括:需要發光顯示的元件有八個七段LED數碼管,七個發光二極管。一個七段LED數碼管需要八條線控制段的顯示(七段加一位小數點),一條線控制位顯。七個發光二極管接成共陽極時與一個沒有小數點的LED數碼管一樣可以用七條段的控制線加一條控制七個二極管的陽極的位線來控制,用動態掃描的方法使顯示器件工作。硬件的電路原理圖如圖10所示。

其中,LED數碼管是共陽極的,藍色的表示數據總線,總線與51單片機的P0口的八條引腳相接,用字母a-h標示,七個二極管的陰極分別接到總線的這些線上,LED的陰極也分別接到總線的相應線上,并在一起的八個驅動門則分別按順序與八個LED的位線相接,左邊單獨的一個驅動門則與并在一起的七個發光二極管的陽極相接。其工作原理是:51單片機通過P0口按一定次序將段碼送上總線,另一方面單片機又控制驅動門按一定順序輸出高電平到對應的LED的位線上使相應的LED被接通電源點亮相應段,最后點亮并在一起的發光二極管,這樣從左到右依次點亮,周而復始,當掃描頻率夠高時(不少于25次/秒),人眼就會看到所有發光的元件是穩定地發光的。

據功能和硬件工作原理寫出程序流程圖1如下:

LED顯示函數:dispLED( )

圖1 程序流程圖FigureⅠ ProgranMflow ing

4.2 用C語言編寫程序

可以使用KEIL的文本編輯器寫程序,按流程圖不難寫出C語言程序如下:void dispLED( )

4.3 用Proteus畫出相應的電路圖

啟動Proteus的ISIS,可使用界面的默認設置,先按電路所需元件到元件庫里選擇好元件,將元件擺放到圖中,連好線,保存到指定文件名。電路圖如圖2所示。

圖2 電路圖FigureⅡ circuit digroom

4.4 軟硬件結合仿真和調試

啟動KEIL進行軟件編譯和調試,可以在KEIL的界面內先對程序文件進行編譯,消除語法錯誤后再進行軟硬件結合仿真。

軟硬件結合仿真要設定KEIL與Proteus聯調功能,方法是:啟動KEIL,打開編譯好的運行dispLED的項目,將KEIL的Option for target選項下的Debug設置成 Use proteus VSMMONITRE 51 DRIVE,并將Proteus的DEBUG菜單中選中“use remote debugermonitor”,就可以使用KEIL與 Proteus聯調的功能進行軟硬件結合仿真和調試。

使用KEIL與 Proteus聯調功能時,同時啟動KEIL和Proteus的ISIS并打開顯示模塊的軟件和硬件項目,要將KEIL生成的HEX文件下載到ISIS打開的電路圖中的8051中。這時KEIL的各種調試、修改、查看系統狀態、仿真等功能都可以使用,同時在Proteus的界面顯示的電路圖上可以直觀地看到運行的結果,如圖2所示。圖中,元件引腳上的高、低電平分別用紅、藍色直觀地表示,不確定的電平則用灰色表示,LED可以發光顯示數碼。這點給電路和程序的調試帶來很大的方便。不但比只用KEIL對8051仿真方便快捷,比用實際的電路硬件利用單片機的串口與PC機通信來實現KEIL對用戶程序的實時在線調試也更直觀和方便快捷。

4.5 制作硬件電路

經過調試、修改得到滿足要求的硬件電路后,就可以用Proteus的ARES得到PCB圖。做法是:在ISIS中完成原理圖,然后修改封裝,把元件的封裝修改成符合元件的實際形狀的,調整好所有元件的封裝后,到菜單Tools→Netlist Compiler,打開Netlist Compiler設置對話框,一般用默認設置就行了,單擊OK生成網表文件。緊接著將網表文件導入到ARES。選擇菜單Tools→Netlist to ARES,這樣就會打開ARES,在放置元件前,要選畫一個版框,之后所有的元件將在版框內布線。最好先把具有標志性的元件先手工放置,然后單擊Set Strategies按鈕,設置布線策略(規則),例如使線的寬度適合所通過的電流和單面板等,然后使用自動放置元件,自動布線,最后再人工調整、添加安裝孔、焊盤等。滿意后就可以打印出來制電路板,然后就可以進行硬件的安裝、軟件下載和調試了。

4.6 實際硬件和軟件的調試

雖然經過了仿真,但是對實際電路還要做進一步的軟硬件調試和確認,因目前仿真軟件還不可能完全地仿真實際電路。

5 討論

從實際使用效果看,上面的計算機輔助設計仿真工具組合能夠完成通常情況下的調試、仿真、下載、制作PCB板等任務,大大提高51單片機控制系統設計、制作與調試的工作效率。Proteus能對多種單片機進行仿真,所以這種方法能用于多種單片機系統設計,當然上面的KEIL等要代以其它單片機用的相應軟件。

這種仿真也會遇到一些問題,主要有以下兩點。

1.仿真的結果與實際電路運行的結果往往會有差別。對于硬件的仿真結果與實際情況差別可能會更大,這是因為硬件的實際運行情況是十分復雜的,仿真其實是用程序來模擬實際元件的工作情況,而由人編寫的程序是很難全面地模擬電子元件的實際情況的,特別是多個元件的綜合作用時。雖然如此,這些工具對提高設計開發效率的用處仍是令人滿意的。

2.元件仿真模型不足。Proteus雖然有豐富的元件庫,但其中許多元件可以在畫電路圖時使用,在進行程序仿真時就仿真不了,這是因為沒有相應的仿真模型程序。對這個問題有三個解決辦法:一是使用同功能的不同型號元件代替進行仿真;二是尋找相應的仿真模型程序;三是可以自建元件即自己為元件設計仿真模型程序。

有了以上的工具組合,學校可以建立虛擬電子和單片機實驗室。這有幾個好處:節省資金;使學生得到一定的仿真和計算機技術訓練;不會造成電子設備和元器件的損壞;學生用仿真的方法進行原理和設計實驗,然后再做實驗電路的實驗,這有利于循序漸進的教學等。

6 設想

EDA(電子設計自動化Electronic Design Automation)的一種技術就是用硬件描述語言VHDL按想達到的功能寫出功能描述設計文件,就能由計算機自動地形成能完成這些功能的邏輯電路結構。如果51單片機的計算機輔助設計工具組合也能夠由單片機系統的功能和電路出發自動形成能完成這些功能的軟件結構,以至形成C51程序,那將是單片機系統開發方法和工具的一個飛躍。這應該是可能的,也應該是單片機系統開發工具的一個發展方向。

[1]陳龍三.8051單片機C語言控制與應用[M].北京:清華大學出版社,1999.

[2]求是科技.8051系列單片機C程序設計完全手冊[M].人民郵電出版社,2006.

[3]祁偉,楊亭.單片機C51程序設計教程與實驗[M].北京航空航天大學出版社,2006.

[4]張培仁,等.自動控制技術和應用,監控網絡設計[M].中國科學技術大學出版社,2001.

[5]周潤景,袁偉亭,景曉松.Prteus在MCS-51&ARM7系統中的應用百例[M].北京:電了工業出版社,2006.10.

[6]周潤景,張麗娜.基于PROTEUS的電路及單片機系統設計與仿真[M].北京:北京航空航天大學出版社,2006.5.

Abstract:Selecting the C51 language for the programming language,and the KEIL,Proteus,Shuanglong software as themajor compilers,debugging,simulation,downloading and production tools,we can easily carried out the design and hardware simulation of 51 Single-chip Microcomputer System,this is a good combination of computer-aided development tools.

Keywords:single-chip;computer-aided design;software and hardware;simulation

(責任編輯 王璟琳)

CoMputer-aided Design Tools and Software and Hardware Design and Simulation of Single-chip MicrocoMputer System

WU Ze-qiu
(Wuyi UniversityWuyishan Fujian China 354300)

TP391.9

A< class="emphasis_bold">文章編號:1

1673-2014(2010)02-0019-04

2009—12—18

福建省南平市科技計劃項目《小型制冷劑回收機研制》(項目編號N2006Z01-4)

吳澤球(1954— ),男,廣西賀州人,副教授,主要從事微機控制研究。

猜你喜歡
調試單片機程序
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
基于航拍無人機的設計與調試
電子制作(2018年12期)2018-08-01 00:47:44
FOCAS功能在機床調試中的開發與應用
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
無線通信中頻線路窄帶臨界調試法及其應用
電子制作(2017年19期)2017-02-02 07:08:38
調壓柜的調試與試運行探討
主站蜘蛛池模板: 国产尤物在线播放| 国产成人精品高清在线| 精品亚洲国产成人AV| 成人在线天堂| 亚洲人妖在线| 精品欧美日韩国产日漫一区不卡| 日本草草视频在线观看| 午夜性爽视频男人的天堂| 色九九视频| 手机精品福利在线观看| 国产一区二区三区在线观看免费| 亚洲午夜综合网| 国内精品久久久久鸭| 激情综合五月网| 国产在线观看一区精品| 国产日韩久久久久无码精品| 国产探花在线视频| 国产三级成人| 国产精品精品视频| 人妻91无码色偷偷色噜噜噜| 欧洲免费精品视频在线| 亚洲综合精品香蕉久久网| 狠狠综合久久| 亚洲国产看片基地久久1024| 99久久国产综合精品2020| 亚洲第一视频免费在线| 国产在线98福利播放视频免费| 国产导航在线| 亚洲天堂高清| 欧美在线中文字幕| 日韩毛片免费观看| 亚洲人成网站在线播放2019| 九九九精品成人免费视频7| 日韩精品一区二区三区大桥未久| 国产精品尹人在线观看| 一区二区在线视频免费观看| 91精品啪在线观看国产| 国产熟女一级毛片| 国产精品第页| 久夜色精品国产噜噜| 视频二区亚洲精品| 久久人搡人人玩人妻精品一| 青青草91视频| 全午夜免费一级毛片| 国产综合亚洲欧洲区精品无码| 国产99视频在线| 亚洲国产精品人久久电影| 欧美精品黑人粗大| 国产成人精品在线1区| 九色91在线视频| 99热最新网址| 毛片久久久| 精品国产成人高清在线| 午夜啪啪福利| 欧美日韩高清| 国产精品免费p区| 欧美成人午夜影院| 永久天堂网Av| 国产91麻豆免费观看| 亚洲有无码中文网| 色偷偷男人的天堂亚洲av| 亚洲第一精品福利| 亚洲毛片一级带毛片基地| 欧美中日韩在线| 手机永久AV在线播放| 久久综合九九亚洲一区 | 国产精品林美惠子在线观看| 国产精品久久久久久影院| 亚洲高清无码精品| 久久国产精品波多野结衣| 波多野结衣AV无码久久一区| 亚洲乱亚洲乱妇24p| 国产免费久久精品44| 国产精品va| 国产成人精品第一区二区| 亚洲性日韩精品一区二区| 天天视频在线91频| 最新亚洲人成网站在线观看| 欧美啪啪一区| 国产女人18水真多毛片18精品| 日韩精品欧美国产在线| 欧美成人午夜影院|