Android手机应用开发技术红外遥控器开发实习报告.docx

上传人:b****0 文档编号:17535836 上传时间:2023-07-26 格式:DOCX 页数:70 大小:386.93KB
下载 相关 举报
Android手机应用开发技术红外遥控器开发实习报告.docx_第1页
第1页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第2页
第2页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第3页
第3页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第4页
第4页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第5页
第5页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第6页
第6页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第7页
第7页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第8页
第8页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第9页
第9页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第10页
第10页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第11页
第11页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第12页
第12页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第13页
第13页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第14页
第14页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第15页
第15页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第16页
第16页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第17页
第17页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第18页
第18页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第19页
第19页 / 共70页
Android手机应用开发技术红外遥控器开发实习报告.docx_第20页
第20页 / 共70页
亲,该文档总共70页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

Android手机应用开发技术红外遥控器开发实习报告.docx

《Android手机应用开发技术红外遥控器开发实习报告.docx》由会员分享,可在线阅读,更多相关《Android手机应用开发技术红外遥控器开发实习报告.docx(70页珍藏版)》请在冰点文库上搜索。

Android手机应用开发技术红外遥控器开发实习报告.docx

Android手机应用开发技术红外遥控器开发实习报告

 

河南科技大学

生产实习报告

实习主题Android手机应用开发技术

实习单位洛阳科洛信息技术有限公司

学院软件学院

专业班级软件工程151

学生学号153251090108

学生姓名韩哲宇

指导教师张虎马啸

2016-2017学年第一学期

生产实习任务书

姓名

韩哲宇

学号

153********8

班级

软件工程(专升本)

所学专业

软件工程

实习单位

洛阳科洛信息技术有限公司

指导教师

张虎马啸

实习主题(方向)

Android手机应用开发技术

实习内容

通过本课程设计,使学生巩固android的基本概念、原理和技术,在完成一个小型程序的设计过程中,学习android软件设计思想、方法,锻炼学生软件设计、查阅及运用资料的能力,以达到强化学生的实践意识,提高学生实际动手能力和创新能力的目的。

实习目标和要求

任务要求:

1、将遥控各种家用电器的遥控器们集合起来,利用它们都是利用发射红外线进行遥控的共同特点,将功能集合在一部智能手机上。

这种高度集合、统一的特征是本项目的优势。

2、利用智能手机的耳机接口输出的音频电压信号传出控制外接模块发射红外线遥控信号的电压信息。

利用耳机接口的巨大优势是,相比于各种手机不同型号的USB接口,耳机接口可以使外接模块适合各种安卓系统智能手机,并且巧妙利用了音频电压信号这种信息载体,通过耳机口输出的音频电压信号,对外接模块发射红外遥控信号进行控制。

3、软件部分所实现的功能是:

遥控器面板的选择以及绘制;

遥控器面板上的按键与对应要发出的红外遥控信号所对应的控制音频信号之间的触发关系对应;

音频电压信号从耳机接口的输出。

时间进度安排

序号

起止日期

工作内容

1

9.5-9.8

Java、Android基础学习

2

9.9-10.28

学生进行项目功能模块设计、编码、测试

3

10.31

程序验收

4

11.1-11.10

根据设计内容形成课程设计文档,撰写课程设计报告

5

11.11

上交课程设计报告

指导教师意见:

指导教师:

2016年11月14日

 

生产实习教学计划

学年学期:

2016~2017学年第一学期专业班级:

软工151

周次

工作日

日期

时间

教学环节

内容

实习部门

指导/授课教师

第一周

周一

9月5日

上午

讲课

Java核心语法

研发部

马啸

下午

实践

基本语法练习

研发部

马啸

周三

9月7日

上午

讲课

android中的面向对象

研发部

马啸

下午

实践

面向对象集合基本练习

研发部

马啸

周五

9月9日

上午

讲课

android中java的多线程

研发部

马啸

下午

实践

Android中的java编程练习

研发部

马啸

第二周

周一

9月12日

