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

手機端智能家居萬能遙控器設計

2018-07-12 04:47:36萬欣
新型工業化 2018年6期
關鍵詞:按鈕單片機界面

萬欣

(北京天融信科技有限公司,北京 100085)

0 引言

隨著智能家居的逐步普及,傳統的紅外遙控器的缺點日益凸顯。特別是當家庭中出現大量各種型號、各種功能的紅外遙控器時,就會大大降低用戶體驗[1]。在現代化智能家居系統中,設計一種能夠整合各種家電遙控器功能的系統就能大大改善家電系統的用戶體驗,同時又具有不錯的市場潛力。在開發新型智能家居系統時,也能提供一定的借鑒。

1 系統簡介

1.1 系統整體框架

整個系統包括手機端的萬能遙控器App以及由App控制的MSP430遙控模塊,再由MSP430遙控模塊通過戶內遙控模塊發射紅外信號進而控制室內各種家電。本文著重介紹萬能遙控器App的框架結構以及設計過程,如圖1所示。

1.2 系統框架描述

圖1 系統整體框圖Fig.1 System frame chart

用戶可以在手機客戶端,按手機遙控器界面給外設發送指令,外設接收指令,識別指令是學習還是發射,如果是學習,則等待學習。此時拿遙控器對準萬能遙控器的學習端口進行學習,學習結束后再次回到等待接收指令狀態。如果是發送,則執行相應按鍵發射紅外信號進行對家居的控制。在界面最上方又信息提示欄,提示用戶當前手機的狀態,是學習狀態還是使用狀態,并且顯示當前所按的按鍵[2]。按下menu按鈕則可進行不同遙控器界面的切換。

2 遙控器界面設計實現

本設計中的遙控器界面設計主要包括頁面布局、文本框、按鈕以及menu列表幾部分[3]。本文使用的是eclipse及ADT插件作為開發環境。具體程序編寫時使用的是Java語言。

2.1 布局管理器

安卓的布局管理器包括線性布局,表格布局,幀布局,相對布局,網格布局,絕對布局等。本文只用到了線性布局,表格布局,相對布局[4]。線性布局對應的類是LinearLayout,它可以將其中的組件按一定順序排列起來。表格布局對應的類是TableLayout,它繼承自LinearLayout,用表格布局可以方便地用行和列來安排組件,自己并不需要指明有多少行多少列,表格布局是通過添加TableRow來控制行和列,其中一個TableRow代表一行。相對布局對應的類是RelativbeLayout,顧名思義,它是采用先定義一個組件的位置,然后其它組件是相對于這個組件按一定規則排列。

2.2 界面布局

首先分析,遙控器界面由諸多按鍵組成,按鍵的排列方式也不是一直不變規則的,因此拿電視遙控器舉例,它有一些普通的圓形按鍵按規則排列,還有音量加減,頻道加減,上下左右等按鍵按較復雜的方式排列[5]。這里本文大致將組件分為兩類,一類是排列規則單一的,本文用表格布局,另外一類排列規則稍顯麻煩的我用相對布局排列。最外層是線性布局,然后是表格布局,一行一行進行組織安排。遇到較復雜的例如音量鍵,頻道加減鍵,上下左右ok鍵等我則在表格布局中又添加了相對布局進行相應的組織[6]。

2.3 文本框

本文在界面上面定義了兩個文本框用來顯示手機當前狀態和當前按鍵。android:id="@+id/textView2"這句話相當于這個文本框的身份證明,這句話在整個安卓應用工程中是唯一的,因為本文按相應按鍵的時候提示框大的內容會跟著相應變化,所以可以用到findViewById(R.id.id名)的方法來找到這個文本框[7]。android:Text="Key:",這句話用來設置此文本框顯示的內容。

2.4 按鈕

