基于-Android智能家電控制器設(shè)計(jì)實(shí)現(xiàn)_第1頁
基于-Android智能家電控制器設(shè)計(jì)實(shí)現(xiàn)_第2頁
基于-Android智能家電控制器設(shè)計(jì)實(shí)現(xiàn)_第3頁
基于-Android智能家電控制器設(shè)計(jì)實(shí)現(xiàn)_第4頁
基于-Android智能家電控制器設(shè)計(jì)實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、-PAGE . z基于Android的智能家電控制器的設(shè)計(jì)與實(shí)現(xiàn) 章良 第二工業(yè)大學(xué) 計(jì)算機(jī)與信息學(xué)院 【容摘要】:此工程通過一個(gè)簡(jiǎn)單低本錢中間件,實(shí)現(xiàn)便攜智能設(shè)備與現(xiàn)在家庭中已有的通過紅外控制家電之間經(jīng)行通訊,實(shí)現(xiàn)不用任何改造,無需購置昂貴的終端,通過已有的便攜智能設(shè)備安裝對(duì)應(yīng)APP,既可以直接智能控制家中任意家電。家庭中的燈具,廚具等都稍加改造即亦可以通過你的智能終端控制?!娟P(guān)鍵詞】:智能家控 智能終端 APP 通訊 安卓工程背景創(chuàng)作意圖 隨著智能終端越來越普及,它給帶來的人機(jī)交互感徹底的顛覆了傳統(tǒng)的概念。人們對(duì)于智能和人機(jī)交互的控制感覺有了更深的體驗(yàn),對(duì)于智能的追求又到了一個(gè)新的紀(jì)元。智

2、能家電控制在電子興起的時(shí)候就被人們所提起過,并有好多人為此努力過,但是現(xiàn)在仍然處在一個(gè)很低的階段,如家電單一的遙控功能,窗簾按鈕等等都是。而且目前各個(gè)廠家各種不同規(guī)格的,不同通訊協(xié)議,在現(xiàn)在這個(gè)狀態(tài)很難統(tǒng)一。所以根據(jù)現(xiàn)在的情況我們制作一個(gè)中間產(chǎn)品連接起現(xiàn)有的家電和智能終端,到達(dá)通過最簡(jiǎn)單途徑實(shí)現(xiàn)智能家電控制的任務(wù)能到達(dá)很好的交互體驗(yàn)。實(shí)現(xiàn)目標(biāo)1.設(shè)計(jì)一個(gè)小巧中間件里面包括MCU控制面板,與智能終端通訊的藍(lán)牙模塊,與家電通訊的紅外通訊模塊,紅外模塊具有自我學(xué)習(xí)功能能通過對(duì)特定遙控學(xué)習(xí)并把它存儲(chǔ)在智能終端上以便下次繼續(xù)使用。 2.設(shè)計(jì)安卓智能操作系統(tǒng)終端APP,能很好實(shí)現(xiàn)的人機(jī)體驗(yàn)通過文件系統(tǒng)根據(jù)

3、擬定的協(xié)議與單片機(jī)通訊,根據(jù)不同家電給定特定的偽代碼能夠使單片機(jī)產(chǎn)生特定的通訊格式完成對(duì)不同家電的控制,間接實(shí)現(xiàn)家電通訊的統(tǒng)一,省去家庭中幾乎所有遙控器使得一個(gè)終端遙控所有的功能,APP具有上網(wǎng)更新及下載資料功能,提供學(xué)習(xí)到遙控代碼的功能。通過APP嵌入銷售信息增加對(duì)產(chǎn)品的銷售,APP使用量也是一筆很多財(cái)富。 圖1 功能示意圖 硬件設(shè)計(jì)1.MCU STC89C52簡(jiǎn)介STC89C52是STC公司生產(chǎn)的一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash存儲(chǔ)器。STC89C52使用經(jīng)典的MCS-51核,但做了很多的改良使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能。在單芯片上,擁有

4、靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。 具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)Flash,512字節(jié)RAM, 32 位I/O 口線,看門狗定時(shí)器,置4KB EEPROM,MA*810復(fù)位電路,3個(gè)16 位定時(shí)器/計(jì)數(shù)器,4個(gè)外部中斷,一個(gè)7向量4級(jí)中斷構(gòu)造兼容傳統(tǒng)51的5向量2級(jí)中斷構(gòu)造,全雙工串行口。另外 STC89C52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU 停頓工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停頓,