上午

讲课

重新定义手机软件开发方式,

手机软件开发注意1

研发部

马啸

下午

讲课

重新定义手机软件开发方式,

手机软件开发注意2

研发部

马啸

周三

9月14日

上午

讲课

 android开发七大件1_activity

研发部

马啸

下午

实践

Activity跳转练习

研发部

马啸

周五

9月16日

上午

实践

 android开发七大件2_activity

研发部

马啸

下午

实践

Activity跳转传参

研发部

马啸

第三周

周一

9月19日

上午

实践

Android开发七大件3

研发部

马啸

下午

讲课

使用Intent实现拍照练习

研发部

马啸

周三

9月21日

上午

讲课

Android开发七大件4

研发部

马啸

下午

实践

使用service完成多线程下载练习

研发部

马啸

周五

9月23日

上午

讲课

Android开发七大件5

研发部

马啸

下午

实践

使用Laucher制作APP启动效果

研发部

马啸

第四周

周一

9月26日

上午

讲课

Android开发七大件6

研发部

马啸

下午

实践

使用Notification完成设计模式案例

研发部

马啸

周三

9月28日

上午

讲课

Android开发七大件7

研发部

马啸

下午

实践

BroadcastReceiver接收系统通知

研发部

马啸

第五周

周五

9月30日

上午

讲课

生产实习学习目标介绍

研发部

马啸

下午

讲课

生产实习学习目标介绍

研发部

马啸

周六

10月8日

上午

讲课

红外遥控器原理

研发部

马啸

下午

实践

学习红外遥控器电路图

研发部

马啸

第六周

周一

10月10日

上午

讲课

红外遥控器的解码1

研发部

马啸

下午

实践

红外遥控解码过程

研发部

马啸

周三

10月12

上午

讲课

红外遥控器的解码2

研发部

马啸

下午

实践

空调红外遥控解码

研发部

马啸

周五

10月14

上午

讲课

红外遥控设备选择

研发部

马啸

下午

实践

耳机插孔红外设备原理

研发部

马啸

第七周

周一

10月17

上午

讲课

红外遥控APP界面讲解1

研发部

马啸

下午

实践

制作设备选择界面

研发部

马啸

周三

10月19

上午

讲课

红外遥控APP界面讲解2

研发部

马啸

下午

实践

制作设备控制界面

研发部

马啸

周五

10月21

上午

讲课

红外控制开发1

研发部

马啸

下午

实践

Android系统识别红外设备驱动

研发部

马啸

第八周

周一

10月24

上午

讲课

红外控制开发2

研发部

马啸

下午

实践

Android系统识别红外设备驱动

研发部

马啸

周三

10月26

上午

讲课

红外控制开发3

研发部

马啸

下午

实践

发送编码识别空调开关

研发部

马啸

周五

10月28

上午

讲课

红外控制开发4

研发部

马啸

下午

实践

发送编码识别空调开关

研发部

马啸

第九周

周一

10月31

上午

讲课

红外控制开发5

研发部

马啸

下午

实践

识别空调开关后适配空调各种控制键

研发部

马啸

周三

11月2

上午

讲课

红外控制开发6

研发部

马啸

下午

实践

控制空调温度

研发部

马啸

周五

11月4

上午

讲课

红外控制开发7

研发部

马啸

下午

实践

空调控制功能测试

研发部

马啸

第十周

周一

11月7

上午

实践

撰写报告

研发部

马啸

下午

实践

撰写报告

研发部

马啸

周三

11月9

上午

实践

撰写报告

研发部

马啸

下午

实践

撰写报告

研发部

马啸

周五

11月11

上午

实践

撰写报告

研发部

马啸

下午

实践

撰写报告

研发部

马啸

第一章需求分析6

1.1生产实习题目6

1.2生产实习任务及要求6

1.3软硬件运行环境及开发工具6

第二章系统设计6

2.1系统分析6

2.2系统的主要功能7

第三章详细设计7

3.1系统的主要功能7

