《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于Linux和MiniGUI的某型指控終端人機接口設計
基于Linux和MiniGUI的某型指控終端人機接口設計
現代電子技術
陳喜春 黃 波
摘要: 基于Linux和MiniGUI的某型指控終端人機接口設計,在此詳細介紹了某型車載指揮控制終端人機接口部分軟、硬件的選型、設計與實現過程,并對開發過程中出現的其他問題提出了解決方案。該終端采用ARM作為處理器,Linux作為操作系統,通過MiniGUI實現圖形界面。試驗表明,該終端性價比高,實現簡單,對同類終端的設計有借鑒意義。
Abstract:
Key words :

    隨著武器裝備信息化程度的提高,各種嵌入式信息裝備得到了廣泛應用。作為未來戰場主要作戰平臺的各種戰斗車輛,其車載指揮控制平臺的設計得到了廣泛重視。
    一個車載指控平臺的功能主要體現在以下幾個方面:監控、顯示車輛的技術狀態;車際間的指控、通信;車輛的定位、導航;各種文電處理等。本文將介紹一個基于ARMMiniGUI的車載指控系統人機接口部分的設計,這個系統初步實現了上述車載指控平臺的主要功能。

l 軟硬件的選型
    受車輛內部空間的限制,指揮控制終端必須做到小型化,嵌入式。ARM作為一種已經在多個領域得到非常廣泛應用的架構,這里采用它是一個很好的選擇。該課題選擇在國內有著較廣泛市場的SAMSUNG公司的S3C2410芯片作為CPU。S3C2410芯片主要應用于手持設備或者其他對功耗、成本、性能有較高要求的場合。為了降低整機成本,該芯片內置了各16 KB的指令和數據緩存、MMU、UART、ADC、LCD控制器,I2C總線接口、IIS總線接口、USB主從設備支持、觸摸屏接口等,這種設計提高了系統的集成度,也給系統開發提供了極大的便利。
    系統軟件可以有很多選擇,因為該芯片內置MMU,因此可以支持Windows CE,Linux,Palm OS和VxWorks等多種主流嵌入式操作系統。車載指控平臺對實時性要求不高,因此這里選擇嵌入式Linux作為操作系統。嵌入式Linux具有源碼開放、成本低、應用軟件豐富等特點,因此Linux和ARM是許多低成本的應用中首選的組合。
    作為指控終端,必然對用戶圖形界面有特殊的要求,該項目選擇飛漫公司的MiniGUI作為圖形引擎。MiniGUI是一個專門面向嵌入式系統的圖形用戶界面支持系統,它為應用程序定義了一組輕量級的窗口和圖形設備接口。利用這些接口,每個應用程序可以建立多個窗口并在這些窗口中創建各種控件。在軟件體系中,它介于內核和應用程序之間,在此將利用MiniGUI來完成用戶圖形界面的編程。

2 硬件設計
    ARM S3C2410芯片的應用電路有許多成熟的設計范例;在設計階段,市面上也有很多的開發板可供選用。該項目選用杭州立宇泰公司的ARM SYS2410開發板作為開發的硬件平臺。
    該開發板采取核心板和擴展板分離的結構,提供了大部分的外設接口電路,并且有200個引出腳,引出了CPU上的大部分I/0端口,這樣做為后續的開發工作提供了便利。
2.1 鍵盤矩陣電路
    該項目的指揮控制終端功能可以分為6項。每項選中后,為便于輸入或選擇子條目,增加10個數字鍵,另外還需要確定鍵、取消鍵,再加上6個功能鍵,一共是24個鍵。因為鍵的數目較多,將這些鍵設計成一個行列式鍵盤矩陣(見圖1)。


    結合開發板的電路結構,鍵盤矩陣的列輸入端口使用GPE5~GPElO六個通用I/0口線,行輸出端口采用GPEll~GPEl4四個通用I/0口線,在行線和列線的交點接入按鍵開關。
    鍵盤掃描的原理是,按照有規律的時間間隔察看鍵盤矩陣,以確定是否有鍵按下。鍵盤掃描可以采取專用芯片,也可以采用軟件方法實現,該項目采用軟件方法。
