嵌入式車載導航信息系統研究
2.2.2 解決畫面閃爍問題
窗口圖形繪制包括:上次繪制、本次擦除、本次重繪。其中本次擦除操作是必須的。如果重繪時未清除原來繪制圖形,將導致新圖形和原圖形相疊加。而在新圖形繪制出前,在極短時間內屏幕顯示一個空的矩形區域,圖形重繪完成后,窗口顯示區才開始有內容顯示。所以擦除屏幕會出現閃爍,這與圖形復雜程度無關。采用雙緩存機制解決重繪閃爍。雙緩存就是在內存中新開辟一個緩沖區,原來的顯示緩沖區作為前臺緩沖區.新開辟的緩沖區作為后臺緩沖區。如圖3所示,繪圖時先把輸出內容寫入后臺緩沖區,繪圖完成后再把屏幕的當前顯示緩沖區切換到這個包含新內容的緩沖區。一旦把屏幕顯示緩沖指向后臺緩沖區,下一幀的輸出內容就可寫入原緩沖區,再通過屏幕顯示。因為是非常規整的內存拷貝,所以前后臺的緩沖區切換速度非常快,幾乎看不到圖形的擦除過程。因此使用雙緩沖區取代單緩沖區可成功隱藏繪圖過程.避免閃爍。本文引用地址:http://www.104case.com/article/151929.htm
3 導航數據庫管理系統設計
所謂數據庫即格式化(結構化)的文件,用戶完全可自行設計所需格式文件,并提供操作函數。這里使用.dbf文件格式。因為該格式被眾多數據庫管理系統接受,處理方便。這樣實現的數據管理系統是一種平面文件數據庫。這種數據庫系統實現簡單經濟,開發周期短,但速度較慢。實踐表明,車載導航系統采用這種方法完全可以滿足要求。
本文使用16進制閱讀工具hex32.exe分析dbf文件結構。經分析dbf文件具有以下特征:文件由文件結構說明區和文件數據區構成;文件的結束標志為lAH。文件數據區存放記錄(類似表格的一行),每條記錄是等長的;每條記錄以20H開始,按字段順序存放,沒有字段分隔符,也沒有記錄終止符;若刪除該記錄,則記錄的第1個字節標記為2AH。文件結構說明區包括數據庫參數區和記錄結構區。文件的前32個字節為數據庫參數區。記錄結構區包括各個字段參數,其中每個字段占32個字節。本系統基本表的組織形式與dhf文件組織形式相同。
數據庫管理系統實現的主要函數與普通關系數據庫接口類似,選擇使用必要的函數可以實現車載導航所需的基本操作。實現通用數據庫所支持的全部操作,系統具備較豐富的操作功能。用戶還可開發實現特定功能的其他操作,作為系統擴展。
4 結束語
針對嵌入式車載導航信息系統體系結構進行研究,并重點討論導航電子地圖的實現。利用GIS組件實現導航電子地圖和導航數據庫的傳統方發法,以EVC(嵌入式VC)為開發工具,設計了電子地圖矢量圖形系統,并自主設計能滿足車載導航需要的基于文件系統的導航數據庫管理系統。實踐表明,本文建立的導航電子地圖系統具有較強的靈活性和可擴展性,能方便移植于不同的軟硬件平臺,運行可靠,適合嵌入式系統應用,有一定的應用和推廣價值。
評論