3.2软件部分11

3.3软、硬件的配合11

3.4软件界面效果13

3.5主要代码15

第四章测试用例文档46

4.1测试范围46

4.2测试目标46

4.3测试环境46

4.4测试工具46

4.5功能测试46

4.6被测试对象(单元)的介绍47

4.7测试环境与测试辅助工具的描述47

4.8功能测试47

第五章生产实习总结与体会49

参考文献49

第一章需求分析

1.1生产实习题目

通过本生产实习,使学生巩固android的基本概念、原理和技术,学会使用java语言进行android红外遥控程序的开发,将理论与实际相结合,完成一个红外遥控器的设计与实现,并在此基础上强化学生的实践意识,提高其实际动手能力和创新能力。

1.2生产实习任务及要求

将手机变成红外遥控器,控制空调、电视、DVD,实现遥控器常用功能。

要求完成的app适配红米4、HTC、samsung 等自带红外设备的手机,能够控制空调的开关、风量、温度、模式;能够控制电视的开关、换台;控制DVD的碟片出仓、换曲。

1.3软硬件运行环境及开发工具

硬件:

装有windows7系统的x86计算机

软件:

eclipsejdk1.7android-sdk4.2

第二章系统设计

2.1系统分析

本系统在利用现已成熟的且功能十分强大的安卓智能手机操作系统为软件基础,配合一种合适各种手机的外接硬件模块,通过将手机耳机接口输出的高低电压信息在外接模块内转化为红外线输出,达到能遥控各种以红外遥控器控制的家用电器。

本系统的创新点有如下两点。

其一是将各个红外遥控器的功能集合在一部智能手机上的集合性。

其二是利用了耳机接口输出的音频电压信号进行信息的传输,保证软硬件的高度适应性。

2.2系统的主要功能

一是将遥控各种家用电器的遥控器们集合起来,利用它们都是利用发射红外线进行遥控的共同特点,将功能集合在一部智能手机上。

这种高度集合、统一的特征是本项目的优势。

二是利用智能手机的耳机接口输出的音频电压信号传出控制外接模块发射红外线遥控信号的电压信息。

利用耳机接口的巨大优势是,相比于各种手机不同型号的USB接口,耳机接口可以使外接模块适合各种安卓系统智能手机,并且巧妙利用了音频电压信号这种信息载体,通过耳机口输出的音频电压信号,对外接模块发射红外遥控信号进行控制。

第三章详细设计

3.1系统的主要功能

为了实现用红外线遥控家用电器的目的,需要在现有的智能手机以外加入一个硬件模块,以实现发射红外控制电器的目的。

一下所述的就是一种将手机耳机接口输出的含有高低电压信息的信号转化为红外线信号发射出来的硬件模块。

通常来说,一部智能手机有两种接口可以进行信息的输出:

USB接口,耳机接口。

考虑到由于品牌与信号不通,各种手机的USB接口型号都不尽相同,比如苹果手机的USB接口就是很扁的长条形的30-pin接口,而三星手机的则要更短。

如果采用USB接口作为控制本课题硬件部分的输出接口,那么要适应各种各样的接口难度极大。

按照同样的思路,耳机音频接口是绝大部分,甚至可以说是全部智能手机都有的接口。

如果采用耳机接口输出控制信号,那么就可以有极好的适应性。

因此,本课题选择采用耳机音频接口输出信息控制红外发射硬件部分。

本课题硬件部分的输入端直接连在智能手机或任何手持智能设备的音频输出插座上,一般情况下就是简单地插在智能手机或任何手持智能设备的耳机插座上。

它的输出就是符合一定编码规则和标准的红外遥控信号。

本课题中的一种耳机接口输出的电压信号驱动的红外遥控发射器是主要由1个整流电路、1个RC积分电路和1个比较器组成信号转换器。

在输入的电压信号的幅值超过参考电压Vb一定程度的情况下,该信号转换器先通过整流和RC积分把得到的高音频电压信号转换整形成一个电压为Va大于Vb的方波信号,再经过比较器的放大作用,比较器输出一个可以驱动红外发光二极管的方波信号。

