999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于QT/E串口通信的手持監控器

2013-04-12 00:00:00劉依晗丑武勝董明杰
現代電子技術 2013年20期

摘 要: 為實現基于嵌入式Linux系統的ARM11手持監控器與下位機之間的串口通信,在基于ARM1176JZF?S核的ARM11開發板上移植Linux操作系統,搭建嵌入式QT應用平臺。利用QT可視化的圖形界面及豐富的圖形庫,設計并制作手持監控器圖形界面。根據Linux下串口通信的應用層協議,最終實現了下位機的運動狀態數據在QT界面上的實時顯示。該方法簡單、可靠、便于實際工程應用,解除了PC機對下位機進行遠程數據監控攜帶不方便的問題。由于Linux系統和QT都有較強的可移植性,該方法在遠程手持監控設備中將有廣泛的應用前景。

關鍵詞: 嵌入式; Linux; 手持監控器; QT; 串口通信

中圖分類號: TN919?34; TP393.04 文獻標識碼: A 文章編號: 1004?373X(2013)20?0110?03

0 引 言

近年來,隨著電子、材料、計算機等一些高新技術的出現,水下機器人的研制有了迅猛的發展,已經出現海底實驗、考察、施工、打撈與救助等多種用途與類型的水下機器人[1]。本課題來源于國家“863計劃”——核反應堆專用機器人技術與應用。因為核電站反應堆水池特殊復雜的環境,必須要對核電站的水下機器人進行遠程監控。目前國內外已經有多種對水下機器人監控的岸上控制箱,但大都體積龐大,不方便攜帶。本文的目標是設計制作一個手持式監控器,可以方便的攜帶,并能夠顯示出水下機器人的各個運動狀態參數。

Linux操作系統,具有免費、安全、可靠、運行穩定等特點,具有跨平臺的特性,移植性非常好,并且它開放源代碼的優點使得系統成本非常低[1],適合于向ARM11開發板上移植。配以具有跨平臺特性并含有豐富圖形庫的QT軟件,使得本手持式遠程監控器的設計簡單,成本低廉,非常適合于工業應用[1]。

1 硬件平臺的選擇及系統移植

1.1 核心處理器的選擇

因為需要實時的顯示水下機器人的運動狀態信息,所以選用ARM(Advanced RISC Machines)處理器核心板來實現功能。ARM處理器具有體積小、低功耗、低成本、高性能的優點,非常適合用于嵌入式手持設備。基于ARM1176JZF?S核來設計的ARM11處理器具有豐富的接口、較高的處理速度,同時能擴展出各種總線接口,包括數據總線、地址總線和控制總線,以及串口、USB接口、以太網接口等,可以方便的與其他模塊進行連接[1],可以非常輕松的滿足我們手控器對QT串口通信的需求,如圖1所示。

1.2 操作系統的移植與交叉編譯器的安裝

1.2.1 Linux操作系統的移植

Linux操作系統是跨平臺、開放源代碼的,并且內核小、可剪裁、功耗低、功能易擴展,開發及運行效率高,因此我們在ARM11開發板上移植了版本號為2.6.38的嵌入式Linux操作系統[1]。

1.2.2 交叉編譯器的安裝

為了使宿主機上程序能夠順利的在目標機上運行,需要對開發板安裝交叉編譯工具鏈。在此安裝的交叉編譯器版本為Arm?Linux?Gcc4.5.1,它默認采用armv6指令集,支持硬浮點運算。安裝好交叉編譯器后,在宿主機PC電腦上編寫的程序可以順利的在目標機開發板上運行,這為后續工作搭建好了平臺。

2 QT軟件介紹及其移植

2.1 QT軟件簡介

QT是一個跨平臺的C++圖形用戶界面庫,由挪威TrollTech公司1995年出品,QT具有優秀的跨平臺特性,相同的代碼可以在任何支持的平臺上編譯與運行,而不需要修改源代碼。同時,QT具有良好的封裝機制,模塊化程度非常高,可重用性較好,其獨特的信號/槽機制,使得各個元件之間的協同工作非常簡單[1]。而QT/Embedded是專門面向嵌入式系統的QT版本,專門為小型設備提供了圖形用戶界面的應用框架和窗口系統,具有極好的跨平臺特性,非常適合于手持監控器的開發。QT/Embedded的實現機構如下[1]。

