下载

2下载券

加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 学习型红外线遥控器的课程设计报告 [当文网提供]

学习型红外线遥控器的课程设计报告 [当文网提供].doc

学习型红外线遥控器的课程设计报告 [当文网提供]

phw611
2010-12-23 0人阅读 举报 0 0 暂无简介

简介:本文档为《学习型红外线遥控器的课程设计报告 [当文网提供]doc》,可适用于工程科技领域

课程设计报告课程名称:单片机原理及应用设计题目:学习型红外线遥控器的设计系别:通信与控制工程系专业:电子信息工程班级:学生姓名:学号:起止日期:指导教师:教研室主任:指导教师评语:指导教师签名:年月日成绩评定项目权重成绩、设计过程中出勤、学习态度等方面、课程设计质量与答辩、设计报告书写及图纸规范程度总成绩教研室审核意见:教研室主任签字:年月日教学系审核意见:主任签字:年月日摘要当今社会科学技术的发展与日俱增人们的生活水平也是日益提高为了减少人的工作量所以对各种家用电器、电子器件的非人工控制的要求也是越来越高针对这种情况设计出一种集成度比较高的控制体系是必然的。单片机的集成度很高它具有体积小、质量轻、价格便宜、耗电少等突出特点尤其耗电少又可使供电电源体积小、质量轻。本课程设计介绍了基于单片机的一种学习型万能遥控器的设计与实现可以对各种红外线遥控器发射的信号进行识别、存储和再现等功能从而实现对各类家电的控制。学习型万能遥控器由单片机、红外线接收、红外线发射、显示、存储、按键和欠电压指示等部分组成。本设计详细介绍了学习型万能遥控器的软硬件设计方法并给出了具体的各单元电路设计、程序设计及主程序流程图。在硬件设计中我们选取STCC型号单片机为核心器件并给出外围电路模块如红外接收模块、红外发射模块、显示模块、以及外部控制模块等组成部分的设计实现。软件部分采用keil进行C程序设计与编译并将编译后产生的hex文件通过STCISPV下载到单片机中进行调试。本学习型遥控器采用最小化应用模式设计电路简单尤其是通过大量不同遥控码的特征分析在遥控码的读入时选择了最佳采样间隔使遥控码的学习成功率大大提高。关键词:遥控学习红外解码单片机控制红外遥控目录TOCo""hzu设计要求前言、方案论证、基本功能模块设计与说明初始化模块遥控码读入处理模块遥控码发射处理模块主模块、调试与操作说明.学习型红外遥控器的电路原理图的设计.程序的编译及下载.实际电路的测试、课程设计心得体会、元器件及仪器设备明细、参考文献、致谢、附录学习型红外遥控器的设计设计要求学习型红外线遥控器要求可以学习不同遥控器的某个按键码功能。使用时先用原遥控器对着学习器按一下某操作键学习器就可以实现原遥控器中该键的遥控功能。前言本课程设计是一个基于单片机的学习型红外遥控器能够学习不同遥控器的某个按键功能。利用单片机STCC对多个红外遥控编码的脉冲宽度进行测量并原封不动地把发射信号中高、低电平的时间宽度记忆至扩展存储区的指定地址。当要发射红外信号时从扩展存储区中还原出相应的红外遥控编码并调制到KHz的载波信号上最后通过三极管放大电路驱动红外发光二极管发射红外信号达到学习和发射的目的从而实现一个遥控器控制多种红外遥控设备。、方案论证为了实现遥控码的记录还原功能系统应具有红外线的接收解码、红外线调制发射、操作按键和功能控制功能等单元。由于功能定为学习一个遥控器按键的遥控功能因此决定采用STCC单片机作为控制器。STCC单片机中具有字节的内存单元可存储遥控码脉宽的数据。遥控码的脉宽数据可用红外线接收器解码后送单片机读入发射时有单片机产生kHZ红外调制信号送红外发射管发射单键学习型红外遥控器的实现方案框图如图所示。图单键学习型红外遥控器系统框图、基本功能模块设计与说明初始化模块初始化模块的主要任务时清存放脉宽数据单元关闭学习及发射指示灯关闭遥控输出口将定时器T设为位自动重装模式设置中断。遥控码读入处理模块遥控码的学习处理程序主要是将原遥控器发出的脉冲码宽依次存入内存单元存放规则为偶数地址(、、、等)存放高电平脉宽数据奇数地址(、、等)存放低电平脉宽数据。定义文件中划了个单元用于存放脉宽数据符合常用遥控器的最大码长要求。遥控码读入程序流程图如图所示。本程序在编程设计中非常重要通过大量的、不同中来的遥控码波形实验测试分析遥控码的帧间歇位宽度均在ms以上起始码宽度在us~ms之间编码位在us~ms之间。为确保所有遥控器学习的成功可采用以下程序实现方法。读起始位方法:由于起始位的码宽范围较大因此计数单元采用单独的字节计数周期约为us,这样按*us算最大可存起始位脉宽为ms。当输入为高电平时停止起始位计数进入高电平计数。读遥控码的方法:采用字节计数单元对吗(高电平或低电平)进行宽度计数电平跳变时结束计数并将数据存入规定的地址。在高电平码计数时当计数值大于时(宽度大于ms)则判定为结束帧间隔位在相应存储单元写入数据xOO作为结束标志。遥控码发射处理模块遥控码发射程序将原存于内存单元的脉冲数据还原成KHZ方波利用定时计数器T中断功能产生KHZ载波调制波从P脚送出。利用原读入时的低电平持续时间控制产生KHZ方波的时间而原读入时为高电平的脉宽数据将作为停发KHZ方波的持续时间控制。遥控码发射处理程序图如图所示。主模块主程序在完成上电初始化后进行按键查询当确认有键按下时将编码发出去。主程序流程图所示图遥控码读入程序流程图图遥控码发射处理程序图图主程序流程图、调试与操作说明.学习型红外遥控器的电路原理图的设计图所示为该学习机遥控器的电路原理图单片机使用STCC。其中:P口接遥控器发射按键P口用作状态指示绿灯亮代表学习状态绿灯灭代表码已读入P,口用作指示遥控键的操作闪烁代表遥控码正在发射之中第脚为单片机的复位脚采用RC上电复位电路第脚为单片机中断输入口用于工作方式的转换控制当INT脚为低电平时系统进入学习状态第脚用于红外线接收解码器的输出信号输入第脚作为遥控码红外调制信号的输出口输出KHZ的方波脉冲第、脚接M晶振。由于采用最小化应用系统因此控制线PSEN(片外取指控制)、ALE(地址锁存控制)不用EA(片外存储器选择)接高电平使用片内程序存储器。红外线接收器使用市场上用于电视机的三端一体化红外接收解调器三极管可用系列红外线发射二极管也用普通遥控器中使用的器件。图单键遥控码学习控制器电路原理图.程序的编译及下载、创建工程并选择ATC型号芯片。、新建remotec文件。、编写源程序并编译如图所示。图学习型遥控器的程序编译图、打开STCISP下载软件选择STCCRC型号的芯片选择串口并导入编译生成的hex文件。、将单片机与计算机的串口相连并将程序下载至单片机如图所示。图学习型红外遥控器程序下载图.实际电路的测试程序下载进单片机后打开单片机开发板上电源接口开关以及P口电源切换开关按下中断控制键待绿色的流水灯亮后将电视遥控器对准单片机开发板上的红外接收头按下某个按键当绿灯熄灭时此时代表学习完成了然后关闭PI口电源切换开关按下单片机开发板上的发射键对电视机进行遥控操作。测试可知本次设计的学习型遥控器完全符合要求达到了预期目的。、课程设计心得体会本次课程设计的基于单片机学习型红外遥控器在keil软件上进行了进行C程序的设计、编译并将输出的的hex文件通过STCISPV下载到单片机中最后在单片机开发板上进行调试测试硬件电路功能。经过实践验证本设计是正确的。测试中我们选取了电视机的遥控器作为学习对象通过学习遥控器上某个键的功能能实现单片机对电视机的控制。达到预期目的设计完全成功。本文给出的设计思想也适用于其他基于单片机的系统设计。我们这次课程设计是通过小组的讨论与实验所完成的在进行过程中碰到了一些困难。首先本次设计是采用keil与STCISPV软件来完成的。因此对于这两种软件的使用也提出了一定的要求。其次由于在设计遥控码的码宽时参数设置不够恰当导致单片机无法成功对遥控器的按键功能进行学习。再次在硬件电路功能测试过程中由于实际的单片机开发板的电路连接与本课程设计的硬件电路不完全一致导致无法进行调试。通过修改信号输入输出端口并结合实际的单片机开发板硬件连接进行外部控制最终成功实现了学习型遥控器的学习功能。通过这次实验我们感觉到动手能力及思维方式得到很大的加强。在这次课程设计中我们学会了怎样去根据课题的要求运用学过的知识去设计电路和调试电路。从中我们发现了实践的重要性在以后的学习中我们要加强理论与实际的结合。而且这次实验也体现了团队合作的重要性与探索精神的必要性。、元器件及仪器设备明细表元器件及仪器设备明细表器件名称型号版本数量备注微型计算机联想一台keil软件一套STCISPV软件一套单片机开发板STCC一套电视机TCL一台电视机遥控器TCL一台、参考文献舒经文最新彩电机芯及其遥控系统的原理与维修北京:电子工业出版社,李华MCS系列单片机实用接口技术北京:航天航空大学出版社,麦山基于单片机的协议红外遥控系统电子技术:何立民MCS系列单片机应用系统设计,系统配置与接口技术北京:航空航天大学出版社,刘宁生周哨山脉冲与数字电路北京:中国广播电视出版社,康光华,陈大钦电子技术基础(模拟部分)高等教育出版社第四版李建华实用遥控器原理与制作北京:人民邮电出版社,、致谢本次课程设计主要由我们两人共同完成其间当然老师也同样是付出了大量的时间和精力来帮助我们。不论结果怎样我们都会欣然接受因为我们努力过了。同时我们也要衷心地感谢我们所有的老师以及帮助我们的同学要是没你们的帮助我们是不能这么好的完成这次课程设计的。、附录***********学习型遥控器C程序清单***********#pragmasrc(E:remoteasm)#include"regh"#include"intrinsh"nop()延时函数用#defineucharunsignedchar#defineuintunsignedintsbitstudylamp=P^学习状态指示灯sbitlamp=P^发射指示灯sbitstudykey=P^学习键(中断口)sbitremotein=P^遥控信号输入口sbitremoteout=P^遥控输出口sbittxkey=P^发射键uinti,j,m=,n,k,sucharidataremotedata存肪冲宽度数据用uinthead存起始位用uintremdata*********毫秒延时程序**********delayms(uintt){for(i=i<ti)for(j=j<j)}***********初始化函数**********clearmen(){studylamp=关学习灯lamp=关发射指示remoteout=关遥控输出remotein=for(i=i<i)清内存{remotedatai=x}IE=xIP=xTMOD=x位自动重装模式PCON=XTH=xfKHZ初值TL=xfIT=EX=外中断允许EA=开总中断}**********键功能函数************keywork(){if(txkey==){while(txkey==)等待键释放ET=TR=发起始位for(i=headi>i){}remoteout=ET=TR=n=while(){if(remotedatan==x){delayms()break}数据为结束for(i=remotedatani>i){nop()nop()nop()nop()nop()nop()nop()nop()nop()}lamp=~lampn偶地址不发脉冲ET=TR=奇地址发调制脉冲for(i=remotedatani>i){}remoteout=ET=TR=n}}}***********主函数***************main(){clearmen()初始化while(){keywork()按键扫描}}*********KHZ发生器***********定时中断Tvoidtimeintt(void)interrupt{remoteout=~remoteout}***********学习函数***********外中断voidintt(void)interrupt{ET=TR=EX=EA=head=studylamp=lamp=while(studykey==)等待键释放while(remotein==)等待遥控码输入head=读入起始位while(remotein==){nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()head}n=remdata=xwhile(){while(remotein==){nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()remdata}if(remdata>m)高电平>毫秒退出{remotedatan=xEX=EA=gotoend}remotedatan=remdatan存高电平脉宽数据remdata=x脉宽计数器清零while(remotein==){nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()nop()remdata}低电平计数remotedatan=remdatanremdata=x存低电平脉宽数据}end:lamp=studylamp=}

VIP免券下载文档

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/19

学习型红外线遥控器的课程设计报告 [当文网提供]

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利