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