2.2 顯示驅動電路
    指揮控制終端輸入/輸出設備的第二個重點就是顯示設備。ARM芯片內置有LCD控制器,可以方便地實現顯示功能。但是ARM LCD控制器支持的是TTL電平的RGB分量顯示,而目前市場上較大尺寸的工控液晶屏大多是LVDS電平接口,因此需要接口電路。
    另一種解決方案是將ARM開發板TTL電平的RGB信號轉換成VGA信號,這樣顯示器的選擇更加隨意,而且降低了成本。RGB信號轉換成VGA信號可采用專用的AD芯片,如ADV7120,ADV7123等。

3 軟件設計
    軟件設計需要完成兩個方面的工作:一是驅動程序編寫;二是GUI編程。
3.1 鍵盤矩陣驅動程序的編寫
    開發板對自己所提供的硬件一般都提供相應的驅動程序,自行開發的外設電路一般需要自己編寫驅動程序。設備驅動程序是Linux內核的重要部分,操作系統只有通過驅動程序才能夠控制外設的硬件行為。
    在系統內部,I/0設備的存取是通過一系列的入口點來進行的,字符型設備提供以下入口點:open,close,read,write,ioctl;它們分別對應打開設備、關閉設備、讀設備、寫設備以及其他操作。這些入口點的定義是通過一個重要的數據結構file_operations來完成的。
    鍵盤驅動程序編制的要點有:
    (1)定義一個6×4的健值矩陣,作為輸出,按下一個按鍵,得到對應的鍵值;
    (2)初始化時設置所用到的I/O端口的讀/寫模式,行線為寫,列線為讀;
    (3)定義鍵盤掃描函數scan_kbd()。它的算法是:初始化時所有的行線置低電平,如果沒有鍵按下,列線都將讀到高電平。否則,任何鍵的閉合將造成該列成為低電平。
    (4)在read入口點,也就是file_operations結構定義的read方法中,調用scan_kbd()。這樣,驅動程序就可以定時掃描幾個I/O端口,獲取鍵值,然后通過putuser發送到用戶地址空間。
    設置I/O模式,讀/寫I/0端口的位,可以通過頭文件S3C2410.h中專門定義的宏set_gpio_ctrl,write_gpio_bit,read_gpio_bit來進行。
    鍵盤驅動程序經過編譯后,可以作為一個設備文件編譯入內核,也可以采取模塊動態加載的方式。
3.2 MiniGUl IAL引擎的實現
    通常,MiniGUI在使用前應針對目標系統的特點進行配置和編譯,例如指定目標操作系統、運行模式、圖形引擎和輸入引擎、字體類型、字符集、所支持的控件類等。該課題中,因為采取了自行設計的鍵盤作為輸入設備,因此最重要的配置是輸入引擎(input abstract lay-er,IAL)。
    抽象層是一組不依賴于硬件的抽象接口,其作用類似于操作系統的驅動程序,將底層的硬件操作與操作系統隔離,這樣做簡化了在不同平臺上移植的難度。開發特定的鍵盤輸入,主要是完成兩部分工作:鍵盤驅動程序設計和鍵盤輸入引擎開發。前者負責從鍵盤接收原始輸入事件和數據,后者負責將原始的輸入事件和數據轉換成MiniGUl抽象的鍵盤事件和數據。
    在代碼實現上,MiniGUI通過INPUT數據結構來表示輸入引擎。該結構中指定了若干函數指針,編寫特定的輸入引擎,主要就是編碼實現INPUT結構中的各個函數。新的IAL引擎編寫完成后,應加入MiniGUI進行配置,然后對MiniGUI進行編譯。在工程實踐中,一種比較簡便的方法是對MiniGUI已經實現的引擎進行修改。
3.3 圖形界面設計
    MiniGUI是一個圖形用戶界面支持系統,通常的GUI編程概念均適用于MiniGUI編程,如窗口和事件驅動編程等。嵌入式系統完成的功能一般比較單一,對于該系統而言,重點在于實現人機接口部分,因此只需要輪詢用戶的按鍵輸入即可。如圖2所示。


    MiniGUI中有三種窗口類型:主窗口、對話框和控件窗口。每一個MiniGUI應用程序一般都要創建一個主窗口,作為應用程序的主界面或開始界面。MiniGUI包含有許多控件類,如靜態框、按鈕、列表框、編輯框、進度條等,這些控件類可以實現和Windows標準控件類似的效果。
    最重要的幾個函數是:

