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