基于单片机音乐盒的设计
- 格式:doc
- 大小:134.50 KB
- 文档页数:26
如有你有帮助,请购买下载,谢谢!
1页 1 绪论
1.1 概述
随着信息技术革命的深入和计算机技术的飞速发展,单片机的应用越来越广泛,并逐渐发展成为一门关键的技术学科。单片机具有一些突出优点:体积小、重量轻、耗电少、电源单一、功能强、价格低、运行速度快、抗干扰能力强、可用性高,所以在通信、家电、工业控制、仪器仪表、汽车等产品中都可以看到单片机的身影。目前国内单片机的应用仍以MCS-51系列为主。
本案是以AT89C51芯片的电路为基础,外部加上功率放大器、放音设备,以此来实现音乐演奏控制器的硬件电路,通过软件程序来控制单片机内部的定时器使其演奏出优美动听的音乐。用户可以按照自己的喜好选择音乐并将其转化成机器码存入单片机的存储器中。对于不同型号的单片机只需要相应的改变一下地址即可。该软、硬件系统具有很好的通用性,很高的实际使用价值,为广大单片机和音乐爱好者提供了很好的借鉴。
1.2 单片机的特点及应用
1.2.1 单片机的特点
一块单片机芯片就是一台计算机。由于单片机的这种特殊的结构形式,在某些应用领域中,它承担了大中型计算机和通用的微型计算机无法完成的一些工作。使其具有很多显著的优点和特点,因此在各个领域中都得到了迅猛的发展。单片机的特点可以归纳为以下几个方面:
1) 具有优异的性能价格比
单片机的这种高性能、低价格是它最显著的一个特点。单片机尽可能把应用所需要的储存器,各种功能的I/O口都集成在一块芯片内,使之成为名副其实的单片机。有的单片机为了提高速度和执行效率,开始采用了RISC流水线和DSP的设计技术。使单片机的性能明显优于同类型的微处理器,有的单片机的ROM可达64KB(式中‘B’表示字节),片内RAM可达2KB,单片机的寻址已突破64KB的限制,八位和十六位单片机寻址可达1MB和16MB。
单片机另一个显著特点是量大面广,因此世界上各大公司在提高单片机性能的同时,进一步降低价格,性能/价格之比是各公司竞争的主要策略。
2) 集成度高、体积小、可靠性高 如有你有帮助,请购买下载,谢谢!
2页 单片机把各功能部件集成在一块芯片上,内部采用总线结构,减少了各芯片之间的连续,大大提高了单片机的可靠性与抗干扰能力。另外,其体积小,对于强磁场环境易于采取屏蔽措施,适合在恶劣环境工作。
3) 控制功能强
单片机是电子计算机这个庞大家庭中的一个特殊品种,体积虽小,但“五脏俱全”,它非常适用于专门的控制用途。为了满足工业控制要求,一般单片机的指令系统中有极其丰富的转移指令,I/O口的逻辑操作以及位处理器功能。单片机的逻辑控制功能及运行速度均高于同一档次的微型计算机。
4) 低电压、低功耗
单片机大量应用于携带式产品和家用消费类产品,低电压和低功耗的特性尤为重要。许多单片机已可以在2.2V的电压下运行,有的已能在1.2V或0.9V下工作;功耗至微安级,一粒纽扣电池就可以使之长期使用。
1.2.2 单片机的应用
现在单片机的应用日益广泛深入,诸如在智能仪器仪表、家用电器和军事设备的智能化以及实时过程控制等方面,单片机都扮演着越来越重要的角色,具有广阔的应用前景。以下大致介绍一些典型的应用领域和应用特点。
1)家用电器领域
目前国内各种家用电器已普遍采用单片机控制取代传统的控制电路,而做成单片机控制系统。
例如洗衣机、电冰箱、空调机、微波炉、电饭煲、电视机、录像机、手机、摄像机及其它视频音像设备的控制器。还有儿童玩具以及机器人控制等。
2 )办公自动化领域
现代办公室中所使用的大量通信、信息产品多数都采用了单片机,如通用计算机系统中的键盘译码、磁盘驱动、打印机、绘图仪、复印机、电话、传真机、考勤机等。
3 )商业营销领域
在商业营销系统已广泛使用的电子称、收款机、条形码阅读器、仓储安全监测系统、商场保安系统、空气调节系统、冷冻保鲜系统等中,目前已纷纷采用单片机构成专用系统,主要由于这种系统有明显的抗病菌侵害、抗电磁干扰等高可靠性能的保证。
4 )工业自动化 如有你有帮助,请购买下载,谢谢!
3页 如工业过程控制、过程监测、工业控制器及机电一体化控制系统等,这些系统除一些小型工控机之外,许多都是由单片机为核心的单机或多机网络系统。如工业机器人的控制系统是由中央控制器、感觉系统、行走系统、擒拿系统等节点构成的多机网络系统。
5 )智能仪表与集成智能传感器传统的控制电路
目前各种变送器、电气测量仪表普遍采用单片机应用系统替代传统的测量系统,使测量系统具有各种智能化功能,如存储、数据处理、查找、判断、联网和语音功能等。
将单片机与传感器相结合可以构成新一代的智能传感器,它将传感器初级变换后的电量作进一步的变换、处理,输出能满足远距离传送、能与微机接口的数字信号。例如,将压力传感器与单片机集成在一起的微小型压力传感器可随钻机送至井下,以报告井底的压力状况。
6 )汽车电子与航空航天电子系统
通常在这些电子系统中的集中显示系统、动力监测控制系统、自动驾驭系统、通信系统以及运行监视器(黑匣子)等都要构成冗余的网络系统。
1.3 本设计预计目的
本设计中用到了AT89C51单片机,4×4键盘,蜂鸣器,16×2 LCD,七段显示数码管LED。以AT89C51芯片为主芯片的控制电路需要达到如下的设计要求:
1)利用I/O口产生一定频率的方波,驱动蜂鸣器,发出不同的音调,从而演奏乐曲(最少三首乐曲,每首不少于30秒)。
2)采用LCD显示信息。
3)开机时有英文欢迎提示字符,播放时显示歌曲序号(或名称)。
4)可通过功能键选择乐曲,暂停,播放。
5)显示乐曲播放时间或剩余时间。
2 51系列单片机AT89C51的介绍
2.1 AT89C51的功能特性
AT89C51是一个低电压,高性能CMOS8位单片机带有4K字节的可反复擦写的程序存储器(PENROM)和128字节的存取数据存储器(RAM),这种器件采用ATMEL公司的高密度、不容易丢失存储技术生产,并且能够与MCS-51系列的单片机兼容。片内含如有你有帮助,请购买下载,谢谢!
4页 有8位中央处理器和闪烁存储单元,有较强功能的AT89C51单片机能够被应用到控制领域中。
AT89C51提供以下的功能标准:4K字节闪烁存储器,128字节随机存取数据存储器,32个I/O口,2个16位定时/计数器,1个5向量两级中断结构,1个串行通信口,片内震荡器和时钟电路。另外,AT89C51还可以进行0HZ的静态逻辑操作,并支持两种软件的节电模式。闲散方式停止中央处理器的工作,能够允许随机存取数据存储器、定时/计数器、串行通信口及中断系统继续工作。掉电方式保存随机存取数据存储器中的内容,但震荡器停止工作并禁止其它所有部件的工作直到下一个复位。
2.2 AT89C51的引脚功能描述
图2.1 AT89C51的引脚图
VCC:电源电压
GND:地
RST:复位输入。当震荡器工作时,RET引脚出现两个机器周期以上的高电平将使单片机复位。
P0口:
P0口是一组8位漏极开路双向I/O口,即地址/数据总线复用口。作为输出口时,每一个管脚都能够驱动8个TTL电路。当“1”被写入P0口时,每个管脚都能够作为高阻抗输入端。P0口还能够在访问外部数据存储器或程序存储器时,转换地址和数据总线复用,并在这时激活内部的上拉电阻。P0口在闪烁编程时,P0口接收指令,在程序校验时,输出指令,需要接电阻。
P1口:
P1口是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动4个TTL电路。对端口写“1”,通过内部的电阻把端口拉到高电平,此时可作为输入口。因为内部有电阻,某个引脚被外部信号拉低时输出一个电流。闪烁编程时和程序校验时,P1口接收低8位地址。
P2口:
P2口是一个内部带有上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动4个TTL电路。对端口写“1”,通过内部的电阻把端口拉到高电平,此时可作为输入口。因为内部有电阻,某个引脚被外部信号拉低时会输出一个电流。在访问外部程序存储器或16位地址的外部数据存储器时,P2口送出高8位地址数据。在访问8位地址的如有你有帮助,请购买下载,谢谢!
5页 外部数据存储器时,P2口线上的内容在整个运行期间不变。闪烁编程或校验时,P2口接收高位地址和其它控制信号。
P3口:
P3口是一组带有内部电阻的8位双向I/O口,P3口输出缓冲故可驱动4个TTL电路。对P3口写 “1”时,它们被内部电阻拉到高电平并可作为输入端时,被外部拉低的P3口将用电阻输出电流。
P3口除了作为一般的I/O口外,更重要的用途是它的第二功能,如下表所示:
表2.1 P3口第二功能
端口引脚 第二功能
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5 RXD TXD
INT0
INT1
T0
T1
P3.6
P3.7 WR
RD
P3口还接收一些用于闪烁存储器编程和程序校验的控制信号。
ALE/PROG:
当访问外部程序存储器或数据存储器时,ALE输出脉冲用于锁存地址的低8位字节。即使不访问外部存储器,ALE以时钟震荡频率的1/16输出固定的正脉冲信号,因此它可用于输出时钟或定时。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲时,闪烁存储器编程时,这个引脚还用于输入编程脉冲。如果必要,可对特殊寄存器区中的8EH单元的D0位置禁止ALE操作。这个位置后只有一条MOVX和MOVC指令ALE才会被应用。此外,这个引脚会微弱拉高,单片机执行外部程序时,应设置ALE无效。
PSEN:
程序储存允许输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器读取指令时,每个机器周期两次PSEN 有效,即输出两个脉冲。在此期间,当访问外部数据存储器时,这两次有效的PSEN 信号不出现。 如有你有帮助,请购买下载,谢谢!
6页 EA/VPP:
外部访问允许。欲使中央处理器仅访问外部程序存储器,EA端必须保持低电平。需要注意的是:如果加密位LBI被编程,复位时内部会锁存EA端状态。如EA端为高电平,CPU则执行内部程序存储器中的指令。闪烁存储器编程时,该引脚加上+12V的编程允许电压VPP,当然这必须是该器件是使用12V编程电压VPP。
XTAL1:震荡器反相放大器及内部时钟发生器的输入端。
XTAL2:震荡器反相放大器的输出端。
3 硬件设计
3.1 总体设计框图
图3.1 总体设计框图
3.2 各部分硬件设计及其原理
3.2.1 键盘设计与原理
键盘是由若干个按键组成的开关矩阵,它是最简单的单片机应用系统的输入设备,操作人员可以通过键盘输入数据或命令,实现简单的人机通信。本设计采用4×4的键盘结构,如图3.2
图3.2 键盘结构
键盘的行线X0~X3通过电阻接+5V。当键盘上没有键闭合时,所有的行线和列线都断开,行线都呈高电平。当键盘上某一个键闭合时,该键所对应的行线和列线都被短路。例如6号键被按下闭合时,行线X1和列线Y2被短路,此时X1的电平由Y2的电位决定。如果把行线接到单片机的输入口,列线接到单片机的输出口,则在单片机的控制下,先使列线Y0为低电平“0”,其余三根列线Y1、Y2、Y3都为高电平“1”,读行线状态。如果X0、 X1、 X2、 X3都为高电平,则Y0这一列上没有键闭合。如果读出的行线不全为高电平,则为低电平的行线和Y0相交的键处于闭合状态。如果Y0这一列上没有键闭合,接着使列线Y1为低电平,其余列线为高电平,用同样方法检查Y1这一列上是否有键闭合。这种逐行逐列地检查键盘状态的过程称为对键盘的AT89C51