5、直到下一個(gè)中斷或硬件復(fù)位為止。最高運(yùn)作頻率35MHz,6T/12T可選 2.藍(lán)牙通訊 該工程采用的是低功耗透明傳輸?shù)乃{(lán)牙從機(jī)模塊HC-07,主要應(yīng)用方面是用于單片機(jī)跟電腦或者手機(jī)配對(duì)通訊。從機(jī)是被動(dòng)設(shè)備,只能等待手機(jī)或者電腦去配對(duì)它,它不可以主動(dòng)去搜索周圍的藍(lán)牙設(shè)備。從機(jī)模塊是透明串口,不需要單片機(jī)去做任何配置,也不用管藍(lán)牙的任何事情。對(duì)于單片機(jī)來講,模就是根串口線,手機(jī)配對(duì)連接了模塊,就相當(dāng)于手機(jī)跟單片機(jī)之間有根串口線連著了,直接串口通訊就行了。這樣簡(jiǎn)化了開發(fā)過程如果一門的去考慮藍(lán)牙的東西,就會(huì)是開發(fā)非常的復(fù)雜。用的方法是給模塊連接電源,因?yàn)槭褂脝纹瑱C(jī)是5V所以則連接模塊的5V排針接口。然后

6、把模塊的通信線R*D T*D連接到單片機(jī)的T*D和R*D,另外兩個(gè)引腳AT是給主從一體用發(fā)送AT指令用的的,RS是給模塊復(fù)位的,正常通訊不用連接。T*:傳送數(shù)據(jù)R*:接收數(shù)據(jù) 5V:提供5V電源3.3V:提供3.3V電源 RS:復(fù)位引腳GND:地線 AT: AT指令圖2 藍(lán)牙模塊底片圖圖3HC-07藍(lán)牙模塊實(shí)物圖3. 紅外學(xué)習(xí)遙控接收電路設(shè)計(jì)所有紅外遙控器的輸出都是用編碼后的串行數(shù)據(jù)對(duì)38kHz40kHz的方波進(jìn)展脈沖幅度調(diào)制而產(chǎn)生的。如果直接對(duì)已調(diào)波進(jìn)展測(cè)量,而其脈寬只有20多微秒,由于單片機(jī)的指令周期是微秒級(jí),會(huì)產(chǎn)生很大的誤差。因此,先要對(duì)已調(diào)波進(jìn)展解調(diào),對(duì)解調(diào)后的波形進(jìn)展測(cè)量。將C*20

7、216或一體化紅外接收頭解調(diào)出的遙控編碼脈沖直接連入STC89C52單片機(jī)的INT0和T0腳,定時(shí)器T0和T1都初始化為定時(shí)工作方式1,T0的GATE位置位。每次外部中斷首先停頓定時(shí),記錄T0、T1的計(jì)數(shù)值,然后將T0、T1的計(jì)數(shù)值清零,并重新啟動(dòng)定時(shí)。T0的值即為高電平脈寬,T1T0的值為低電平脈寬。T0、T1與紅外編碼信號(hào)脈寬的對(duì)應(yīng)關(guān)系并且存儲(chǔ)到外部?jī)?chǔ)蓄器24C256中等待發(fā)送調(diào)用。 圖4 紅外學(xué)習(xí)遙控接收電路設(shè)計(jì)4. 紅外學(xué)習(xí)遙控發(fā)送電路設(shè)計(jì)遙控信號(hào)的復(fù)原是通過STC89C52的T2特殊輸出口進(jìn)展二進(jìn)制脈沖碼的高電平與低電平的調(diào)制輸出,其中調(diào)制為利用單片機(jī)特殊功能進(jìn)展部調(diào)制這也是本設(shè)計(jì)的

