Proteus的定位系統(tǒng)仿真設(shè)計
引 言
隨著單片機技術(shù)在工控領(lǐng)域及社會生活的各個方面得到廣泛應(yīng)用,對單片機開發(fā)成本及速度的要求也越來越高。按照傳統(tǒng)的模式,在整個項目開發(fā)過程中,先根據(jù)控制系統(tǒng)要求設(shè)計原理圖,制作硬件電路;然后進行軟件編程,通過仿真器對系統(tǒng)硬件和軟件調(diào)試;最后將調(diào)試成功的程序固化到單片機中。這一過程的主要問題是應(yīng)用程序需要在硬件完成的情況下才能進行調(diào)試。雖然有的軟件可以進行模擬調(diào)試,但是對于一些復(fù)雜的程序(如人機交互程序),在沒有硬件時,界面沒有真實感,給調(diào)試帶來很大困難。在軟硬件的配合中如果需要修改硬件,就必須重新制板。縱觀整個過程,無論是從硬件成本上,還是從調(diào)試周期上,傳統(tǒng)開發(fā)模式的效率都有待提高。能否只使用一種開發(fā)工具,兼顧仿真、調(diào)試、制板以及最大限度的軟件模擬來作為單片機的開發(fā)平臺,從而取代編程器、仿真器、成品前的硬件測試等。
英國Labcenter Electronics公司推出的Proteus 6ISIS是專用于開發(fā)單片機的集成軟件,用戶可以在該軟件上簡捷、高效地設(shè)計出各種模擬電路、數(shù)字系統(tǒng)、專用IC及各種芯片。在仿真過程中Proteus 6 ISIS給我們以最大程度上的視覺感受,為電子產(chǎn)品的開發(fā)和電子系統(tǒng)工程提供了一種全新的手段和便捷的途徑。本文用上述軟件對定位系統(tǒng)進行了仿真和設(shè)計。
1 定位系統(tǒng)原理及構(gòu)成
1.1 定位系統(tǒng)原理
定位系統(tǒng)的基本原理是:每顆GPS衛(wèi)星時刻發(fā)布其位置和時間數(shù)據(jù)信號,用戶接收機測量每顆衛(wèi)星信號到接收機的時間延遲,根據(jù)信號傳輸速度就可以計算出接收機與不同衛(wèi)星之間的距離。
GPS模塊接收衛(wèi)星的定位信號運算出自身的位置(經(jīng)度、緯度、高度),時間和運動狀態(tài)(速度、航向),每秒1次送給單片機并存儲,以便隨時提供定位信息。由單片機控制定位系統(tǒng)的協(xié)調(diào)工作。
1.2 定位系統(tǒng)硬件構(gòu)成
定位系統(tǒng)是基于AT89C52和GARMINGPS25LP的定位測量系統(tǒng)。其基本功能可分為單片機對GPS器件的控制以及顯示采集的信息兩部分。
系統(tǒng)由3個功能模塊構(gòu)成:
?、賳纹瑱C系統(tǒng):采用AT89C52單片機控制GPS的數(shù)據(jù)讀取和數(shù)據(jù)傳輸過程,并將數(shù)據(jù)發(fā)送到LCD進行顯示。
?、谕鈬娐罚阂徊糠质荊PS和輔助電路;另一部分是LCD顯示電路。
?、跜51程序:編寫C51程序,實現(xiàn)單片機控制GPS器件完成方位數(shù)據(jù)的采集,并輸出LCD顯示。
本系統(tǒng)采用的GPS器件為美國GARMIN公司的GARMINGPS25LP,采用全密封方式,位置精度<15 m,速度精度<0.1 m/s,外形尺寸為46.5 mm×69.5 mm×11.4 mm。GARMINGPS25LP是同類型的GPS OEM板中最常用的一款,在飛機領(lǐng)域使用很多。GARM-
INGPS25LP有其獨特的輸出/輸入語句格式。在調(diào)試GPS時,通過串口和GPS板進行數(shù)據(jù)交換,由于GPS輸出的也是RS232信號,因此可以直接與計算機進行通信。通過串口通信程序進行讀/寫控制,對GPS進行設(shè)置和調(diào)試。
1.3定位系統(tǒng)程序設(shè)計
該程序主要功能有兩方面:一方面是使用單片機與GPS模塊進行通信,獲得當前的方位數(shù)據(jù);另一方面是單片機將所得的數(shù)據(jù)處理成數(shù)值,并發(fā)送到液晶顯示模塊進行顯示。
此系統(tǒng)的函數(shù)分為4類:主程序、GPS的數(shù)據(jù)通信程 序、液晶驅(qū)動程序以及液晶顯示程序。
點擊看原圖
void show(void)。
單片機對GPS模塊的串行數(shù)據(jù)接收、整理,以及向RAM中寫入數(shù)據(jù)的基本流程如圖1所示。
[!--empirenews.page--]
2 定位系統(tǒng)仿真及設(shè)計
2.1 定位系統(tǒng)程序調(diào)試
Proteus是目前最好的模擬單片機外圍器件的工具,它可以仿真51系列、AVR、PIC等常用的單片機,及其外圍電路(如LCD、RAM、ROM、鍵盤、馬達、LED、ADPDA、部分SPI器件和I2C器件等)。其自身只帶匯編器,不支持C語言,但可以將它與:Keil C51集成開發(fā)環(huán)境連接。用匯編語言和C語言編寫的程序編譯好之后,可以立即進行軟、硬件結(jié)合的系統(tǒng)仿真,像使用仿真器一樣來調(diào)試程序。結(jié)合Keil C51和Proteus進行單片機系統(tǒng)的軟件設(shè)計和硬件仿真調(diào)試,既可大大縮短單片機系統(tǒng)的開發(fā)周期,又可降低開發(fā)調(diào)試成本。
Proteus中沒有GARMINGPS25LP,但可以通過鍵盤
2.2 定位系統(tǒng)PCB
Proteus軟件本身有PCB設(shè)計功能,可以生成多種格式的文件,供相應(yīng)的專業(yè)PCB設(shè)計工具調(diào)用,從而很方便地進行后續(xù)PCB的設(shè)計。當仿真調(diào)試成功后,可利用Proteus 6 Professional中的ARES 6 Professional進行PCB設(shè)計與制作。ISIS和ARES高度集成,PCB封裝可以直接從ARES庫中提取,引腳信息可以通過虛擬封裝工具直接輸入。
用Proteus制作PCB通常包括以下步驟:
①加載網(wǎng)絡(luò)表及元件封裝;
?、谝?guī)劃電路板并設(shè)置相關(guān)參數(shù);
?、墼季旨罢{(diào)整;
?、懿季€并調(diào)整;
?、葺敵黾爸谱鱌CB。
雖然庫中沒有GARMINGPS25LP的引腳封裝,但可以通過自建庫或選擇相近封裝。
結(jié) 語
本文介紹了一種基于Proteus軟件的單片機系統(tǒng)設(shè)計與仿真的實現(xiàn)方法。單片機定位系統(tǒng)的實際開發(fā)過程充分說明,采用該方法可以大大簡化硬件電路測試和系統(tǒng)調(diào)試過程中,電路板制作、元器件安裝、焊接等過程。使用該方法進行系統(tǒng)虛擬開發(fā)、成功之后再進行實際制作,無疑要以提高開發(fā)效率,降低開發(fā)成本,提升開發(fā)速度,對單片機系統(tǒng)開發(fā)具有實用意義。