在输入的音频电压信号很低,幅值远低于参考电压Vb的情况下,该信号转换器通过整流和RC积分无法得到一个电压Va比Vb大的方波信号,比较器输出的是一个无法驱动红外发光二极管低电平信号。

这样,当输入的是符合一定编码规则的时高时低的电压信号时,输出的就是符合该编码规则的红外遥控方波信号。

下面结合附图对本实用新型作进一步的详细说明。

图2.1

(1)是音频电压信号处理的流程,说明符合一定编码规则的时高时低的电压信号转换成符合该编码规则的红外遥控方波信号的过程。

图2.1

(2)是音频电压信号驱动的红外遥控信号发射器的原理图,图中选择全桥整流电路来具体实现权利要求中提到的整流电路的功能,使整个信号转换器的灵敏度和稳定性更好。

Vb是比较器的反相输入点上的参考电压,Va是输入的音频电压信号经过全桥整流和RC积分后的信号的电压。

当Va大于Vb时,比较器的输出是高电平,红外发光二极管发出红外线信号。

当Va小于Vb时,比较器的输出是低电平,红外发光二极管没有红外线输出。

图2.1(3)是用低电压双路比较器LM393的一路的音频电压信号驱动的红外遥控信号发射器的实施例。

整个发射器的供电电压Vcc是3V。

R23是千欧数量级的电阻,R22的数量级是几十千欧的,Vb大约为100毫伏。

C21是几百到几千pf数量级的陶瓷电容,R21是兆欧数量级的电阻,两者组成的RC积分电路把输入的强音频电压信号转换成电压Va大于150毫伏的电压信号。

在Va大于Vb时,LM393的输出成高阻状态,供电电压Vcc经过限流电阻R24和R25使红外发光二极管D2发出红外线。

输入:

来自数字智能设备耳机接口的一组按规律时断时续的音频电压信号。

全桥整流和RC积分滤波:

一组按规律时断时续的近似方波信号。

输出:

一组按规律时断时续的符合编码规则的红外遥控信号。

图2.1

(1):

音频电压信号处理的流程

图2.1

(2):

音频电压信号驱动的红外遥控信号发射器的原理图

图2.1(3):

用低电压双路比较器LM393的一路的音频电压信号驱动

的红外遥控信号发射器的实施例

3.2软件部分

软件部分使用智能手机安卓操作系统作为平台,在其基础上编写相应软件,来操纵红外发射模块。

安卓平台的应用,由eclipse编译器,java语言,配合附加在eclipse中的androidsdk进行编写。

本软件部分所实现的功能是:

1)遥控器面板的选择以及绘制。

2)遥控器面板上的按键与对应要发出的红外遥控信号所对应的控制音频信号之间的触发关系对应。

3)音频电压信号从耳机接口的输出。

3.3软、硬件的配合

在初始化阶段,程序在绘制触屏界面的同时,要把手机的输出音量调大到最大输出音量的4/5以上,然后发出一个出现几百毫秒的连续音频电压信号,给红外遥控信号发射器预热和电容充电。

在触屏上的一个按钮被按下以后,要再次检查和调整手机的输出音量到最大输出音量的4/5以上,然后播放按对应规律时断时续的音频电压信号。

这个有规律的音频电压信号可以是标准的,频率在音频范围内的正弦信号。

在程序退出之前,还要把要把手机的输出音量调小到最大输出音量的2/5附近。

启动程序

软件硬件初始化:

在触屏上绘制触控界面;

调整输出音量;

给输入整形电容C11预充电

响应触控按钮:

检查和调整输出音量;

消除触控动作的抖动影响,确认触控意图;

按记忆的编码,通过耳机接口发出对应的音频电压信号。

结束程序

准备结束程序:

调整输出音量;

退出运行程序

图2.3是该手机遥控程序的框图。

图2.3:

运行总流程图

3.4软件界面效果