其中,WndProc是這個窗口的消息處理函數。在此,對消息循環進行初立即可。例如:


    添加了鍵盤驅動,修改了MiniGUI的輸入引擎后,應用程序就可以響應鍵盤消息,處理各種事件。除了對標準控制的支持外,MiniGUI還提供了圖形設備接口(GDI)的支持。通過GDI,程序可以在計算機屏幕上進行圖形輸出,包括基本繪圖和文本輸出。利用這種手段,可以繪制指控終端需要的儀表、各種表格。
3.4 其他問題
    在該課題的開發過程中,還遇到了一些其他的問題,概述如下:
    (1)顯示的色彩深度問題。作為指控終端,該課題設計的顯示分辨率為640×480,如果是16位以上的色深,對ARM處理器將是一個比較大的負擔,會出現畫面的抖動,不連貫。處理的方法是將色深設置為8位,這需要通過修改Linux的顯示驅動來解決。
    (2)鍵盤的防抖問題。按鍵的抖動問題是一類常見問題,可以通過軟件延時或者其他的手段進行處理。
    (3)終端功能的進一步豐富。該課題只實現了終端的人機界面,但是作為一個完整意義的終端,還應該考慮終端之間的聯網、數據傳輸,終端和工況采集裝置之間的硬件接口、數據交換等問題。這些需要進一步開發利用ARM芯片上的其他外設,這是該課題下一步的目標。