8、一個(gè)創(chuàng)新點(diǎn),調(diào)制后的信號(hào)如圖3.5-2驅(qū)動(dòng)紅外發(fā)光管工作。該設(shè)計(jì)的硬件電路相對(duì)簡(jiǎn)單,因此系統(tǒng)的調(diào)試重點(diǎn)在軟件上。 圖5 紅外學(xué)習(xí)遙控發(fā)送電路設(shè)計(jì)軟件設(shè)計(jì) 1.紅外學(xué)習(xí)遙控程序設(shè)計(jì)設(shè)計(jì)的主要思路是通過對(duì)紅外二進(jìn)制脈沖的寬度進(jìn)展測(cè)量,從而獲得紅外遙控的波形信息,進(jìn)而實(shí)現(xiàn)存儲(chǔ)、復(fù)原。根據(jù)遙控信號(hào)編碼和發(fā)射過程,遙控信號(hào)的識(shí)別也叫解碼過程是去除38KHz載波信號(hào)后識(shí)別出二進(jìn)制脈沖碼中的0和1。紅外接收頭的解調(diào)信號(hào)送到INT0引腳,由部定時(shí)器完成上下電平長(zhǎng)度的采集,然后進(jìn)展數(shù)據(jù)保存,由單片機(jī)進(jìn)展高電平與低電平的寬度的測(cè)量。遙控信號(hào)的復(fù)原是通過P1.0T2輸出二進(jìn)制已調(diào)脈沖。對(duì)遙控信號(hào)復(fù)原的調(diào)制在單片機(jī)的

9、部進(jìn)展,利用了定時(shí)器2的捕獲工作方式,定時(shí)器2是一個(gè)16位定時(shí)/計(jì)數(shù)器。它既可當(dāng)定時(shí)器使用,也可作為外部事件計(jì)數(shù)器使用,其工作方式由特殊功能存放器T2CON的C/T2位選擇。定時(shí)器2有三種工作方式:捕獲方式,自動(dòng)重裝載向上或向下計(jì)數(shù)方式和波特率發(fā)生器方式,工作方式由T2CON的控制位來選擇,在捕獲方式下,通過T2CON控制位E*EN2來選擇兩種方式。如果E*EN20,定時(shí)器2是一個(gè)16位定時(shí)器或計(jì)數(shù)器,計(jì)數(shù)溢出時(shí),對(duì)T2CON的溢出標(biāo)志TF2置位,同時(shí)激活中斷。如查E*EN21,定時(shí)器2完成一樣的操作,而當(dāng)T2E*引腳外部輸入信號(hào)發(fā)生1至0負(fù)跳變時(shí),也出現(xiàn)TH2和TL2中的值分別被捕獲到RCA

10、P2H和RCAP2L中。另外,T2E*引腳信號(hào)的跳變使得T2CON中的E*F2置位,與TF2相仿,E*F2也會(huì)活中斷。本系統(tǒng)正是利用了捕獲方式的RCAP2H和RCAP2L自動(dòng)重裝載,產(chǎn)生38K調(diào)制信號(hào),準(zhǔn)備復(fù)原的0,1信號(hào)的調(diào)制通過TF2標(biāo)志進(jìn)展調(diào)制,該方案不僅合理的利用硬件資源,而且還提高了系統(tǒng)的可靠性。2.安卓程序設(shè)計(jì) 2.1android簡(jiǎn)介 Android是一種以Linu*為根底的開源代碼操作系統(tǒng),主要應(yīng)用于手機(jī),因?yàn)槠淞己玫娜藱C(jī)交互能力和能夠安裝使用眾多功能各異的應(yīng)用軟件而深受人們喜愛,基于Android 2.1版本開發(fā)的智能家電控制系統(tǒng)。2.2Android開發(fā)環(huán)境的搭建 首先在網(wǎng)

11、上下載JDK4.0、Eclipse3.4(Europe) 、Eclipse IDE for java Developers。Android SDK1.5 、APT插件。安裝JDK將下載好的JDK安裝好以后,設(shè)置環(huán)境變量步驟如下:我的電腦-屬性-高級(jí)-環(huán)境變量-系統(tǒng)變量中添加以后環(huán)境變量:JAVA_HOME值為:D:Program FilesJava (你安裝JDK的目錄)在開場(chǎng)追加%JAVA_HOME%bin;安裝完成后,可以檢查JDK是否安裝成功。翻開cmd窗口,輸入java-version查看JDK版本信息,出現(xiàn)以后畫面表示安裝成功。平臺(tái)安裝圖1安裝Eclipse將根據(jù)上面給的地址下載后安