2.2 QT到開發板的移植

本文的目的是在嵌入式硬件平臺ARM11上實現QT/E的圖形用戶界面,來實現讀取下位機傳來的串口數據。所以首先需要在PC機上安裝好QT并交叉編譯成為針對arm平臺的embedded版本[1],并將其移植到ARM11開發板上,至此,在PC機Linux系統上編寫的QT運行程序,便可以在開發板上運行了,在此安裝的QT版本為4.7,如圖2所示。

3 串口通信的實現

3.1 Linux下串口通信的原理

因為在QT中沒有特定的串口控制類,所以在此引用一個由第三方編寫的qextSerialPort類來實現串口通信。該類包含2個類,QextSerialBase類和Posix_QextSerialPort類,這兩個類的關系圖如圖3所示。

可以看到,兩個類都是繼承自QT軟件自帶的QIODevice類,所以該類中的一些函數可以直接調用。其中,類QextSerialBase繼承自QIODevice類,它提供了操作串口所必需的一些變量和函數等,而Posix_QextSerialPort繼承自QextSerialBase,Posix_QextSerialPort類添加了Linux平臺下操作串口的一些功能。

在QextSerialBase類中涉及到了一個枚舉變量QueryMode,它包括兩個值,一個是事件驅動方式EventDriven,另一個是查詢方式Polling。在事件驅動方式中,串口的讀寫是異步的,不會凍結調用線程。而查詢方式讀寫函數是同步執行的,信號不能工作在這種模式下,而且有些功能也無法實現,但是這種模式下開銷較小,我們可以自己建立定時器來讀取串口的數據,并顯示在QT的圖形用戶界面上。本文介紹的就是用Polling方式來進行串口通信,因為手持監控器只需要顯示下位機的運動狀態參數,所以只需要讀取下位機發來的數據即可。

3.2 Polling方式串口通信的實現過程

因為查詢方式進行串口通信需要設置一個定時器,并通過QT特有的信號/槽機制,將定時器超時信號與槽函數關聯,每到定時器設定的值后就讀取一次串口的數據,實現串口通信的流程圖如圖4所示。

3.3 串口通信在ARM11開發板上的實現

在熟知QT下串口通信的原理后[1],在QT軟件中建立工程,通過調用QextSerialBase和Posix_QextSerialPort兩個類,利用textbrowser和label來實現QT界面的編寫[1],在PC機上模擬運行成功后,對該程序進行交叉編譯,生成了能夠在ARM11開發板上運行的可執行程序,并將其燒寫到開發板上,通過命令終端運行,使其成為?qws(服務器程序),并進行實際測利用下位機水下機器人對手持監控器發送數據,顯示效果如圖5所示。至此,手持監控器圖形界面就設計完成了,也可根據自己需要接受并顯示的參數來設計圖形用戶界面,以達到最大的美觀效果。

4 結 語

文章介紹了一種新穎的遠程手持監控器制作方法。以ARM?Linux嵌入式系統為基本平臺,利用同樣具有跨平臺特性的QT軟件來實現界面的設計與數據的讀取。該方法簡單,可靠,易學,并且成本低廉,可以快速的繪制漂亮的圖形界面,為以后手持式的遠程監控設備奠定了基礎,可以擺脫大型監控設備攜帶不方便的束縛。由于開源的Linux系統和QT軟件都具有較強的可移植性,該方法在遠程手持監控設備中將會有更廣泛的應用前景。

參考文獻

[1] 郭晶.潛水器用遠程遙控系統研究[D].大連:大連海事大學,2010.

[2] 謝偉.嵌入式Linux系統工程師標準培訓教材:基礎篇[M].北京:清華大學出版社,2011.