4 結語
    ARM作為一款性價比突出的嵌入式芯片,與圖形系統MiniGUI相結合,是嵌入式圖形界面編程的優選。實驗證明,本文所介紹的軟、硬件系統較好地實現了在本文引言中提及的車載指控平臺的幾項功能。作為一類典型的車載嵌入式系統,車載指控系統的設計原理與方法同樣適用于其他嵌入式系統。

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          国产毛片精品国产一区二区三区| 欧美日韩色一区| 亚洲永久免费视频| 国产精品一二| 国产区二精品视| 日韩视频在线一区| 欧美日韩不卡合集视频| 欧美性猛交xxxx乱大交退制版| 亚洲国产精品福利| 亚洲午夜视频在线观看| 国外成人在线视频网站| 999亚洲国产精| 日韩视频―中文字幕| 一区二区欧美在线| 久久精品国产91精品亚洲| 久久精视频免费在线久久完整在线看| 久久午夜影视| 亚洲伦理自拍| 中文在线资源观看网站视频免费不卡| 国产精品乱码一区二三区小蝌蚪| 亚洲激情综合| 国产精品二区在线观看| 久久久久久久国产| 欧美成人精品不卡视频在线观看| 国产一区二区三区在线播放免费观看| 国产自产精品| 欧美96在线丨欧| 欧美日韩国产在线| 欧美色图麻豆| 国产欧美日韩高清| 亚洲黄一区二区| 国产欧美精品一区aⅴ影院| 在线观看三级视频欧美| 亚洲色诱最新| 先锋影音国产精品| 黑丝一区二区三区| 亚洲影视中文字幕| 一本一本久久a久久精品综合麻豆| 亚洲天堂久久| 欧美精品激情在线观看| 国产精品男女猛烈高潮激情| 欧美精品福利视频| 久久久久久欧美| 欧美午夜精品久久久久免费视| 久久精品国产91精品亚洲| 亚洲国产成人在线| 欧美日韩aaaaa| 亚洲每日在线| 午夜精品久久久99热福利| 欧美午夜电影完整版| 国产一区二区三区的电影| 国产一区二区电影在线观看| 老妇喷水一区二区三区| 亚洲电影在线观看| 国产精品久久久久久久久免费桃花| 国产精品免费网站在线观看| 亚洲国产精品嫩草影院| 亚洲国产成人久久综合| 老**午夜毛片一区二区三区| 一本一本久久a久久精品综合麻豆| 在线观看一区二区精品视频| 一片黄亚洲嫩模| 农夫在线精品视频免费观看| 久久精品国产久精国产思思| 欧美在线观看你懂的| 国产丝袜一区二区三区| 久热re这里精品视频在线6| 久久久国产精品一区二区三区| 久久国产精品亚洲77777| 日韩视频三区| 亚洲国产影院| 在线日韩av永久免费观看| 国产精品久久网| 久久久激情视频| 国产精品乱子久久久久| 蜜臀av一级做a爰片久久| 在线观看精品一区| 玖玖精品视频| 国产精品久久看| 欧美午夜精品久久久久久孕妇| 在线观看国产成人av片| 99国产精品久久久久老师| 欧美国产高潮xxxx1819| 午夜亚洲福利在线老司机| 国产一区二区三区直播精品电影| 国产精品视频免费观看| 亚洲免费观看视频| 国产伦精品一区二区三区照片91| 欧美成年人网| 蜜桃av综合| 免费一级欧美片在线播放| 亚洲免费精品| 欧美精品一区视频| 亚洲欧美在线观看| 亚洲精品欧美一区二区三区| 国产精品极品美女粉嫩高清在线| 欧美国产亚洲精品久久久8v| 一区二区三区欧美在线观看| 伊人成年综合电影网| 国产视频丨精品|在线观看| 国产婷婷色一区二区三区| 亚洲欧美日韩一区二区| 在线成人黄色| 国产精品欧美激情| 免费国产自线拍一欧美视频| 欧美片网站免费| 国语自产偷拍精品视频偷| 国产精品一区二区男女羞羞无遮挡| 亚洲欧美中文在线视频| 蜜桃av一区二区在线观看| 国产午夜精品视频| 欧美大片在线观看一区| 亚洲第一福利在线观看| 在线日韩av永久免费观看| 最新热久久免费视频| 亚洲一区二区三| 毛片精品免费在线观看| 亚洲黄色一区二区三区| 国产情人综合久久777777| 在线视频欧美日韩精品| 美女免费视频一区| 午夜精品福利一区二区三区av| 中文国产成人精品| 亚洲无线一线二线三线区别av| 国产亚洲成精品久久| 亚洲午夜一区| 欧美三日本三级少妇三99| 欧美亚州一区二区三区| 亚洲国产精品免费| 久久综合电影一区| 麻豆国产精品一区二区三区| 国产精品久久国产精麻豆99网站| 午夜国产精品视频免费体验区| 亚洲一区二区三区色| 美女网站在线免费欧美精品| 黄色一区二区三区| 国产精品久久婷婷六月丁香| 亚洲精品在线三区| 欧美jizzhd精品欧美喷水| 国产精品女人网站| 欧美另类极品videosbest最新版本| 久久久噜噜噜久久人人看| 精品盗摄一区二区三区| 午夜国产欧美理论在线播放| 亚洲三级免费| 亚洲免费小视频| 一区二区在线视频播放| 国产精品久久91| 黄色一区二区在线观看| 亚洲一区免费看| 久久影院亚洲| 欧美二区在线观看| 亚洲欧美另类综合偷拍| 亚洲美女啪啪| 麻豆久久精品| 国产日本欧洲亚洲| 亚洲精品久久久久中文字幕欢迎你| 午夜免费电影一区在线观看| 黄色一区二区在线观看| 国产欧美日韩精品a在线观看| 国产亚洲一级| 国产欧美日韩亚洲一区二区三区| 日韩午夜在线视频| 牛人盗摄一区二区三区视频| 国产精品系列在线| 亚洲无限乱码一二三四麻| 亚洲国产婷婷香蕉久久久久久| 在线视频亚洲欧美| 久久久国际精品| 欧美波霸影院| 亚洲免费观看高清在线观看| 欧美连裤袜在线视频| 欧美激情亚洲激情| 国产日本欧美在线观看| 在线看无码的免费网站| 中国日韩欧美久久久久久久久| 一区二区欧美国产| 亚洲精品久久久久久久久久久| 久久精品国产欧美激情| 亚洲另类在线一区| 亚洲视频一区| 夜夜嗨av一区二区三区免费区| 国产精品一区免费观看| 久久久久久九九九九| 国产亚洲视频在线观看| 欧美高清视频在线观看| 欧美日韩亚洲系列| 国产精品视屏| 亚洲视频一区二区免费在线观看| 在线亚洲欧美专区二区| 久久国产乱子精品免费女| 中文网丁香综合网| 国内一区二区三区在线视频| 欧美视频精品在线观看| 欧美淫片网站| 国产一区av在线| 亚洲黄色视屏| 欧美久久久久久久久久| 欧美一级二区| 亚洲欧美激情诱惑| 国产亚洲亚洲| 久久久www成人免费精品| 极品裸体白嫩激情啪啪国产精品| 欧美日韩国产一区二区| 欧美一级二级三级蜜桃| 欧美性理论片在线观看片免费| 欧美日韩一区国产| 久久精品女人的天堂av| 国产嫩草一区二区三区在线观看| 欧美性生交xxxxx久久久| 激情欧美一区二区| 欧美国产视频一区二区| 欧美丰满高潮xxxx喷水动漫| 欧美涩涩网站| 亚洲美女福利视频网站| 欧美国产日韩精品免费观看| 国产欧美一区二区精品婷婷| 国产精品久久久久999| 亚洲成色www久久网站| 亚洲在线观看免费| 一区二区欧美激情| 欧美高清在线一区二区| 国产精品久久二区| 欧美国产日韩a欧美在线观看| 亚洲视频网站在线观看| 午夜伦理片一区| 久久伊人精品天天| 国产精品腿扒开做爽爽爽挤奶网站| 亚洲精品久久久久久久久久久久| 午夜视频久久久| 欧美另类极品videosbest最新版本| 亚洲视频图片小说| 亚洲成在线观看| 国产一区二区三区av电影| 欧美午夜不卡影院在线观看完整版免费| 激情成人在线视频| 另类人畜视频在线| 亚洲在线观看视频| 亚洲免费视频成人| 亚洲国产合集| 欧美成人久久| 国产模特精品视频久久久久| 久久久欧美一区二区| 免费精品99久久国产综合精品| 欧美一区二区成人| 亚洲人成7777| 亚洲国产成人精品视频| 亚洲精品一区在线观看| 国产精品少妇自拍| 国产日产欧美精品| 欧美激情综合在线| 国产精品伊人日日| 亚洲男女毛片无遮挡| 欧美亚洲成人网| 国产老肥熟一区二区三区| 亚洲国产精品高清久久久| 亚欧成人精品| 免费久久99精品国产自| 亚洲欧美视频一区二区三区| 影音先锋久久| 欧美日韩调教| 久久精品欧美日韩精品| 欧美日韩一区二区视频在线观看| 亚洲影视综合| 久久亚洲不卡| 在线一区二区三区做爰视频网站| 亚洲欧美另类国产| 亚洲欧洲一区二区在线播放| 一区二区三区四区蜜桃| 国产精品婷婷午夜在线观看| 欧美视频在线观看| 久久免费精品视频| 狠狠久久亚洲欧美专区| 精久久久久久| 伊人婷婷久久| 欧美精品一区二区在线观看| 欧美与黑人午夜性猛交久久久| 亚洲日本黄色| 欧美视频在线免费看| 99国产精品久久久久久久成人热| 欧美经典一区二区| 99热免费精品| 亚洲精品一二三| 亚洲一区二区三| 欧美一级大片在线观看| 国产精品成人免费视频| 国产视频一区在线观看一区免费| 一区二区三区精品国产| 日韩一区二区精品葵司在线| 欧美日韩免费观看一区=区三区| 99pao成人国产永久免费视频| 激情久久影院| 国产精品入口66mio| 亚洲一区黄色| 亚洲国产精品女人久久久| 欧美视频在线视频| 99re热这里只有精品免费视频| 一本色道久久综合亚洲精品不| 欧美日韩在线直播| 黄色日韩精品| 六十路精品视频| 国产精品永久| 欧美在线短视频| 国产精品免费在线| 欧美激情一区二区三区| 国产精品一区二区三区免费观看| 欧美日韩大片一区二区三区| 久久精品91久久香蕉加勒比| 欧美四级剧情无删版影片| 亚洲性感美女99在线| 亚洲成人中文| 亚洲乱码一区二区| 国产午夜精品在线| 免费在线视频一区| 一区二区三区波多野结衣在线观看| 美乳少妇欧美精品| 国产亚洲精品aa午夜观看| 欧美sm极限捆绑bd| 亚洲一区二区三| 国产精品xxx在线观看www| 制服丝袜亚洲播放| 久久久国产视频91| 欧美日韩国产精品一区| 香蕉久久一区二区不卡无毒影院| 韩国成人精品a∨在线观看| 午夜精品一区二区三区在线| 久久久国产一区二区| 欧美一区二区三区在线看|