按鍵是本文界面設計的重要部分,按鍵的大小,形狀,狀態變化,布局都應該認真考慮。Android:id="@+id/button1",這句話賦予了一個按鍵唯一的身份。Android:layout_width="50dp"android:layout_height="50dp" ,這兩句話規定了按鈕的大小,android:background="@Drawable/button_selector",這一句話設置了某個按鈕的背景圖片,通過@drawable這樣的語法可以調用drawable目錄內的資源文件,可以是圖片資源,也可以是用程序繪制的圖片XML資源。android:text="靜音",設置按鍵顯示的文字android:textColor="#fff"設置文字顏色。android:textSize="12dp"這句話用來設置文字的大小位12像素[8]。android:onClick="clickHandler1"這句話用來給一個按鈕添加單擊事件監聽器。后面可以在java源代碼中的相應函數如public void clickHandler1(View view){···}中編寫單擊之后所要執行的動作。

2.5 menu列表的制作

為了實現多個遙控器界面之間的切換,本文用到了menu功能,點擊手機上的menu按鍵可以實現多個遙控器界面之間的切換,進而切換對不同用電器的控制[9],效果如圖2所示。

圖2 遙控界面的切換功能Fig.2 Switching function of remote control interface

3 手機客戶端與發送模塊的通信

本文選擇2FSK作為基帶信號的調制方法。即將手機客戶端發送的指令用2FSK調制后再發送給單片機[10]。單片機再將所接收信號解調成其能識別的信號,進一步執行發送及控制功能。

3.1 2FSK信號調制

首先確定2FSK信號的位數,這取決于按鍵的個數,為了方便研究測試與設計,簡化了按鍵的數量,這里設按鍵為32個(后面可以在此基礎上以相同的原理添加),于是需要5位二進制數字才能完全表示,從00000~11111分別代表按鍵0~31??紤]到進行2FSK解調時需要設置起始位,于是用一個周期為1 KHz的正弦波作為起始信號[11]。下面以01010對應的2FSK信號制作為例,簡單講述這些2FSK信號的制作。

圖3 用Cool Edit Pro生成的1 KHz的正弦波Fig.3 1 KHz sine wave from Cool Edit Pro

3.2 2FSK信號的發射

在安卓開發中,關于任務的執行豐富了事件監聽器,系統有一個主線程,一直執行。當某個時間發生,監聽器就會發現,但是它不會去打擾系統的主線程,而獨自處理,處理完畢后繼續進行偵查工作。下面的這段代碼是某個按鈕的單擊時間監聽程序,當該按鈕用戶單擊后便會被執行[12]。首先它先找到信息提示Key,讓其顯示當前的按鍵值,然后創建一個MediaPlayer類的對象MediaPlayer mPlayer0 =MediaPlayer.create(this,R.raw.sig_05),盛放所要播放的音頻信號,然后mPlayer0.start()開始播放[13]。

3.3 2FSK信號的解調

結合其調制原理,我們只要識別出正弦波信號的頻率便可解調基帶信號。我們使用的解調設備一般是單片機,單片機可以直接識別出模擬信號[14]。本文使用的的是大家通用的首先將正弦波轉換為單片機識別的高低電平,然后通過單片機的、中斷或者計時器來測量出高低電平的時間,然后通過周期換算出頻率。由圖3可以清楚看出上圖中低電平有較大差別,通過中斷大致計算出低電平的時間,不用太精確便可以得到2FSK的解調信號,01010這里我們發現高電平的差別沒有低電平明顯,這是因為偏置電路的設計,因為下面的電阻阻值大于上面電阻的阻值,才導致這樣的現象,應該使兩個分壓電阻盡量相等[15]。圖4是2FSK解調的硬件電路。

程序流程:

第一步:進入中斷;

第二步:等待低電平過去;

第三步:迎接高電平到來,循環5次,分別記錄每組高電平時間,如果>250us則記為0,否則記為1;

第四步:計算鍵值Key = 1*Rec[4]+2*Rec[3]+4*Rec[2]+8*Rec[1]+16*Rec[0]。這里為了防止死循環,每次等待電平過去的while循環里面都有一個附加條件err>0,在循環體里面執行err--,這樣可以防止陷入死循環。