3.5主要代码

MainActivity

packagecom.lidnec.infrared;

importjava.util.HashMap;

importjava.util.Map;

importcom.example.httppost.JsonPost;

importcom.lidnec.infrared.service.IrCodeService;

importcom.lidnec.infrared.service.IrCodeServiceImpl;

importcom.lidnec.infrared.service.IrdaFixedCode;

importcom.lidnec.infrared.service.IrdaInstCode;

importcom.lindec.androidsqlite.InfraredDB;

importandroid.annotation.SuppressLint;

importandroid.app.Activity;

importandroid.content.Intent;

importandroid.hardware.ConsumerIrManager;

importandroid.os.Build;

importandroid.os.Bundle;

importandroid.os.Handler;

importandroid.os.Message;

importandroid.os.StrictMode;

importandroid.text.TextUtils;

importandroid.view.View;

importandroid.view.View.OnClickListener;

importandroid.widget.Button;

importandroid.widget.Toast;

@SuppressLint("NewApi")

publicclassMainActivityextendsActivityimplementsOnClickListener{

privateButtonbut_check;

privateButtonbut_send;

privateButtonbut_pp;

privateButtonbut_getInst;

privateButtonbut_ac;

privateConsumerIrManagerir;

privateIrCodeServiceirCodeService;

//privateInfraredDBinfraredDB;

privatestaticfinalintSAMPLE_FREQ=38400;

privatestaticfinalint[]IR_SIGNAL_PULSE_COUNT={171,171,22,64,22,64,22,64,22,21,22,21,22,21,22,

21,22,21,22,64,22,64,22,64,22,21,22,21,22,21,22,21,22,21,22,21,22,21,22,64,22,21,

22,21,22,21,22,21,22,21,22,64,22,64,22,21,22,64,22,64,22,64,22,64,22,64,22,876};

privatestaticfinalint[]IR_SIGNAL_TIME_LENGTH={4499,4499,578,1683,578,1683,578,1683,578,552,578,

552,578,552,578,552,578,552,578,1683,578,1683,578,1683,578,552,578,552,578,552,578,552,

578,552,578,552,578,552,578,1683,578,552,578,552,578,552,578,552,578,552,578,1683,578,

1683,578,552,578,1683,578,1683,578,1683,578,1683,578,1683,578,23047};

//privatestaticfinalint[]rawCodes_ac_open[100]=

//{3602,4400,4450,550,1600,550,550,550,1650,500,1650,550,550,550,550,500,1650,550,550,550,550,500,1650,550,550,550,550,500,1650,550,1650,500,550,550,1650,550,550,500,1650,550,1650,500,1650,550,1650,500,550,550,1650,550,1600,550,1650,550,550,550,500,550,550,550,550,550,1600,550,550,550,550,550,1600,550,1650,550,1600,550,550,550,550,550,550,550,500,550,550,550,550,550,550,550,500,550,1650,550,1600,550,1650,550,1600,550,1650,550};

privatestaticfinalint[]rawCodes_ac_open={4397,4368,561,1578,560,537,557,1581,584,1582,584,486,

558,537,584,1554,560,538,558,510,558,1607,557,513,585,511,556,1585,581,1583,583,486,557,

1609,556,513,558,538,557,512,558,1607,558,1583,557,1608,558,1608,557,1580,559,1606,559,

1581,556,1609,557,512,559,537,558,512,557,539,557,512,558,1607,558,1582,558,537,584,

1555,558,1607,556,514,559,537,556,513,558,537,556,514,558,1606,559,511,583,513,558,1582,

557,1608,558,1580,585,5154,4419,4347,584,1555,558,539,557,1581,584,1581,571,501,577,516,

571,1568,557,541,581,487,557,1608,557,513,558,538,557,1582,583,1582,584,487,557,1608,

557,511,611,486,558,510,558,1607,557,1609,556,1583,583,1582,583,1555,558,1607,558,1607,

559,1582,557,537,585,486,558,510,55

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2