基于AVR EVK1105的移動遠程桌面多媒體設備
一、項目概述
1.1 引言
在我們現(xiàn)在的日常生活中,計算機已經(jīng)很普及了,在很多家庭里電腦已經(jīng)像電視機一樣成為了一項必備的電器設備,但是要想操作電腦,即使是只做一些短暫的處理,也得坐到電腦前才能完成,有時很不方便,這就使得遠程操作電腦成為了一個很重要的技術。同時隨著智能終端設備的廣泛普及,智能設備的性能隨著技術的提高越來越好,現(xiàn)在已經(jīng)完全具有完成遠程操作電腦的能力。
所以,基于智能設備的遠程控制系統(tǒng)的研究與實現(xiàn)具有很大的意義。
1.2 項目背景
現(xiàn)在的這類系統(tǒng)的研究現(xiàn)狀大多是利用手機的短信功能或撥號給一個虛擬號碼的方式實現(xiàn)的,而且也只能對電腦進行一些簡單的無顯示的操作。短信方式的主要是利用GSM短信遙控開關技術,通過手機短信操作電腦;拔號振鈴方式主要是在撥打號碼前要先設置主機號碼,設置好主機號碼后,才能對電腦進行簡單控制。
現(xiàn)在實現(xiàn)的這些方式都有很多缺陷的地方,首先,限制太大,只有手機才能完成這些功能;其次,使用很不方便,用戶必須記住那些完成特定功能的特殊短信,一旦發(fā)送錯誤的短信控制將失敗,最不好的是控制失敗用戶也無法及時的知道,會耽誤很多事兒。最后,現(xiàn)在的這些實現(xiàn)功能太弱,只能做有限的操作,而且沒有圖形化的界面,給普通用戶帶來了很多不便。
二、需求分析
2.1 功能要求
1.“縮放、拉伸、拖動”功能
對由PC機傳輸過來的“桌面”進行縮放、拉伸、拖動定位,實現(xiàn)對“桌面”的精確顯示;
2.“事件響應”功能:
終端設備接收用戶的點擊、輸入事件,并將發(fā)送到PC機,PC機響應用戶事件。
3.“網(wǎng)絡傳輸”功能
在終端和PC機之間需要用網(wǎng)絡傳輸來完成數(shù)據(jù)的傳輸,從而讓PC端能響應用戶具體的操作,終端能顯示PC端的狀態(tài)
4.“流媒體”功能
如果只是單純的顯示PC端的畫面的話,不僅會讓用戶的體驗大打折扣,而且是對智能設備強大功能的極大浪費,在終端用戶一樣能看PC端存放的電影,聽PC端的音樂等多媒體資料。
2.2 性能要求
1.終端設備必須有每秒至少解碼并顯示25幀畫面的運算能力,這樣終端的遠程顯示才能流暢。
2.終端與目標機之間的網(wǎng)絡傳輸速度至少要有75KB每秒,才能使終端顯示流暢。
3.以上屬于普通性能要求,不包括高清文件的播放與龐大軟件的運行要求。
三、方案設計
3.1 系統(tǒng)功能實現(xiàn)原理
系統(tǒng)硬件結構框圖
各模塊協(xié)同合作,最終完成終端部分的工作。
顯示模塊用于顯示電腦端的桌面畫面,按鍵及觸摸屏模塊負責接收用戶的輸入,然后把輸入交給MCU統(tǒng)一管理,耳機模塊是流媒體播放時用做聲音的輸出的,最后就是網(wǎng)絡模塊部分了,由網(wǎng)絡芯片通過網(wǎng)絡接口與PC端相連通信,傳輸數(shù)據(jù)。
3.2 硬件平臺選用及資源配置
因為我們這個參賽題目與流媒體技術有很多共同點,所以申請32位的AVREVK1105,這樣能充分利用硬件平臺的特性,使我們的應用得到更好的實現(xiàn)。
3.3系統(tǒng)軟件架構
3.3.1按軟件的運行環(huán)境分類
1.電腦端軟件
(1)網(wǎng)絡通信模塊:這個模塊包括網(wǎng)絡數(shù)據(jù)的接收與發(fā)送,而且它只管接收和發(fā)送數(shù)據(jù);它接收來自終端的網(wǎng)絡數(shù)據(jù),然后把這些數(shù)據(jù)轉交給下面的輸入模塊進行具體的處理。
(2)輸入模塊:接受上面網(wǎng)絡模塊傳遞過來的用戶操作命令,根據(jù)用戶的具體操作命令調用具體的系統(tǒng)API在電腦端完成相應的操作。
(3)輸出模塊:采集電腦的屏幕顯示,然后編碼使要傳輸?shù)臄?shù)據(jù)量變小,然后把編碼后的數(shù)據(jù)傳送給上面的網(wǎng)絡通信模塊,進行往終端設備的傳輸。
2.終端軟件
(1)網(wǎng)絡通信模塊:這個模塊與電腦端的基本一樣,包括網(wǎng)絡數(shù)據(jù)的接收與發(fā)送,而且它只管接收和發(fā)送數(shù)據(jù);它接收來自電腦端的網(wǎng)絡數(shù)據(jù),然后把這些數(shù)據(jù)轉交給下面的輸入模塊進行具體的處理。
(2)輸入模塊:接受上面網(wǎng)絡模塊傳遞過來的電腦端的桌面圖像信息,對圖像信息進行解碼,然后將解碼好的數(shù)據(jù)送給顯示子模塊,顯示到終端設備上。
(3)輸出模塊:采集用戶對終端設備的操作,如點擊,拖拽等,然后調用標準化處理子模塊,把對終端設備的操作轉化為對電腦的標準操作并封裝記錄,然后把封裝好的標準操作信息數(shù)據(jù)傳送給上面的網(wǎng)絡通信模塊,進行往電腦端的傳輸。
3.3.2軟件整體模塊化分類
1.采集電腦桌面畫面模塊
這個模塊就使完成電腦端的桌面畫面信息的采集工作,可以用截屏等多種方式實現(xiàn),然后將采集的數(shù)據(jù)交給下面的編碼模塊。
2.編碼模塊
完成對電腦端桌面畫面信息的編碼工作,然后把編碼好的數(shù)據(jù)交給下面的網(wǎng)絡傳輸模塊。
3.網(wǎng)絡傳輸模塊
接受編碼好的數(shù)據(jù),然后把數(shù)據(jù)發(fā)送給指定ip的終端設備?;蛘呓邮軄碜越K端的設備數(shù)據(jù),然后發(fā)送給指定ip的電腦端。
4.終端設備解碼模塊
接受來自電腦端的編碼好的桌面畫面數(shù)據(jù),然后進行相應的解碼,解碼成位圖文件。
5.終端顯示模塊
按照解碼好的位圖文件,把圖像顯示在終端的顯示設備上。
6.終端操作采集模塊
采集用戶在終端上的操作信息,然后傳送給下面的操作數(shù)據(jù)標準化及封裝模塊。
7.操作數(shù)據(jù)標準化及封裝模塊
接受采集來的原始操作數(shù)據(jù),然后把它轉化成電腦端的標準的操作信息,并且封裝打包好。傳送給上面的網(wǎng)絡模塊。
8.電腦端的執(zhí)行模塊
接受上面網(wǎng)絡模塊傳送過來的標準操作數(shù)據(jù),調用特定的系統(tǒng)API完成相應的操作。
3.4 系統(tǒng)軟件流程
程序運行流程圖
3.5 系統(tǒng)預計實現(xiàn)結果
1.可以通過網(wǎng)絡在終端上實時的顯示電腦端的畫面。
2.可以通過對終端設備上的操作反應到電腦端上對電腦的相應操作。
3.可以利用開發(fā)平臺的特性,實現(xiàn)流媒體的播放。
評論