基于单片机的红外无线控制.doc
《基于单片机的红外无线控制.doc》由会员分享,可在线阅读,更多相关《基于单片机的红外无线控制.doc(23页珍藏版)》请在冰豆网上搜索。
通信系统综合设计
中国矿业大学徐海学院
技能考核培训
姓名:
陈思彤学号:
22110838
专业:
信息11-2班
题目:
基于单片机的红外无线控制
专题:
音乐播放器
指导教师:
有鹏老师翟晓东老师
设计地点:
电工电子实验室
时间:
2014年4月
通信系统综合设计训练任务书
学生姓名陈思彤专业年级信息11-2班学号22110838
设计日期:
2014年4月5日至2014年4月10日
设计题目:
基于单片机的红外无线控制
设计专题题目:
音乐播放器
设计主要内容和要求:
1.主要内容:
单片机内部结构
红外遥控解码
C语言程序设
2.功能扩展要求
实现音乐播放器的功能
指导教师签字:
摘要:
近年来随着计算机在社会领域的渗透, 单片机的应用正在不断地走向深入。
红外线技术也被广泛应用于各个电子领域,先设计一种基于单片机的红外遥控的简易音乐播放器。
通信蜂鸣器来发声,来完成音乐播放器的功能。
该系统可实现对音乐播放的远距离遥控,且结构简单,速度快,抗干扰能力强。
通过本次课程设计,我对单片机中断系统等知识有了进一步的了解,对单片机的相关知识做到理论联系实际。
关键词:
单片机,中断系统,红外遥控,音乐播放
目录
1绪论 4
1.1概述 4
1.2功能 4
2硬件电路 5
2.1总体设计方 5
2.2单片机最小系统 5
2.3红外遥控收发电路 5
2.3.1红外遥控发射电路 6
2.3.2红外遥控接收电路 7
2.4蜂鸣器电路 7
2.5LED指示灯电路 8
3软件编程 9
3.1C语言实现系统设计 9
3.2乐谱的改编 10
参考文献 11
附录 12
1绪论
1.1概述
本设计采用红外线来遥控蜂鸣器使其播放音乐,红外遥控是如今广泛使用的一种通信和遥控手段;红外线遥控利用红外线来传输数据,这种情况下不需要实体连线,体积小,成本低,功能强;因此红外遥控设备已经广泛的应用在如今的电气设备的数据交互和设备控制中。
利用单片机演奏时音乐爱好者的兴趣之一,应用的范围也比较广泛。
所谓音乐播放器由单片机进行信息处理,再经过信号放大,由蜂鸣器发出乐曲声。
详细说来,演奏一个音符,是通过引脚,周期性的输出一个特定频率的方波。
这就需要单片机,在半个周期内输出低电平、另外半个周期输出高电平,周而复始。
众所周知,周期为频率的倒数,可以通过音符的频率计算出周期;因此演奏时,要根据音符的不同,把对应的、半个周期的定时时间初始值,送入定时器,再由定时器按时输出高低电平。
本文比较详细地介绍了音乐播放器的工作原理、设计思路、硬件的选择及相关作用、软件的实现方法以及详细的程序清单。
1.2功能
本设计以单片机为核心实现红外遥控音乐播放器功能,主要完成功能为四首歌曲的选择播放、暂停、暂停后断点播放,播放下一曲,播放上一曲以及流水灯显示音符等功能。
本设计中使用常见的红外遥控器进行控制,使用其中的1、2、3、4四个数字键(对应功能选择1、2、3、4四首歌曲),频道加、减两个按键(对应功能上一曲、下一曲),静音键(对应功能暂停),以及确定键(对应功能播放歌曲)
2硬件电路
2.1总体设计方
AT89S52
单片机
音乐播放
遥控器
图1系统组成框图
本系统以AT89S52单片机为控制核心,以遥控器作为控制元件,以蜂鸣器作为执行器件。
通过按下遥控器相应按键向单片机发送控制信息(红外信号),单片机红外接收器收到该红外信号后进行解码然后通过P3.2口将解码后的控制信息送入单片机,单片机通过P2.5口控制蜂鸣器播放音乐
2.2单片机最小系统
2.3红外遥控收发电路
红外线遥控是目前使用最广泛的一种通信和遥控手段。
由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。
工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。
常用的红外遥控系统一般分发射和接收两个部分。
应用编/解码专用集成电路芯片来进行控制操作,如下图所示。
发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路。
图2红外线遥控系统框图
2.3.1红外遥控发射电路
发射部分的主要元件为红外发光二极管。
它实际上是一只特殊的发光二极管;由于其内部材料不同于普通发光二极管,因而在其两端施加一定电压时,它便发出的是红外线而不是可见光。
目前大量的使用的红外发光二极管发出的红外线波长为940nm左右。
遥控器的基本组成如图所示。
它主要由形成遥控信号的微处理器芯片、晶体振荡器、放大晶体管、红外发光二极管以及键盘矩阵组成。
图4遥控器电路图
工作原理:
微处理器芯片IC1内部的振荡器通过2、3脚与外部的振荡晶体X组成一个高频振荡器,产生高频振荡信号。
此信号送入定时信号发生器后进行分频产生正弦信号和定时脉冲信号。
正弦信号送入编码调制器作为载波信号;定时脉冲信号送致扫描信号发生器、键控输入编码器和指令编码器作为这些电路的时间标准信号。
IC1内部的扫描信号发生器产生五种不同时间的扫描脉冲信号,由5~9脚输出送至键盘矩阵电路。
当按下某一键时,相应于该功能按键的控制信号分别由10~14脚输入到键控编码器,输出相应功能的数码信号。
然后由指编码器输出指令码信号,经过调制器调制在载波信号上,形成包含有功能信息的高频脉冲串,由17脚输出经过晶体管BG放大,推动红外线发光二极管D发射出脉冲调制信号
2.3.2红外遥控接收电路
红外线遥控接收器的作用是将接收到的红外线遥控信号,经过放大、解调和整形后输出功能指令信号,送至微处理器进行识别和处理。
2.4蜂鸣器电路
蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。
2.5LED指示灯电路
3软件编程
3.1C语言实现系统设计
单片机应用系统的程序设计有两种方法:
一种是基于汇编语言的,另一种是基于C语言的。
汇编语言程序的机器代码生成效率高,但可读性较差,而C语言程序的可读性和可移植性远超过汇编语言。
用C语言编写单片机应用程序,不用具体组织、分配存储器资源和处理端口数据,但对数据类型与变量的定义,必须要与单片机的存储结构相关联,否则编译器不能正确地映射定位。
C语言具有以下主要特点:
①语言简洁,使用方便灵活。
它是程序设计语言中规模最小的语言之一。
ANSI标准C语言只有32个关键字,9种流程控制语句。
②程序可移植性好。
③表达能力强。
具有丰富的数据结构类型和多种运算符。
用户可灵活采用多种数据类型和使用各种运算符,实现复杂运算。
④表达方式灵活。
利用C语言的多种运算符可组成各种表达式,还可采用多种方法来获得表达式的值,使程序设计具有更大的灵活性。
⑤可进行结构化程序设计。
C语言以函数作为程序设计的基本单位,非常适合结构化程序设计。
⑥可直接操作计算机硬件。
C语言具有直接访问机器物理地址的能力,C51的编译器都可直接对单片机内部的SFR和I/O端口进行操作,可以直接访问片内、片外存储器,还可以进行各种为操作。
⑦生成的目标代码质量较高。
3.2乐谱的改编
单片机演奏一个音符,是通过引脚,周期性的输出一个特定频率的方波。
这就需要单片机,在半个周期内输出低电平、另外半个周期输出高电平,周而复始。
众所周知,周期为频率的倒数,可以通过音符的频率计算出周期;演奏时,要根据音符的不同,把对应的、半个周期的定时时间初始值,送入定时器,再由定时器按时输出高低电平。
在此程序中,通过两个数据表存放了事先算好的、各种音符频率所对应的、半周期的定时时间初始值。
低音、中音、高音和超高音,四个八度共28个音符。
演奏乐曲时,就根据音符的不同数值,从表中找到定时时间初始值,送入定时器即可控制音调。
10
通信系统综合设计
参考文献
[1]华成英.童诗白.模拟电子技术基础[M] 北京:
高等教育出版社,2006 :
12-3
[2]赵亮.单片机C语言编程与实例[M]. 北京:
人民邮电出版社, 2003:
3-432
[3]瞿贵荣.15通道红外遥控电路[J].实用电子制作,2005,(7):
10.
[4]陈燕春. 学习型14路红外遥控开关[J]. 单片机开发与应用, 2005, (6):
22-25
[5]胡汉才.单片机原理及其接口技术[M].北京:
清华大学出版社,2006:
3:
1-12
附录
附录1:
程序
#include
#include
#include"delay.h"
#include"decode.h"
#defineucharunsignedchar
#defineuintunsignedint
#defineFont_codeP0//字符码写地址
#definereg_codeP2//字位码写地址
sbitspeaker=P2^5;
#defineLEDP1
codeunsignedcharshuzu[]={0XFE,0XFD,0XFB,0XF7,0XEF,0XDF,0XBF,0X7F};
unsignedchartimer0h,timer0l,time;
//世上只有妈妈好数据表 6,2,3,
codeunsignedcharsszymmh[]={6,2,3,5,2,1,3,2,2,5,2,2,1,3,2,6,2,1,5,2,1,
6,2,4,3,2,2,5,2,1,6,2,1,5,2,2,3,2,2,1,2,1,
6,1,1,5,2,1,3,2,1,2,2,4,2,2,3,3,2,1,5,2,2,
5,2,1,6,2,1,3,2,2,2,2,2,1,2,4,5,2,3,3,2,1,
2,2,1,1,