圖4 2FSK解調硬件電路Fig.4 2FSK demodulation hardware circuit

4 結論

本文完整概述了對萬能遙控器App的設計過程,并對這款APP做了如下測試:按相應按鍵用示波器觀察所發送的信號,實驗結果顯示正確率為100%。測試結果表明此款萬能遙控器設計效果出色,能夠滿足一般家庭對家用電器的手機端控制需求。但在用戶體驗方面,此款App還有很大的改進空間。

猜你喜歡
按鈕單片機界面
這些按鈕能隨便按嗎?
當你面前有個按鈕
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
基于單片機的SPWM控制逆變器的設計與實現
電子制作(2019年13期)2020-01-14 03:15:28
基于單片機的層次漸變暖燈的研究
電子制作(2019年15期)2019-08-27 01:12:10
基于單片機的便捷式LCF測量儀
電子制作(2019年9期)2019-05-30 09:42:02
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
人機交互界面發展趨勢研究
手機界面中圖形符號的發展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
內心不能碰的按鈕
商業評論(2014年9期)2015-02-28 04:32:41
主站蜘蛛池模板: 午夜a视频| 欧美中文字幕在线视频| 国产精品一区二区在线播放| 无码国产伊人| 久久久久亚洲AV成人人电影软件| 国产国语一级毛片| 国产伦片中文免费观看| 亚洲色图欧美在线| 国产黑人在线| 国产精品久久久久久久伊一| 亚洲va视频| 激情五月婷婷综合网| 玖玖免费视频在线观看| 久综合日韩| 青草精品视频| 71pao成人国产永久免费视频 | 手机看片1024久久精品你懂的| 激情六月丁香婷婷四房播| 亚洲成人黄色网址| 久久国产V一级毛多内射| 毛片卡一卡二| 午夜老司机永久免费看片| 精品视频在线一区| 成年人国产网站| 一级不卡毛片| 精品国产Av电影无码久久久| 制服丝袜一区二区三区在线| 99在线免费播放| 国产成人AV大片大片在线播放 | 精品一区二区无码av| 国产自在线播放| 精品免费在线视频| 国产成人欧美| 国产jizzjizz视频| 国产欧美视频在线观看| AV老司机AV天堂| 国产在线精彩视频论坛| 国产日本一线在线观看免费| 99青青青精品视频在线| 久久久久无码国产精品不卡| 国产真实乱了在线播放| 亚洲国产91人成在线| 国产视频一二三区| 欧美a网站| 国产成人成人一区二区| 老汉色老汉首页a亚洲| 9丨情侣偷在线精品国产| 国产在线自乱拍播放| 国产精品网址在线观看你懂的| 国产精品页| 日韩黄色大片免费看| 亚洲精品无码人妻无码| 国产精品 欧美激情 在线播放 | 亚洲免费播放| 国产一区在线视频观看| 2022精品国偷自产免费观看| 欧美日韩北条麻妃一区二区| 国产精品福利尤物youwu| 国产激爽大片高清在线观看| 青青草原国产av福利网站| 九色综合视频网| 欧美日韩91| 五月综合色婷婷| 国产日韩丝袜一二三区| 色婷婷亚洲综合五月| 日韩欧美国产另类| 9966国产精品视频| 农村乱人伦一区二区| 欧美专区日韩专区| 亚洲国产天堂在线观看| 国产精品久久自在自线观看| 国产丰满大乳无码免费播放| 免费可以看的无遮挡av无码| 一级毛片在线播放免费观看| 国产成年女人特黄特色毛片免 | 手机永久AV在线播放| 精品伊人久久久香线蕉 | 在线观看91香蕉国产免费| 日韩精品一区二区三区大桥未久| 操美女免费网站| 日韩精品一区二区三区中文无码| 91丝袜在线观看|