基于AT89C52单片机的音乐盒设计毕业设计(2)

2025-10-07

1.3应用软件介绍

本设计利用KEIL编程软件对音乐盒源程序进行编程并调试,配合PROTEUS仿真软件对硬件进行仿真调试,两种软件的简介如下: 1.3.1 Proteus软件简介

Proteus软件是英国Labcenter electronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的仿真工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年即将增加Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持IAR、Keil和MPLAB等多种编译器。 1.3.2 KEIL简介

单片机开发中除必要的硬件外,同样离不开软件,我们写的汇编语言源程序要变为CPU可以执行的机器码有两种方法,一种是手工汇编,另一种是机器汇编。机器汇编是通过汇编软件将源程序变为机器码,用于MCS-51单片机的汇编软件有早期的A51,随着单片机开发技术的不断发展,从普遍使用汇编语言到逐渐使用高级语言开发,单片机的开发软件也在不断发展,Keil软件是目前最流行开发MCS-51系列单片机的软件,这从近年来各仿真机厂商纷纷宣布全面支持Keil即可看出。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部份组合在一起。运行Keil软件需要Pentium或以上的CPU,16MB或更多RAM、20M以上空闲的硬盘空间、WIN98、NT、WIN2000、WINXP等操作系统。掌握这一软件的使用对于使用51系列单片机的爱

4

好者来说是十分必要的,如果你使用C语言编程,那么Keil几乎就是你的不二之选(目前在国内你只能买到该软件、而你买的仿真机也很可能只支持该软件),即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开发大型软件时更能体现高级语言的优势。

2设计方案

本文提出了一种基于AT89C52单片机的音乐盒设计方案,实现对蜂鸣器发音控制。AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C52单片机在电子行业中有着广泛的应用。

本方案以AT89C52单片机与按键组成核心主控制模块。在主控模块上设有3个按键;根据用户需要可以编写出曲目代码并有数码显示对应曲目序号,利用其内部定时器T0实现定时中断。本方案中应用定时计数器T0、T1,计数器0工作于方式1,计数器1以计数方式,工作于方式2。

本次系统中应用中断指令。当键盘有键按下时,判断键值,启动计数器T0,产生一定频率的脉冲,驱动蜂鸣器,放出乐曲。同时启动定时器T1,显示歌曲号。

单片机音乐盒的系统结构框图

5

蜂鸣器电路 89C52 内部振荡电路 复位电路 数码管显示 中断控制电路

3时钟电路

单片机内有时钟电路,与振荡器共同产生单片机工作所需要的时钟信号。它使单片机在唯一的时钟信号控制下,严格地按一定的节拍进行工作(按一定的时序进行工作)。

振荡器可由单片机内振荡元件外接振荡元件实现,构成内部时钟方式,即在XTAL1和XTAL2引脚跨接振荡器元件(如晶振),则可构成一个稳定的自激振荡器。如果振荡器元件是晶振,则在晶振两个引脚上接上两个电容。电容主要是起频率微调和稳定的作用。电容容量一般为20-40pf基本都可以。本系统选择12MHZ的晶体振荡器,30pf电容。如图3所示。

图3

6

4 复位电路

复位是令单片机初始化的操作,其主要功能是初始化单片机的工作状态。例如,把程序计数器PC的值初始化为0000H,这样单片机在复位后就从程序存储器ROM的0000H单元开始执行程序。另外,当程序运行出错或因操作错误而使系统处于死锁状态时,按复位键来重新初始化单片机。RST引脚是复位信号的输入端。实现复位操作,必须使RST引脚至少保持两个机器周期的高电平(一般用手按下去再放开,都能达到两个机器周期),再从高电平变为低电平,完成复位。复位后,单片机从ROM中的0000H单元开始执行程序。复位操作有上电自动复位、按键复位等方式。 4.1上电复位

是通过外部复位电容充电来实现复位。由于电容通交流隔直流,在上电瞬间可等效交流电,在这一瞬间RST引脚的电位与VCC的电位一样。由于电容两端电压差不断增大,则RST端的电压逐渐变小,直至电容充电完毕。电容的充电时间必须大于两个机器周期。如图4-1。

图4-1

4.2按键复位

是通过按键接通的瞬间,使RST为高电平,实现复位功能。有些单片机内部设置RST接收低电平时,实现复位功能RST是高电平还是低电平时复位,要根据单片机的类型而定。如图4-2。

7

图4-2

本系统选择上电复位。其中电容为10uf,复位电阻为10k。

5 硬件设计

音乐盒控制系统包括2大部分,即音乐盒控制模板(AT89C52主控模块)和音乐

盒发音模块(数码管显示模块)。前者是主控模块,具有按键功能,并利用AT89C52的P3口输出控制信号;后者是受控模块,利用AT89C52的P1、P2口输入控制信号,上面焊有蜂鸣器和数码显示器。 5.1 按键模块设计

主控模块主要设计器件有AT89C2,3个按键。通过软件设计,使单片机p3口作为蜂鸣器和数码管的信号输出口。其中k1接p3.2,作为上一曲的按键;k2接p3.3,作为下一曲的按键;k3接p3.5,作为开始/暂停的按键。如图5-1。

图5-1

通过K1,K2,K3三个按键,分别实现上一曲,下一曲和开始/暂停的切换。

8


基于AT89C52单片机的音乐盒设计毕业设计(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:高三文科数学模拟试题含答案

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219