一種基于SOPC技術(shù)的便攜式定位系統(tǒng)設(shè)計(jì)
3 接收終端軟件實(shí)現(xiàn)
接收終端軟件開(kāi)發(fā)在集成開(kāi)發(fā)環(huán)境Nios II IDE中進(jìn)行,主要完成定位數(shù)據(jù)的采集和與監(jiān)控中心的通信。
3.1 軟件開(kāi)發(fā)環(huán)境Nios II IDE
Nios II IDE是Nios II軟核處理器的主要開(kāi)發(fā)工具,它基于開(kāi)放和可擴(kuò)展的Eclipse平臺(tái),為軟件開(kāi)發(fā)提供了一個(gè)完整的C/C++設(shè)計(jì)開(kāi)發(fā)環(huán)境,它包括一個(gè)具有工程管理、源代碼開(kāi)發(fā)、基于JTAG調(diào)試功能的圖形用戶(hù)界面(GUI),借助于HAL(Hardware Abstraction Layer,硬件抽象層)可以用類(lèi)似C語(yǔ)言的庫(kù)函數(shù)來(lái)訪(fǎng)問(wèn)硬件設(shè)備或文件[3],縮短軟件開(kāi)發(fā)周期。
3.2 HAL系統(tǒng)庫(kù)
HAL(Hardware Abstraction Layer,硬件抽象層)系統(tǒng)庫(kù)可以為嵌入式軟件開(kāi)發(fā)人員訪(fǎng)問(wèn)底層硬件提供簡(jiǎn)單的設(shè)備驅(qū)動(dòng)接口,NIOS II軟核處理器支持HAL,其為用戶(hù)提供了以下支持:與ANSI C集成的標(biāo)準(zhǔn)庫(kù)-提供類(lèi)似C語(yǔ)言的標(biāo)準(zhǔn)庫(kù)函數(shù);設(shè)備驅(qū)動(dòng),提供訪(fǎng)問(wèn)系統(tǒng)中的每個(gè)設(shè)備的驅(qū)動(dòng)程序;HAL API,提供標(biāo)準(zhǔn)的接口程序如設(shè)備訪(fǎng)問(wèn)、中斷處理等;系統(tǒng)初始化和設(shè)備初始化,提供main( )函數(shù)之前處理器和系統(tǒng)外圍設(shè)備的初始化。基于HAL的系統(tǒng)層次如圖2所示。
圖2 基于HAL的系統(tǒng)層次
3.3 接收終端軟件開(kāi)發(fā)
根據(jù)系統(tǒng)的功能,軟件設(shè)計(jì)流程圖如3所示。
圖3 軟件設(shè)計(jì)流程圖
評(píng)論