【正文】
O(先來先服務(wù) )和 Round Robin(時間片輪轉(zhuǎn) )兩種調(diào)度略。 Linux所使用的 BSD Socket不僅是網(wǎng)絡(luò)通信的接口,而且是一種進(jìn)程間通信的機(jī)制。應(yīng)用程序中的主要任務(wù)是處理消息,所以需要建立一個消息循環(huán),從應(yīng)用程序的消息隊列中檢索消息,并將每條消息發(fā)送到相應(yīng)的窗口處理函數(shù) (如 :Win Proc 函數(shù) )中,由窗口處理函數(shù)來進(jìn)行處理。 23 第五章 信息家電萬能遙控器的通信技術(shù)及相關(guān)協(xié) 議 藍(lán)牙協(xié)議 Blue z 信息家電萬能遙控器同家庭網(wǎng)關(guān)之間是通過藍(lán)牙進(jìn)行無線網(wǎng)絡(luò)通信的,在藍(lán)牙硬件模塊的基礎(chǔ)上還需要藍(lán)牙協(xié)議棧的支持。 26 ④ Fcs:校驗碼 (循環(huán)校驗碼,公式為 x16+xlZ+XS+l),計算校驗碼不包括標(biāo)志。界面初始大小為物理顯示屏的大小 (若物理顯示屏大小為 A*B(像素 ),則X=A,Y=B )。 ④ 、顯示界面。提高應(yīng)用程序響應(yīng)。 從界面動態(tài)生成技術(shù)和多線程技術(shù)方面對信息家電萬能遙控器應(yīng)用程序進(jìn)行了設(shè)計,并在 PC機(jī)上進(jìn)行了相應(yīng)的模擬。 最后,感謝我的家人對我學(xué)業(yè)的支持和鼓勵。 本文的主要研究成果有 : 使用了信息家電接口定義語言 IAIDL 將異構(gòu)的信息家電抽象到同一語言平臺,進(jìn)行功能描述,從而為在智能家居中控制和管理所有信息家電奠定了基礎(chǔ)。 萬能遙控器應(yīng)用程序的模塊圖 多線程 多線程機(jī)制的優(yōu)點 多線程程序作為一種多任務(wù)、并發(fā)的工作方式,具有以下優(yōu) 點: ①多線程是一種非?!肮?jié)儉”的多任務(wù)操作方式。為了節(jié)省界面資源,未帶約束的屬性 (或操作 )對應(yīng)的控件可能會放 在某個屬性集 (或約束操作集 )的顯示區(qū) 中。 3 在非具體信息家電設(shè)備的詳細(xì)信息界面上動態(tài)生成控件時,采用同種類別的控件(如 :Button控件 )。 5 . SOCKET Blue z藍(lán)牙協(xié)議棧為高層用戶應(yīng)用程序提供了網(wǎng)絡(luò) API接口支持,而網(wǎng)絡(luò) API的標(biāo)準(zhǔn) 25 形式就是向用戶提供一個套接字 (Socket這樣我們就涉及到了套接字編程 [26]0 利用 Socket實現(xiàn)通信采用的是客戶機(jī) /服務(wù)器模式,將請求服務(wù)的一端稱為客戶機(jī),而提供服務(wù)的一端稱為服務(wù)器。前者小巧靈活,而后者是在前者基礎(chǔ)上提供了更加強(qiáng)大的圖 形功能。 MiniGUI使用事件驅(qū)動作為應(yīng)用程序的創(chuàng)建構(gòu)架。 虛擬文件系統(tǒng) (VFS, Virtual File System)為系統(tǒng)內(nèi)核與不同的文件系統(tǒng)之間提供了統(tǒng)一的接口,是對各種文件系統(tǒng)的抽象。進(jìn)程管理包括進(jìn)程調(diào)度和進(jìn)程間通信。它原本被設(shè)計為桌面系統(tǒng),現(xiàn)在廣泛應(yīng)用于服務(wù)器領(lǐng)域,而更大的影 19 響在于它正逐漸的應(yīng)用于嵌入式系統(tǒng)。 ⑧ 2個 USB主機(jī)接口, 1個 USB設(shè)備接口 。 圖 33:萬能遙控器查詢功能事務(wù)流程圖 萬能遙控器對信息家電設(shè)備的控制功能的實現(xiàn)較為復(fù)雜,它涉及到家庭網(wǎng)關(guān)和信息家電設(shè)備,要求三者密切配合。 家庭網(wǎng)關(guān)統(tǒng)一管理著智能家居中所有的信息家電、設(shè)備。它所具有的可變屬性有 :開關(guān)、靜音、屏顯、音量、亮度、頻道和輸入模式 。 12 [CONST attribute:‘ 分辨率 ’ ]1366*768。 6 A表示可重復(fù) 0次或 I次 。對最終用戶來說這是透明的,無須知道該應(yīng)用程序接口的存在及其用法?;谏鲜鰡栴},本文提出一種解決方案 :結(jié)合嵌入式系統(tǒng)、網(wǎng)絡(luò)技術(shù)、無線通信技術(shù)以及手持移動終端技術(shù),設(shè)計一個能夠在智能家居中管理和控制所有 信息家電的、可 8 以直接與用戶交互的可視化嵌入式智能設(shè)備信息家電萬能遙控器。它是在家庭和社會的信息網(wǎng)絡(luò)相連之前,將家庭內(nèi)部的所有信息設(shè)備 (包括信息家電、燈光控制系統(tǒng)、安全控制系統(tǒng)等 )連接起來而形成的網(wǎng)絡(luò) 。信息家電不是獨立存在的,通常被稱為是合作的設(shè)備 (Cooperating Devices)。 2 ABSTRACT Since 21st century, embedded technology has e into high speed developed era, it has perated every aspect of human society, it exists in anywhere and is affecting the life of human profoundly. The ceaseless progress of science technologies enhances the social development level, people have advanced exigent demand for improving the life quality , too. But the traditional domestic appliance could not satisfy the needs of modern families. People need information , inter and intelligent information appliances. As a necessity, information appliances and intelligent houses will enter our future life. Besides, they will supply a fortable, safe and convenient environment for life. In modern families’ life, each traditional domestic appliance has its special controller, it will be inconvenient when we have to use so many controllers. To settle this problem, this paper designed a kind of controller to manage and control all information appliances. This paper introduces the Information Appliance Interface Definition Language (IAIDL), it adopts orientedobject method to describe the devices of information appliances, so that we can abstract the information appliances of different manufacturer to the same language platform, and manage and control them uniformly .: we design a hardware platform focus on embedded microprocessor S3C2410X, cut down and transplant Linux as the embedded OS, Mini GUI as the embedded graphics system, the Blue z as the Blue Tooth protocol stack, and use C to achieve the application of versa tile controller 。在智能家居中也存在著各種各樣的信息家電,為解決上述問題,本文提出了一個可以管理和控制所有信息家電的萬能遙控器。由于信息 家電采用了嵌入式技術(shù),從而降低了應(yīng)用界面的技術(shù)要求,增強(qiáng)了技術(shù)對用戶的透明度,讓用戶在使用時避免了與操作系統(tǒng)的直接接觸,只要通過日常積累起來的經(jīng)驗就能夠很方便的操作這些設(shè)備,減少了人機(jī)之間的技術(shù)障礙,突顯了應(yīng)用功能。 總的來說,智能家居的基本目標(biāo)是為人們提供一個舒適、安全、方便和高效率的生活環(huán)境,它所要實現(xiàn)的主要功能有 : 對信息家電和其他設(shè)備的控制、調(diào)節(jié)和監(jiān)測,如微波爐、洗衣機(jī)、燈光、電動窗簾、防盜報警器、火警檢測器、溫度和濕度控制器、各種手動開關(guān)和遙控器等。 總的來說,嵌入式系統(tǒng)具有以下特點 : ① 嵌入式系統(tǒng)“嵌入”到對象的體系中,對對象、環(huán)境和嵌入式系統(tǒng)自身具有嚴(yán)格的要求。 IAIDL 描述的內(nèi)容 屬性 屬性描述的是設(shè)備的某種特性?!? 屬性 ::一卜屬性類型 attribute:“‘”屬性名稱 ’’”, ]屬性值 “。 En um channel= (CCTV TVB,… …)。 [function:‘ 靜音 ’ references‘ 靜音 ’ ]void mute()。該系統(tǒng)的 C/S控制結(jié)構(gòu)圖如圖 31所示。 遙控器事務(wù)流程 信息家電萬能遙控器根據(jù)其功能進(jìn)行劃分,可分為信息查詢和設(shè)備控制。 ② SDRAM控制器 。作為一種非易失性存儲器, Flash在系統(tǒng)中通常用于存放程序代碼、常量表以及一些在系統(tǒng)掉電后需要保存的用戶數(shù)據(jù)等。 5可裁剪性。此外, Linux還支持 UNIX System V版本中的 3種進(jìn)程間通信機(jī)制 :消息隊列、信號量和共享內(nèi)存 ?;?Mini GUI的應(yīng)用程序一般通過 ANSI C庫以及 Mini GUI自身提供的 API來實現(xiàn)自己的 功能 。 ④ 多種控件的支持 。 除此之外,該協(xié)議還包括了主機(jī)控制接口 (HCI ),它屏蔽了底層硬件的差異性,向上層協(xié)議提供一個統(tǒng)一的通信接口。 約束 每種信息家電設(shè)備都具有自身的屬性和操作,這是其最基本的兩種特性。約定 3:凡在具體信息家電設(shè)備的詳細(xì)信息界面上出現(xiàn)的每個屬性對象,都為其生成兩個文本 Text 控件,它們所顯示的內(nèi)容由該信息家電設(shè)備對應(yīng)屬性的名稱和值提供。 處理非約束操作集 :針對該非約束操作集中的每個操作,按最先選擇策略搜索一個用于放置控件的對象 (為節(jié)省界面資源,填充在操作顯示區(qū)中仟何 允許的位置上 ),放置動態(tài)生成的控件至該行對象中。最重要的是,節(jié)省了嵌入式系統(tǒng)的寶 33 貴系統(tǒng)資源,這是利用了線程“輕”的優(yōu)點和條件變量可以避免輪詢的特點。 [2]韓江洪,張建軍等 .智能家居系統(tǒng)與技術(shù) [M].合肥 :合肥工業(yè)大學(xué)出版社, . [3]金永權(quán) .嵌入式系統(tǒng)、智能家電及家庭網(wǎng)絡(luò) [J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用, 2021,1(1):1215。 [15」吳亞萍,高軍,傅仲述 .基于 Blue z藍(lán)牙協(xié)議棧的個域網(wǎng)用戶節(jié)點的研究 [J].福建電 36 附錄 [1]彭華,尹輝 .C語言教學(xué)淺議 [J].教學(xué)與管理, 2021}4(1):4445. [2]唐贊玉,瞿紹軍,彭華 .基于 VB 的計算機(jī)考試復(fù)習(xí)系統(tǒng)的設(shè)計與實現(xiàn) [J].吉首 大學(xué)學(xué)報 (自然科學(xué)版 ), 2021,3(2):39420 [3]彭華 .Delphi 環(huán)境下 COM 包含與聚合的實現(xiàn) [[J].吉首大學(xué)學(xué)報 .(自然科學(xué)版 ),2021,6(4):4243. [4]彭華,劉宏,蔡城 .萬能遙控器的帶約束動態(tài)界面布局的研究 [J].微計算機(jī)信息,2021,1(4):9597. [5]朱匆,劉宏,彭華,唐贊玉 .利用專家系統(tǒng)構(gòu)建智能家居的研究與設(shè)計 [J].微計算機(jī)信息,2021J(4):7374. [6]彭華,唐贊玉,劉宏 .基于信息家電的推拉技術(shù)的研究 [[J].微計算機(jī)信息, 2021,5(5):5355. 37 致謝 本 文從選題到撰寫都是在我的導(dǎo)師的悉心指導(dǎo)下完成的。其次,程序結(jié)構(gòu)清晰,線索清楚,便于功能擴(kuò)展和代碼維護(hù)。其中,主程序模塊在操作系統(tǒng)啟動后開始執(zhí)行,負(fù)責(zé)其余模塊的加載、 CPU控制等等,是整個軟件系統(tǒng)的核心 。 29 動態(tài)界面布局的算法 搜索行對象算法 信息家電萬能遙控器上有三種界面,無論哪種界面的生成,都要在放置一個動態(tài)生成的控件之前,確定應(yīng)將其放置在哪個行中,因此需要使用“ 搜尋行對象算法”。例如 :電視的色彩調(diào)節(jié)、亮度調(diào)節(jié)、音量調(diào)節(jié)就是一組在邏輯上有關(guān)聯(lián)的操作集 .我們可以定義約束為 :能夠聚集若干相同性質(zhì)的屬性或操作 成為一個整體的邏輯關(guān)聯(lián)。 Blue z藍(lán)牙協(xié)議棧的結(jié)構(gòu)如圖 52所示。另外, Mini GUI還支持對話框、菜單、加速鍵和定時器等其他 GUI元素。 圖 42 MiniGUI與嵌入式操作系統(tǒng)的關(guān)系 MiniGUI的特性 21 作為操作系統(tǒng)與用戶應(yīng)用程序的中間件, MiniGUI 將底層操作系統(tǒng)及硬件平臺差別隱藏起來,并對上層用戶應(yīng)用程序提 供了一致的功能特性。 內(nèi)存管理涉及內(nèi)存空間分配,地址映射以及內(nèi)存保護(hù)等范疇,并支持虛擬內(nèi)存技術(shù)。 它非常靈活,各部