《创新实践》课程总结报告-基于Arduino的遥控播放系统设计.docx
《《创新实践》课程总结报告-基于Arduino的遥控播放系统设计.docx》由会员分享,可在线阅读,更多相关《《创新实践》课程总结报告-基于Arduino的遥控播放系统设计.docx(18页珍藏版)》请在咨信网上搜索。
1、创新实践课程总结报告 报告名称:基于Arduino的遥控PPT播放系统设计 学 院: 信息工程与自动化学院 专 业: 物联网工程 学 号: 学生姓名: 指导教师: 日 期: 2016年6月17日 l 题目:基于Arduino的遥控PPT播放系统设计l 内容:一、绪论1. Arduino简介 Arduino是目前较为流行的电子互动平台,基于单片机系统开发,具有使用简单、功能多样、价格低廉等优点,广泛应用于电子系统设计和互动产品开发方面。 Arduino是2005年1月由米兰交互设计学院的两位教师David Cuartielles和Massimo Banzi联合创建,是一块基于开放原始代码的Sim
2、ple IO平台,该平台由两部分组成:硬件(包括微处理器、电路板等)和软件(编程接口和语言)。平台的两部分都是开源的,如果需要,可以下载Arduino的图表、购买需要的所有独立部件、切割电路板并制作一个电路板。Arduino具有类似java、C语言的开发环境。可以快速使用Ardu ino语言与Flash或Processing等软件完成互动作品。Arduino能够使用开发完成的电子元件,如Switch、Sensors或其它控制器、LED、步进电机或其它输入输出装置,同时,Arduino也可以成为独立与软件沟通的平台,如flash、Processing、MaxMSP或其它互动软件。 Arduino
3、能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境。板子上的微控制器可以通过Arduino的编程语言来编写程序,编译成二进制文件,烧录进微控制器。对Arduino的编程是利用 Arduino编程语言 (基于 Wiring)和Arduino开发环境(基于 Processing)来实现的。基于Arduino的项目,可以只包含Arduino,也可以包含Arduino和其他一些在PC上运行的软件,他们之间进行通信 (比如 Flash,Processing, MaxMSP)来实现。Ardunio平台特点: Arduino在开发之初,就明确了其应用环境,设计了开源开放的平台,
4、便于对其进行二次开发。Arduino的主要功能特点如下: 1)开放源代码的电路图设计。程序开发接口免费下载,也可依需求自己修改。 2)使用低价格的微处理控制器(ATmega8或ATmega128)。可以采用USB接口供电,不需外接电源,也可以使用外部9VDC输入。 3)支持ISP线上烧入器,将Bootloader固件烧入芯片。Arduino控制器内带Bootloader程序,是系统上电后运行的第一段代码,就好比PC机BIOS中的程序,启动就进行自检,配置端口等等,当然,单片机是靠烧写熔丝位来设定上电从boot区启动的,使用这个程序就可以直接把从串口发来的程序存放到flash区中。所以,使用Ar
5、duino编译环境下载程序时,就先让单片机复位,启动Boodoader程序引导串口发过来的程序顺利写入flash区中,flash可以重复烧写,因此想更新软件非常方便。有了Bootloader之后,可以通过串口或者USB to RS232线更新固件。 4)可依据官方提供的PCB和SCH电路图,简化Arduino模组,完成独立运作的微处理控制。 5)可简单地与传感器,各式各样的电子元件连接,如红外线、超音波、热敏电阻、光敏电阻、伺服马达等。 6)支持多样的互动程序,如Flash,MaxMSP,VVVV,PureData,C,Processin等。使用低价格的微处理控制器。 7)应用方面,利用hrd
6、uino,突破以往只能使用鼠标、键盘、CCD等输入的装置的互动内容,可以更简单地达成单人或多人游戏互动。Ard uino的功能特点,使其得到了越来越广泛的应用。2. 本次实践所选项目要完成的工作 1) 根据接线图连接好板子、红外接收模块、响应模块; 2)编辑代码,对原红外遥控代码做出相关系统功能的更改; 3)编译代码,将板子和电脑连接上,下载程序进板子; 4)使用红外遥控器进行遥控,调试相应功能; 5)调试之后对代码进行相应改进,最后完成系统; 6)理解整个系统的所有代码。二、系统结构分析1.硬件基本组成控制器:ardunio开发板输入、输出:红外遥控模块(VS1838B红外接收头、CARmp
7、3遥控器、面包板、线、开发板)、响应模块(蜂鸣器、LED灯、电阻、PC) VS1838B红外接收头:VS1838B内含高速高灵敏度PIN光电二极管和低功耗、高增益前置放大IC,采用环氧树脂封装外加外屏蔽抗干挠设计,该产品已经通过REACH和SGS认证属于环保产品,在红外遥控系统中作为接收器使用。结构图:原理图:CARmp3遥控器:遥控器由红外接收及发射电路、信号调理电路、中央控制器8031.程序及数据存储器、键盘及状态指示电路组成2. 硬件连线图或硬件结构框图三、系统软件设计1.基本功能 通过红外遥控模块和响应模块对鼠标和键盘进行控制,实现遥控器控制鼠标移动至一PPT文件处并点击它,进入WPS
8、,再控制鼠标移动至播放按钮处,点击开始播放,PPT全屏后,再通过遥控器控制PPT的翻页,实现PPT的播放功能,同时串口监视器显示相应的按键信息(用户码、数据码、数据反码)。 由于系统的可靠性不是特别高,遥控器经常需要按好几次才能成功接收到信号,所以增加接收成功反馈功能,即只有在一次按键后系统成功运行后会有LED灯闪一下和蜂鸣器响一下。2.模块设计2.1红外遥控模块:(VS1838B红外接收头、CARmp3遥控器、面包板、线、开发板)2.11实现原理使用者每按下一个控制键,CPU从指定的存储单元中读取一系列的二进制数据,串行输出给信号保持电路,同时由调制电路将信号调制在一个特定的载波平率上,将调
9、制信号经放大后,由红外线发射二极管进行发射,红外接收装置滤掉其他杂波只接受该特定载波频率上的信号并将其还原成脉冲码。此时开发板端由定时器提供一个时钟频率对脉冲进行检测、解码,这里就需要了解遥控器的编码方式以及数据格式,编码方式:NEC协议遥控器发出的二进制脉冲码载波频率是38kHz,采用脉冲宽度调制,每一位的时间为1.125ms或2.25ms,逻辑1和逻辑0;一个消息是由一个9ms的高电平开始,随后有一个4.5ms的低电平,之后就是信息码了.数据格式:包括用户码、数据码和数据反码共占32位。数据反码可用于对数据的纠错。根据编码原理,系统通过remote_decode(void)译码函数根据特定
10、时间间隔的高低电平信号(9ms、4.5ms已在代码中标出)调用void pulse_deal()接收地址码和命令码脉冲函数进行解码;而pulse_deal()函数先是调用logic_value()判断逻辑值0和1子函数得到脉冲的二进制值,再将二进制数存入之前定义好的变量中;logic_value()函数则又是通过特定的高低电平时间间隔(560us、560us已在代码中标出)识别出逻辑0和1传给pulse_deal()函数。系统通过以上三个函数将系统接收到的脉冲信号进行解码得到adrL_code 、adrH_code 、ir_code 三个变量分别为用户码、数据码、数据反码,再将变量传给响应模块
11、,最终实现系统功能。2.12、关键代码void timer1_init(void)/定时器初始化函数 TCCR1A = 0X00; TCCR1B = 0X05;/给定时器时钟源/64us进行一次计数器累加TCCR1C = 0X00; TCNT1 = 0X00; TIMSK1 = 0X00; /禁止定时器溢出中断 char logic_value()/判断逻辑值“0”和“1”子函数 TCNT1 = 0X00; while(!(digitalRead(IR_IN); /低等待Pulse_Width=TCNT1; TCNT1=0; if(Pulse_Width=7&Pulse_Width=7&Pul
12、se_Width=25&Pulse_Width=27) /接着高电平1.7ms return 1; return -1; void pulse_deal()/接收地址码和命令码脉冲函数 int i; int j; ir_code=0x00;/ 清零adrL_code=0x00;/ 清零adrH_code=0x00;/ 清零/解析遥控器编码中的用户编码值for(i = 0 ; i 16; i+) if(logic_value() = 1) /是1 ir_code |= (1i);/保存键值 /解析遥控器编码中的命令码for(i = 0 ; i 8; i+) if(logic_value() =
13、1) /是1 adrL_code |= (1i);/保存键值 /解析遥控器编码中的命令码反码for(j = 0 ; j 8; j+) if(logic_value() = 1) /是1 adrH_code |= (1=140&Pulse_Width=68&Pulse_Width=34&Pulse_Width=7&Pulse_Width=10)/560us return; 2.2、响应模块(蜂鸣器、LED灯、PC)2.21、遥控器按键对应响应功能3121:上一页3:下一页6542:鼠标上移 8:鼠标下移4:鼠标左移86:鼠标右移5:确定2.22、响应原理通过红外遥控模块传递的变量adrL_cod
14、e使Deal_Print()函数作出响应,响应分为三部分: 1.鼠标和键盘的响应: Mouse.move(); Keyboard.press(); 2.蜂鸣器和LED灯:BuzzerDi();digitalWrite(LED,HIGH); 3.串口显示按键相关信息:remote_deal() (该函数在InfraredRemote.h中)。2.2.3、关键代码#include InfraredRemote.h#include #define Buzzer 3#define LED 13void setup() Serial.begin(9600); pinMode(IR_IN,INPUT_PU
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 创新实践 创新 实践 课程 总结报告 基于 Arduino 遥控 播放 系统 设计
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【可****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【可****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。