[3] 陳章龍.嵌入式技術與系統:Intel XScale結構與開發[M].北京:北京航空航天大學出版社,2003.

[4] 郭巧云,許雪梅,李岸.基于ARM11的無線視頻監控系統的設計[J].計算機測量與控制,2010,18(8):1?2.

[5] GUO Guang?ming. Design of embedded remote video monitoring system based on S3C2410A [J]. Science and Technology Management Research, 2010, 263(14): 233?235.

[6] 吳子平,徐愛鈞.基于Qt/Embedded的嵌入式GUI的研究與構建[J].電腦開發與應用,2012,25(1):1?2.

[7] 華晶,賈晶,何火嬌.基于Qt/Embedded的嵌入式GUI在ARM上的移植[J].計算機與現代化,2009(10):20?22.

[8] HUAI Wei?hua, ZHANG Yu?jie, TIAN Ze. The TTY device driver of the embedded linux operating system [J]. Computer Applications, 2009, 28(1): 42?44.

[9] 唐浩,代少生.Qt/Embedded在S3C2440平臺上的移植與開發[J]. 電視技術,2010(34):9?11.

[10] BLANCHETTE Jasmin, SUMMERFIELD Mark. C++ GUI Programming with Qt4 [M]. 2版.北京:電子工業出版社,2008.

主站蜘蛛池模板: 日韩免费毛片| 性欧美久久| 亚洲精品第一页不卡| 美女被操黄色视频网站| 国产亚洲欧美日韩在线一区二区三区| 日韩精品专区免费无码aⅴ| 亚洲人成网站日本片| 天天激情综合| 88av在线看| 蜜臀av性久久久久蜜臀aⅴ麻豆 | 国产乱视频网站| 伊人狠狠丁香婷婷综合色| 国产95在线 | 91色综合综合热五月激情| 国产精品亚洲精品爽爽| 99中文字幕亚洲一区二区| 精品久久高清| 国产成人精品高清不卡在线| 六月婷婷综合| 亚洲欧美在线精品一区二区| 无码AV高清毛片中国一级毛片| 40岁成熟女人牲交片免费| a亚洲视频| 亚洲欧美日韩视频一区| 久久国产高清视频| 99精品久久精品| 天天综合色天天综合网| 男人天堂伊人网| 国产精品制服| 亚洲人成网站18禁动漫无码| 91日本在线观看亚洲精品| 国产理论最新国产精品视频| 人人澡人人爽欧美一区| 国产一区二区在线视频观看| 日本道综合一本久久久88| 国产成人麻豆精品| 中字无码av在线电影| 97精品国产高清久久久久蜜芽| 又黄又爽视频好爽视频| 日本a∨在线观看| 伊人久久久久久久| 成人福利在线视频| 波多野结衣的av一区二区三区| 国产亚洲视频在线观看| 亚洲精品人成网线在线 | 996免费视频国产在线播放| 小说区 亚洲 自拍 另类| 日韩欧美国产三级| 婷婷六月综合| 免费激情网站| 午夜老司机永久免费看片| 亚洲中文字幕av无码区| 精品福利视频导航| 日韩精品一区二区三区swag| 久久综合五月| 狠狠干欧美| 最近最新中文字幕在线第一页 | 国产成熟女人性满足视频| 久久动漫精品| 久青草免费在线视频| 丰满的少妇人妻无码区| 欧美精品一二三区| 精品自窥自偷在线看| 精品久久人人爽人人玩人人妻| 欧美不卡二区| 一区二区三区国产| 久久久黄色片| 久久人人97超碰人人澡爱香蕉 | 国产亚洲欧美另类一区二区| 精品91自产拍在线| 人妻无码中文字幕一区二区三区| 91精品久久久久久无码人妻| 免费a在线观看播放| h网址在线观看| 9啪在线视频| 国产精品亚洲αv天堂无码| 国产日韩欧美在线视频免费观看 | 国产美女视频黄a视频全免费网站| 欧美精品黑人粗大| 日韩第一页在线| 国产网友愉拍精品视频| 欧美亚洲中文精品三区|