12、裝即可,也可以選擇下載綠色版,解壓即可使用。安裝Android JDK運(yùn)行SDK Setup.e*e,點(diǎn)擊Available Packages。如果沒有出現(xiàn)可安裝的包,請(qǐng)點(diǎn)擊Settings,選中Misc中的Force s:/.這項(xiàng),再點(diǎn)擊Available Packages。選擇希望安裝的SDK及其文檔或者其它包,點(diǎn)擊Installation Selected、AcceptAll、Install Accepted,開場(chǎng)下載安裝所選包。在用戶變量中新建PATH值為:Android SDK中的tools絕對(duì)路徑本機(jī)為D:AndroidDevelopandroid-sdk-windowstools

13、。平臺(tái)安裝圖2點(diǎn)擊確定重新啟動(dòng)計(jì)算機(jī),重啟之后進(jìn)入cmd窗口,檢查SDK是不是安裝成功,運(yùn)行android h ,如果有類似下面的輸出,表示安裝成功。平臺(tái)安裝圖3安裝ADT翻開Eclipse IDE,進(jìn)入菜單中的help-Install New Software。點(diǎn)擊Add.按鈕,彈出對(duì)話框要求輸入Name和Location:Name自己隨便取,Location輸入dl-ssl.google./android/eclipse。如下列圖所示:平臺(tái)安裝圖4確定返回后,在work with后的下拉列表中選擇我們剛剛添加的ADT,我們會(huì)看到下面出有Developer Tools,展開它會(huì)有Androi

14、d DDMS和Android Development Tool,勾選他們。 如下列圖所示:平臺(tái)安裝圖4完成之后就按提示一步一步ne*t:= 1 * romani、選擇Window Preferences.= 2 * romanii、在左邊的面板選擇Android,然后在右側(cè)點(diǎn)擊Browse.并選中SDK路徑,本機(jī)為:D:AndroidDevelopandroid-sdk-windows= 3 * romaniii、點(diǎn)擊Apply、OK。配置完成。創(chuàng)立AVD為使Android應(yīng)用程序可以在模擬器上運(yùn)行,必須創(chuàng)立AVD。在Eclipse中。選擇Windows Android SDK and AVD

15、 Manager。點(diǎn)擊左側(cè)面板的Virtual Devices,再右側(cè)點(diǎn)擊New。填入Name,選擇Target的API,SD Card大小任意,Skin隨便選,Hardware目前保持默認(rèn)值。點(diǎn)擊Create AVD即可完成創(chuàng)立AVD。注意:如果你點(diǎn)擊左側(cè)面板的Virtual Devices,再右側(cè)點(diǎn)擊New,而target下拉列表沒有課選項(xiàng)時(shí),這時(shí)候你:1) 點(diǎn)擊右側(cè)面板的Available Packages,在右側(cè)勾選 s:/dl-ssl.google./android/repository/repository.*ml,如下圖:平臺(tái)安裝圖52) 然后點(diǎn)擊Install Selected

16、按鈕,接下來就是按提示做就行了要做這兩步,原因是在1.3、Android SDK安裝中沒有安裝一些必要的可用包(Available Packages。這樣安卓的開發(fā)環(huán)境就搭好了。2.3主要開發(fā)容(1)應(yīng)用*ML語言經(jīng)行設(shè)計(jì)局部代碼:gjz.bluetooth.AnimationTabHost (2)調(diào)用藍(lán)牙API與藍(lán)牙通訊。 /* 取得默認(rèn)的藍(lán)牙適配器 */private BluetoothAdapter mBtAdapter = BluetoothAdapter.getDefaultAdapter(); Override public void onStart() super.onStart

17、(); / If BT is not on, request that it be enabled. if (!mBtAdapter.isEnabled() IntentenableInten=new Intent(BluetoothAdapter.ACTION_REQUEST_ENABLE); startActivityForResult(enableIntent, 3); (3)用java寫文件系統(tǒng),并擬定協(xié)議儲(chǔ)存各個(gè)遙控型號(hào)的數(shù)據(jù)類型。import java.io.*; class FileTest1 public static void main(String args) System.out.println(path separator +File.pathSeparator); System.out.println(Separator +File.separator); File f=new File(d:temp,te*t); System.out.println(path +f.getPath(); System.out.println(absolute path+f.getAbsolutePath(); 結(jié)論本工程研究正處

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論