




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于Android手机控制的智能遥控器摘要:为了克服家用电器专用遥控器的缺陷,结合智能家居的相关概念和技术,提出一种基于Android手机的智能遥控器方案。利用Android平台的应用软件,通过本地蓝牙把控制信号发送到蓝牙模块,单片机通过蓝牙模块接收到Android平台发送过来的信号,进行相应的处理,接着通过红外发射模块将结果信号发射出去,从而实现智能手机遥控电器的功能。智能Android系统手机的普遍性将使得更多的智能化人性化的产品与之相结合,推动多功能,便携,智能为一体的发展趋势。 关键词 :智能遥控器;Android;蓝牙通信;红外线Android-based intelligent remote controllerAbstract: In order to overcome the defect of household appliances remote controller,we put forward a proposal about how the smarthone,which has installed Android System, acts as a remote controller based on the relevant concepts and techniques of intellignet household.Its designed that Mono-Chip Computer receives signals from the Android Platform by bluetooth module, which can receive control signals through local bluetooth by using applications of Android Platform,and processes them so that we can lauch the result signals using the infrared emission module to achieve the function of controlling electric appliance set by smartphone.The population of the android smartphone will bring more intelligent and humanized products with them and that is able to promote the development of multifunction,convience and intelligences cooperation.Key words: intelligent remote controller; android; bluetooth communication;infrared第一章 概述目前,市面上的家用电器如电视、空调、DVD等都有自己专用的红外遥控器;另外,还有一种叫万能遥控器,可以实现控制不同品牌的家用电器。它们都具有体积小、功耗低、成本低等优点。但缺点也很明显,如通信范围小,穿透力差,要求通讯双方具有无障碍直线信道等。Android系统是Google公司推出的开源手机平台,采用Linux内核,是一个标准化的、开放式的手机平台1。它具有强大的无线网接入能力,丰富、便捷的开发工具,和开放的平台等特点。基于当前安卓智能手机的普及,为了满足智能家居的需求,本文设计了一款基于Android手机控制的智能遥控器。把安卓智能手机作为控制平台,采用蓝牙通信接口,把安卓智能手机与家用电器结合在一起,从而实现手机的无线智能遥控的功能。第二章 设计原理2.1 方案选择红外协议需要载波调制信息,设计方案有:方案一:采用555定时器调制38KHz载波信号供单片机加载信息;555定时器成本低,性能可靠,但占空比调制困难,频率确定无法改变。方案二:采用单片机内部的PWM机制调制38KHz载波信号加载信息;这个方案节约空间、抗噪性能强,可随时改变频率与占空比,但程序不易编写众多遥控器一体对数据库存储需求大,方案设计有:方案一:采用AT24Cxx扩展外部存储器;方案二:采用自带高存储容量的存储器;综合以上考虑,本设计采用STC15系列单片机,这款单片机有多8位,7位,6位脉宽调节模式,能满足本方案的38KHz需求,且此单片机Flash程序存储区有61K,不需要扩展存储空间也能满足加载万能遥控器的数据库。功能满足的情况下,也为了不让硬件过剩的原则,我们采用了载波方案二和数据库存储方案二。2.2 电路设计本设计总模块框图图2-2 总模块框图电路设计主要分为电源模块,蓝牙模块,单片机控制模块,红外发射模块组成。其中电源模块采用电源适配器负责为其他模块电路提供稳定的5V电压。蓝牙模块负责与手机蓝牙经行相互通信,传递控制信息;单片机控制模块负责识别以及处理从蓝牙模块传递过来的控制信息,加载数据库 信息到PWM调制的38KHz载波上驱动红外发射模块;红外发射模块负责发送携带信息的红外光波,电视或空调等接收控制。2.3 蓝牙智慧盒软件设计IAP15F2K61S2单片机程序主要是用来接收、分析、处理蓝牙模块过来的数据,完成以后通过红外模块发射到电器上,最终达到遥控电器的目的。2.3.1蓝牙智慧盒软件流程框图软件采用模块化编程,把遥控器分为四种模式:蓝牙搜索模式:蓝牙智慧盒开机Android应用软件退出都会进入此模式自动搜索模式:用户在用自动搜索功能匹配电视机时进入此模式手动搜索模式:用户在用手动搜索功能匹配电视机时进入此模式用户模式: 用户在匹配电视完成后,进行遥控电视进入此模式每种模式都有编写相应函数供其调用。2.3.2红外编码程序 本软件包含了3种红外编码格式:三星的TC9012,松下的LC7464M和NEC的uPD6121G。受篇幅限制,这里主要介绍TC9012编码。 1、红外载波程序TC9012载波要求:频率 38KHz 占空比 1/3 载波波形参考图:38KHz 1/3 载波实测波形图:38.46KHz 1/3占空比由载波实测波形图可以看出,实测波形与参考波形频率误差为1.2%,占空比误差为-0.6%,满足TC9012载波要求,说明我们用PWM产生的38KHz载波的程序是正确的,下面是具体的程序代码。38KHz载波核心代码:SYSclk = 22118400HzPWM0频率为:SYSclk /(65536-TH0,TL0)/64= 22118400 /(65536-TH0,TL0)/64=38400Hz 2、红外发送数据程序 TC9012的一帧数据中含有32位码,包含两次8位用户码,8位数据码各8位数据码的反码。引导码由4.5ms的载波和4.5的载波关断波形所构成,以作为用户码、数据码的先导。引导码参考图 引导码实测:有载波4.52ms 引导码实测:无载波4.52ms 由以上两实测图可以看到,引导码有载波误差0.4%,无载波误差0.4%,是满足TC9012引导码开载波4.5ms+关载波4.5ms的要求的。数据0实测:高电平0.56ms 数据0实测:高低电平总长 1.14ms由以上两实测图可以看到,数据0高电平误差0%,高低电平总长误差1.3%,是满足TC9012数据0高0.56ms,总长1.125ms的要求的。数据1实测:高电平0.56ms 数据1实测:高低电平总长2.26ms由以上两实测图可以看到,数据0高电平误差0%,高低电平总长误差0.4%,是满足TC9012数据1高0.56ms,总长2.25ms的要求的。2.4 Android应用软件设计本应用软件的设计是为了能够搜索,连接,控制我们的蓝牙智慧盒,从而实现远程控制目的。开发工具 :Eclipse集成开发环境,JDK,Android-SDK。编译版本:android2.3.3。2.4.1 Android应用流程介绍下面是应用的具体流程; 2.4.2 资源规划和权限配置为了兼容不同手机屏幕尺寸和分辨率,放了三套不同分辨率和尺寸的图片分放在res/drawable-hdpi,res/drawable-mdpi,res/drawable-xhdpi目录。 本应用设计用到本地蓝牙适配器功能,多分辨率支持功能,窗体纵向显示功能的使用,在AndroidMainfest.xml中添加允许使用蓝牙功能的权限。并且界面的窗体均为纵向显示,这里设置窗体显示通过标签属性 android:screenOrientation=“portrait”。设置多屏幕分辨率支持2.4.3 欢迎窗体的设计与实现应用启动后是一个欢迎窗体,欢迎窗体全屏显示,3秒钟后自动跳转到TV主窗体。欢迎窗体的实现:1) 在onCreate()方法中初始化窗体信息,加载background为drawable目录下的welcome图片的布局文件activity_welcom.xml。2) 创建一个线程类实现3秒后自动跳转。2.4.4 TV主窗体的设计与实现TV主窗体的功能结构: 1) 图像按钮监听事件:连接状态为STATE_CONNECTED情况下,调用蓝牙服务的同步write方式发送3个字节控制信息给蓝牙智慧盒。2) Handler更新UI机制:创建一个handler类,当收到蓝牙服务反馈信息或读取到蓝牙智慧盒反馈信息时,更新UI界面提示用户。3) 蓝牙连接Activity参数捕捉:捕捉用户选择的蓝牙设备,并创建一个蓝牙服务类,传递此设备和handler。启动蓝牙服务开始蓝牙连接。4) 菜单监听事件:捕捉用户选择菜单的动作进行相应处理。菜单有:a蓝牙连接:跳到蓝牙搜索连接窗体。b手动搜索或自动搜索:连接状态为STATE_CONNECTED情况下,调用蓝牙服务的同步write方式写相应的3个字节控制信息给蓝牙智慧盒。c程序退出:系统退出。5) 捕捉返回事件:防止用户误操作增加了温馨提示功能,捕捉back事件onkeydown(),创建一个AlertDialog类,当用户点击确定时,程序退出,否则返回主界面。2.4.5蓝牙服务蓝牙服务是一个service类,提供蓝牙的连接,状态反馈,线程读写数据,启动和停止方法。1) 蓝牙连接: device.createRfcommSocketToServiceRecord(MY_UUID)获取套接口,mySocket.connect()套接口远程连接蓝牙智慧盒。并且通过bundler传递message给UI界面更新。2) 获取连接状态方法:返回当前蓝牙服务的状态。3) Start和Stop方法:线程的初始化和关闭线程。4) 同步Write方法:防止多线程的干扰,采用关键字synchronized同步写方法。创建一个线程类,传递参数byte写到套接口的字节流outputstream中。第三章 调试与测试功能测试:通过以上测试我们可以看到,本作品是能够达到我们的设计要求。结论基于Android手机的智能遥控器产品新颖,实用方便,倡导绿色、环保的生活理念,具有经济、社会效益。从用户的角度出发,多功能、低成本、强适应和人性化使得该产品将会获得发展契机。参考文献1 Ed Burnette.Hello,AndroidM.USA:Pragmatic Programmers,LLC,2010年2 林小茶.C语言程序设计(第二版)M.北京:中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 潍坊滨海疫情管理办法
- 网络药物安全管理办法
- 网络信息生态管理办法
- 环保咨询提成管理办法
- 出行安全培训演讲课件
- 2025年中医学的试题及答案
- 2025年发展对象培训班题库(附含答案)
- 出租屋培训课件
- 山西省太原市2024-2025学年八年级下学期期末历史试题(含答案)
- 2025年关于二手房屋买卖合同范本
- 外研版(2024)八年级上册英语Unit 1 This is me 教案(共6课时)
- 2025年GCP考试试题库含答案
- 消保化解案例课件
- 2025浙江省知识产权研究与服务中心编外招聘12人考试备考试题及答案解析
- 2025年度东营市专业技术人员继续教育公需科目试卷及答案
- 用浪浪山正确打开开学第一课~课件
- 2025年幼儿园膳食工作计划
- 贵州省黔东南苗族侗族自治州2024-2025学年七年级下学期7月期末考试地理试卷含答案
- 2025年中国电信校招试题及答案
- 【课件】重生之我是学霸 2025-2026学年高二上英语开学第一课
- 锦绣中国课件教学
评论
0/150
提交评论