单片机音乐播放器毕业论文.doc

上传人:土8路 文档编号:10060899 上传时间:2021-04-15 格式:DOC 页数:38 大小:5.52MB
返回 下载 相关 举报
单片机音乐播放器毕业论文.doc_第1页
第1页 / 共38页
单片机音乐播放器毕业论文.doc_第2页
第2页 / 共38页
单片机音乐播放器毕业论文.doc_第3页
第3页 / 共38页
单片机音乐播放器毕业论文.doc_第4页
第4页 / 共38页
单片机音乐播放器毕业论文.doc_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《单片机音乐播放器毕业论文.doc》由会员分享,可在线阅读,更多相关《单片机音乐播放器毕业论文.doc(38页珍藏版)》请在三一文库上搜索。

1、目 录 摘 要.1 前 言.2 第 1 章 设计综述 .3 1.1 单片机产生音调的基本原理 .3 1.2 开发环境简介 .3 1.3 设计内容与目标 .4 第 2 章 音乐播放器的功能与组成.5 2.1 音乐播放器的功能 .5 2.2 音乐播放器的组成 .5 第 3 章 系统总体设计与关键技术.7 3.1 系统总体设计 .7 3.1.1 音乐播放器的工作原理.7 3.1.2 音阶对应频率计数初值的计算.8 3.1.3 乐曲节拍的计算.8 3.1.4 乐谱在程序中的编制.9 3.2 系统中应用的关键技术 .9 第 4 章音乐播放器的硬件设计.10 4.1 单片机最小系统 .10 4.1.1 单

2、片机复位电路.10 4.1.2 单片机晶振电路.10 4.2 键盘接口电路的设计.11 4.3 LED 显示接口电路的设计 .12 4.4 扬声器控制电路的设计.13 4.5 硬件原理图 .13 第 5 章 音乐播放器的软件设计.15 5.1 主控软件的设计与流程图 .15 5.2 定时中断服务子程序的设计与流程图 .16 5.3 键盘控制模块的设计与流程图 .17 5.4 演奏乐曲模块的设计与流程图 .22 第 6 章 系统的实现与调试.25 6.1 硬件系统的焊接与调试 .25 6.2 软件调试 .26 6.2.1 测试 LED 显示模块.26 6.2.2 测试键盘控制模块.27 6.2.

3、3 测试 P3.0 口输出.28 6.3 调试中遇到的问题及解决 .28 第 7 章 结 论.30 参 考 文 献.34 致 谢.35 摘摘 要要 随着科技的不断发展,目前市场上出现了许许多多的音乐播放器,人们对播放器的 需求也越来越广泛,对其要求也越来越高。 本文分析了基于单片机的音乐播放器的工作原理,详细介绍了音乐播放器的功能及 其硬件设计和软件设计的方法,给出了基于 MCS-51 单片机的音乐播放器的具体实现方案 并重点讲述了其硬件实现与软件编写,实现了单片机音乐播放器对音乐的演奏。 关键词关键词 : 音乐播放器、MCS-51 单片机、LED 显示器 Abstract With the

4、continuous development of science and technology, the market appeared many music players, the demand of players has become increasingly extensive and increasing their demands. This paper analyzes the SCM-based music players working principle, described in detail the function of music player and its

5、hardware design and software design methods, given MCS-51 single- chip based on the music player to achieve the specific program and focus on the achievement of its hardware and software development, to achieve a single chip music player for playing music. Keywords : music player、MCS-51 Single-Chip

6、Microcomputer、LED 前前 言言 几千年来,各种乐器的发声无一不是依靠琴弦、簧片、哨片引起管柱振动而作为声 源的。随着现代电子工业技术的飞速发展,一种用新的声源来制造音响的新型乐器脱颖 而出,这就是目前人们熟知的电子音乐播放器1。目前市场上的音乐播放器形形色色, 例如大家所熟悉的MP3,随着电子技术的不断发展,音乐播放器的发展也会进一步发展。 目前单片机的应用渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机 的踪迹。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工 业自动化过程的实时控制和数据处理,广泛使用的各种智能 IC 卡,民用豪华轿车的安全 保障

7、系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这 些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、医疗器械了2。 本课题即是在这种背景下,对基于 MCS51 单片机的音乐播放器的设计与实现进行了 硬件及软件的设计,并给出了一套完整的解决方案,实现了单片机音乐播放器对音乐的 演奏。 第第1 1章章 设设计计综综述述 1.11.1 单片机产生音调的基本原理单片机产生音调的基本原理 音乐播放器是利用单片机产生乐曲音符,再把乐曲音符翻译成计算机音乐语言,用 单片机进行信息处理,再通过蜂鸣器或喇叭放出音乐。 音乐的产生主要是通过单片机的 I/O 口输出高低不同的脉冲信号

8、来控制蜂鸣器发音。 要想产生音频脉冲信号,需要算出某一音频的周期(1/频率),然后将此周期除以 2,即为 半周期的时间。利用单片机定时器计时这个半个周期时间,每当计时到后就将输出脉冲 的 I/O 口反相,然后重复计时此半周期时间再对 I/O 口反相,这样就能在此 I/O 口上得 到此频率的脉冲。 通常,利用单片机的内部定时器 0,工作在方式 1 下,改变计数初值 TH0 和 TL0 来产 生不同频率。 对于音乐的节拍,每个音符使用 1 个字节,字节的高 4 位代表音符的高低,低 4 位 代表音符的节拍。如果 1 拍为 0.4S,1/4 拍为 0.1S,只要设定延迟时间就可求得节拍的 时间。假设

9、 1/4 拍为 1DELAY,那么 1 拍应为 4DELAY,以此类推。所以只要求得 1/4 拍的 DELAY,其余的节拍就是它的倍数。 总而言之,一首乐曲是由音阶和节拍两大要素构成。一首乐曲演奏的原理是:不同 音阶分别对应不同的频率,发出不同的音调,而节拍则控制发出音调时间的长短;若将 乐曲的音调连续发出,并使其按相应的节拍变化,即可演奏一首乐曲。根据这一特点, 我们采用单片机辅以相应的接口来设计音乐播放器3。 1.21.2 开发环境简介开发环境简介 随着单片机的不断发展,以C为主流的单片机高级语言也不断被更多的单片机爱好者 和工程师所喜爱。使用C语言肯定要使用到C编译器,以便把写好的C程序

10、编译为机器码, 这样单片机才能执行编写好的程序。KEIL uVISION2是众多单片机应用开发软件中优秀的 软件之一,它支持众多不同公司的MCS-51架构的芯片,它集编辑,编译,仿真等于一体, 同时还支持,PLM,汇编和C 语言的程序设计,它的界面和常用的微软VC+的界面相似, 界面友好,易学易用,在调试程序,软件仿真方面也有很强大的功能4。 本系统采用的开发环境为 KEIL uVISION2,软件开发环境主界面见图 1-1。 图 1-1 KEIL uVISION2 集成开发环境主界面 1.31.3 设计内容与目标设计内容与目标 本设计以 AT89C51 单片机为核心。通过对其定时器的设定来实

11、现音乐的播放,通过 对键盘的设置可以实现人机对话,借助键盘可以向计算机系统输入程序,置数、送操作 命令、控制程序的执行走向等,并最终通过 LED 显示器显示出播放的乐曲。 重点研究内容有: 单片机最小系统的设计与实现 键盘电路的设计与控制 扬声器控制电路的设计与实现 LED 显示器的驱动及显示 定时初值的计算 软件模块的设计与编写 第第2 2章章 音乐播放器的功能与组成音乐播放器的功能与组成 2.12.1 音乐播放器的功能音乐播放器的功能 基于单片机的定时和控制装置在许多行业中有着广泛的应用,而音乐播放器是 其应用之一。在基于单片机的音乐播放器电路中,除了基本的单片机系统和外围电 路外,还需要

12、外部的控制和显示装置。在本设计中,输入装置是按键开关,由于控 制音乐播放器的运行模式,显示装置是 LED 七段数码管5。 此次设计的音乐播放器要求具有以下功能: 音乐播放器按照从头到尾的顺序自动播放预先设定的 14 共 4 首乐曲,全部乐曲 播放完毕则停止。 音乐播放器按照从头到尾的顺序自动循环播放预先设定的全部乐曲。 选定某一乐曲,随即输入选定乐曲的序列号(14),即按下 14 数字键之一,音 乐播放器对选定的某一乐曲开始循环播放。 选定某一乐曲,随即输入选定乐曲的序列号(14),即按下 14 数字键之一,音 乐播放器就从选定的某一乐曲开始播放,按照顺序自动播放到最后一首乐曲,乐曲播放 完毕

13、则停止。 当用户按下暂停键时,音乐播放器打断正在播放的某一乐曲,用户再次按下暂停 键时,该乐曲继续播放。 当用户按下复位键时,音乐播放器终止正在播放的某一乐曲。 2.22.2 音乐播放器的组成音乐播放器的组成 根据系统音乐播放器的功能要求,一个完整的音乐播放器电路相当于一个简单的单 片机系统,该系统由按键开关、单片机、LED 显示电路、扬声器控制电路 4 个方面构成。 51 单片机。51 单片机为整个系统的核心部分,是带动整个系统工作的重要部件。 键盘输入。键盘输入用来控制输入指令,发出指令至单片机,使单片机按照指令 工作。 扬声器。扬声器作为输出部分按照键盘给单片机的指令发出乐曲。 LED

14、显示电路。LED 显示器也作为输出部分,按照键盘给单片机的指令,显示正在 演奏的乐曲。 音乐播放器的系统组成框图如图 2-1 所示: 图 2-1 音乐播放器的系统组成框图 CPU AT89C51 键盘输入扬声器 LED 显示电路 第第3 3章章 系统总体设计与关键技术系统总体设计与关键技术 3.13.1 系统总体设计系统总体设计 根据系统的功能与组成,进行系统分析,系统除 CPU 核心部分外还需要与键盘连接 以接收输入指令,连接 LED 显示器将要演奏的乐曲序号显示出来,通过连接扬声器使其 发出音乐。系统总体结构如图 3-1 所示。 图 3-1 系统总体结构框图 3.1.13.1.1 音乐播放

15、器的工作原理音乐播放器的工作原理 音乐播放器可利用单片机的定时器构成电子振荡器来发声。振荡器是电子乐曲播放 器的声源,专门用来制造音响,也称信号发生器,其作用相当于常规乐器的琴弦、簧片、 哨片。振荡器在音乐播放器的应用中有两个特点,可产生声音的频率与不同波形的振荡。 通过对单片机的定时器设置不同的定时初值,可发出音乐的不同音阶,通过调整振荡波 形与泛音的分布,可产生和变换各种音色。 在我们所设计的音乐播放器中,是通过单片机的定时器,产生不同频率的方波信号, 而没有调整振荡波形,因此音乐播放器发出的声音,是矩形波产生的音响,纯粹的矩形 波声音类似于单簧管的音色。 一首乐曲演奏的原理是:一首乐曲是

16、由音阶和节拍两大要素构成,不同音阶分别对 应不同的频率,发出不同的音调,而节拍则控制发出音调时间的长短;若将乐曲的音调 连续发出,并使其按相应的节拍变化,即可演奏一首乐曲。根据这一特点,我们采用单 片机辅以相应的接口来设计音乐播放器。 晶振、复位电路 单片机 键盘输入控制 LED 显示电路 扬声器 3.1.23.1.2 音阶对应频率计数初值的计算音阶对应频率计数初值的计算 单片机的振荡频率为fosc12MHz ,通过定时器 T0 溢出后对 P3.0 口取反产生方波, 故定时器溢出时间为 1/2f 。 由: , 则定时初值为: nosc n ff X 2 112 )2( 1616 2 24 os

17、c n n f X f 以音阶“1”为例:f523 Hz,则 T1/f 定时初值: 6 1616 12 10 226458044 2424 523 osc n n f XFCH f 用同一方法可求出其它音阶所对应的频率定时初值,将其制表放在程序中,通过查 表向定时器 T0 装入所要求的定时初值,即可产生某一音阶所对应的频率的方波信号。C 调的音阶及其频率、在单片机中的定时初值对应如下: 音 名 C D E F G A B 简谱音阶 1 2 3 4 5 6 7 频率/ Hz 262 294 330 349 392 440 494 定时初值 63628 63835 64021 64103 6426

18、0 64400 64524 表中序号 1 2 3 4 5 6 7 音 名 C D E F G A B 简谱音阶 1 2 3 4 5 6 7 频率/ Hz 523 587 659 698 784 880 988 定时初值(Hex) 64580 64684 64777 64820 64898 64968 65030 表中序号 8 9 10 11 12 13 14 音 名 C D E F G A B 简谱音阶 1 2 3 4 5 6 7 频率/ Hz 1046 1175 1318 1397 1568 1760 1967 定时初值(Hex) 65058 65110 65157 65178 65217

19、65252 65283 表中序号 15 16 17 18 19 20 21 3.1.33.1.3 乐曲节拍的计算乐曲节拍的计算 取乐曲节拍的长度为 0.4s ,即 1 拍0.4s ,由定时器 T1 控制延时。设置定时器 T1 的定时中断 T50ms ,采用定时方式 1。 由: ,则定时初值 X3C0BHT f X osc 12 )2( 16 因此 1 拍0.4s8*50ms,即通过定时器 T1 的定时中断 8 次,产生 8*50ms 的定时, 就可以满足 1 节拍的定时要求。以此类推,通过定时中断 N 次,可产生 N*50ms 的定时以 满足 1/4 拍、1/2 拍、1 拍、2 拍等不同节拍的

20、定时要求。由此可知,节拍值只能是整数 值。不同节拍在单片机中的中断次数(音长)对应如下: 节 拍 1/8 1/4 1/2 3/4 1 3/2 2 3 4 时间长度 0.05s 0.1s 0.2s 0.3s 0.4s 0.6s 0.8s 1.2s 1.6s 音长(Dec) 1 2 4 6 8 12 16 24 32 音长(Hex) 01H 02H 04H 06H 08H 0CH 10H 18H 20H 3.1.43.1.4 乐谱在程序中的编制乐谱在程序中的编制 将乐谱转换为代码,应包含乐曲的总长度、音阶、音长(节拍)等信息。 具体设计如下: (1) 将音阶代码组成一个字节,节拍代码组成一个字节,

21、按照:音阶代码,节拍代 码,音阶代码,节拍代码 的顺序,将一个乐谱转换为一定长度的代码数据表。 (2) 在程序执行时顺序查此表,取出音阶代码,并根据音阶代码查频率表,以得到 该音阶对应的频率,随后将对应的定时初值送定时器 T0,使定时器 T0 产生该音阶对应的 频率,并通过 P3.0 口输出,驱动外接扬声器发声。 (3) 取出节拍代码 N,由定时器 T1 控制延时,通过定时中断 N 次,产生 N*50ms 的定 时。 T0、T1 启动后,根据乐谱表,某一个音阶发出相应频率的声音,并持续相应的节拍, 连续起来,我们就可以听到一个完整乐曲的演奏。 3.23.2 系统中应用的关键技术系统中应用的关键

22、技术 基于单片机的音乐播放器在设计时需要解决以下 4 个方面的问题: 有关单片机中定时器的使用。 利用键盘控制实现对单片机的控制。 LED 显示模块的驱动和编制。 扬声器控制电路,用于发出不同频率的音调。 第第4 4章章音乐播放器的硬件设计音乐播放器的硬件设计 一个完整的音乐播放器电路相当于一个简单的单片机系统,该系统由按键开关、 单片机、晶振和复位电路、LED 显示电路、扬声器控制电路 5 个方面构成。其中, 除了单片机是集成的 IC 芯片,而其他 4 个部分则需根据应用要求而设计。 4.14.1 单片机最小系统单片机最小系统 单片机芯片,配以必要的外部器件就能构成单片机最小系统。单片机具有

23、较强的外 部扩展、通信能力,能方便地扩展至应用系统所要求的规模。 当使用带 ROM 或 EPROM 的 MCS51 系列单片机时,只要一个芯片即可构成一个单片机 的最小系统。选用 80C51 或 8051 或 AT89C51 单片机作为主机,它们都具有 4K 片内 ROM,128 字节片内 RAM,片外 ROM 寻址范围达 64K,片外 RAM 寻址范围达 64K,2 个 16 位 计数器,5 个中断源,4 个并行口,1 个串行口。简易自动乐曲播放器采用单片机最小系 统足以满足系统设计要求,同时要设计单片机最小系统的晶振和复位电路。 4.1.14.1.1 单片机复位电路单片机复位电路 复位是单

24、片机的初始化操作,其作用是使 CPU 中的各个部件都处于一个确定的 初始状态,并从这个状态开始工作。当 8051 的 ALE 及 两脚输出高电平,RST 引脚 高电平时,单片机复位。 8051 单片机的复位电路有上电复位和手动按钮复位两种形式,RST/VPD 端的高 电平直接由上电瞬间产生高电平则为上电复位;若通过按钮产生高电平复位信号称 为手动按钮复位。图 4-1 为兼有上电复位与按钮复位的电路。图中,上电瞬间 RST 端的电位与 Vcc 相同,随着电容充电电流的减小,+5V 立即加到了 RST/VPD 端,该 高电平使 8051 复位。若运行过程中,需要程序从头开始执行,这只需按图 4-1

25、 中 的按钮即可。按下按钮则直接把+5V 加到了 RST/VPD 端从而复位,这称为手动复位。 在实际应用系统中,有些外围芯片也需要复位,如果这些复位端的复位电平要求与 单片机的要求一致,则可以与之相连。 4.1.24.1.2 单片机晶振电路单片机晶振电路 晶振是给单片机提供工作信号脉冲的,这个脉冲就是单片机的工作速度。比如 12M 晶 振,单片机工作速度就是每秒 12M。当然,单片机的工作频率是有范围的,不能太大, 一般 24M 就不上去了,不然不稳定 。图 4-2 为晶振电路。 图 4-1 复位电路 图 4-2 晶振电路 4.24.2键盘接口电路的设计键盘接口电路的设计 单片机应用系统中的

26、人机对话通道是用户为了对应用系统进行干预以及了解应用系 统运行状态所设置的通道。主要有键盘、显示器等通道接口。 在单片机应用系统中,为了控制系统的工作状态以及向系统中输入数据,应用系统 设置键盘,用于系统复位,功能转换以及数字输入。键盘的设置可以实现人机对话,借 助键盘可以向计算机系统输入程序、置数、送操作命令、控制程序的执行走向等。 在本次设计中键盘由 P1 口输入, 按键设置:14 四个数字键,AF 六个功能键。 数字键(14): 用于输入 14 共 4 首乐曲的序列号。 功能键(AF): A 键:乐曲从 14 按顺序播放 B 键:乐曲从 14 循环播放 C 键:循环播放某一乐曲 D 键:

27、从某一乐曲开始播放至最后一首乐曲 E 键:暂停/播放 F 键:停止播放 各功能键(AF)的意义与操作: A 键:乐曲从 14 按顺序播放。 当用户按下 A 键后,LED 显示器清屏,简易自动乐曲播放器按照从头到尾的顺序自动 播放预先设定的 14 共 4 首乐曲,全部乐曲播放完毕则停止。 B 键:乐曲从 14 循环播放。 当用户按下 B 键后,LED 显示器清屏,简易自动乐曲播放器按照从头到尾的顺序自动 循环播放预先设定的全部乐曲。 C 键:循环播放某一乐曲 当用户按下 C 键后,并选定某一乐曲,随即输入选定乐曲的序列号(14),即按下 14 数字键之一,简易自动乐曲播放器对选定的某一乐曲循环播

28、放。 D 键:从某一乐曲开始播放至最后一首乐曲 当用户按下 D 键后,并选定某一乐曲,随即输入选定乐曲的序列号(14),即按下 14 数字键之一,简易自动乐曲播放器就从选定的某一乐曲开始播放,直到乐曲播放完 毕则停止。 E 键:暂停/播放。 当用户按下 E 键时,简易自动乐曲播放器打断正在播放的某一乐曲,用户再次按下 E 键时,该乐曲继续播放。 F 键:停止播放。 当用户按下 F 键时,简易自动乐曲播放器终止正在播放的某一乐曲。 本设计中按键作为输入部分,由 P1 口输入。 4.34.3LEDLED 显示接口电路的设计显示接口电路的设计 在单片机应用系统中,使用的显示器主要有 LED 显示器(

29、发光二极管显示器) 。这种 显示器成本低廉,配置灵活,与单片机接口方便。在本系统的设计中采用 LED 显示器。 LED 显示器由 8 位 LED 数码管组成,用于显示系统在各种不同条件下的状态。 用单片机驱动 LED 数码管有很多方法,按显示方式分,有静态显示和动态显示,按 译码方式分为硬件译码和软件译码。 静态显示是显示驱动电路具有输出锁存功能,单片机将要显示的数据送出后不再控 制 LED,直到下次显示时再传送一次新的显示数据。静态显示的数据稳定,占用 CPU 时间 少。 动态显示要 CPU 时刻对显示器件进行数据刷新,显示数据会有闪烁,占用的 CPU 时 间多。 这两种显示方式各有利弊:静

30、态显示虽然数据显示稳定,占用很少的 CPU 时间,但 每个显示单元都需要单独的显示驱动电路,使用的电路硬件较多;动态显示虽然闪烁, 占用的 CPU 时间多,但使用的硬件少,能节省线路板空间。 在本设计中由于显示部分比较简单,所以选用了静态显示方式,LED 显示器由 74LS373 来驱动,为了扩展外部存储器需一块 74LS373(地址锁存器) 。 LED 发光器件一般常用的有两类:数码管和点阵。常用的数码管一般为 8 字型数码管, 分为 A、B、C、D、E、F、G、DP 八段,其中 DP 为小数点。数码管常用的有 10 根管脚, 每一段有一根管脚,另外两根管脚为一个数码管的公共端,两根之间相连

31、通。 数码管从电路上来看可分为共阴和共阳两种,在本设计中用了共阳的 LED。 4.44.4扬声器控制电路扬声器控制电路的设计的设计 扬声器控制电路用于发出不同频率的音调,是在 P3.0 口加一反相器再连接到喇叭这 样就可够成。 4.54.5 硬件原理图硬件原理图 通过以上分析,本次设计的音乐播放器的电路原理图如图 4-4 所示。 图 4-4 音乐播放器的原理图 开机加电 显示等待提示状态 F 读取键盘 是否有键输入? N 是否是A键? Y 是否是 B 键? N 是否是D键? N Y A 键子程序 Y B 键子程序 关闭定时器 T0、T1 置定时器 T0、T1 工作方式 Y D 键子程序 是否是

32、 C 键? C 键子程序 N Y 第第5 5章章 音乐播放器的软件设计音乐播放器的软件设计 软件设计的重点在于定时中断的设计、键盘控制、显示的实现、乐曲的演奏等方面。 5.15.1 主控软件的设计主控软件的设计与流程图与流程图 主模块是系统软件的框架。本系统的主模块的程序框图可用图 5-1 来表示。主控模 块用于控制系统的工作。该模块先初始化,接着接受到复位信号后读取键盘信号,再调 用各键子程序。 图 5-1 主控模块的流程图 主控程序主要源程序代码如下: START: MOV SP, #60H MOV TMOD, #11H MOV IE, #8AH 中断入口 产生周期方波 启动定时器 T0

33、查频率表重装音频初值 中断返回 关闭定时器 T0 MOV IP, #08H ;T1 中断优先于 T0 中断 MOV TH1, #3CH MOV TL1, #0BH;以上为系统初始化,T=50ms W1: MOV P2, #10001110B ;等待提示F LCALLGETKEY CJNE A, #0FFH, W1 MOV A, B CJNE A, #0AH, W2 LCALL KEY_A ;输入键是A,转 KEY_A SJMPW1 W2: CJNEA, #0BH, W3 LCALL KEY_B ;输入键是B,转 KEY_B W3: CJNEA, #0CH, W4 LCALL KEY_C ;输入

34、键是C,转 KEY_C W4: CJNEA, #0DH, W5 LCALL KEY_D SJMPW1 ;输入键是D,转 KEY_D 5.25.2 定时中断服务子程序定时中断服务子程序的设计与流程图的设计与流程图 定时器 T0 用于产生不同频率的音阶,如图 5-2 为定时器 T0 的中断服务子程序。而 定时器 T1 控制延时来实现不同的节拍,定时时间设定为 50ms,图 5-3 为定时器 T1 的中 断服务子程序。 图 5-2 定时器 T0 的中断服务流程图 中断入口 装入定时常数=3C0BH 启动定时器 T1 节拍数减 1 中断返回 关闭定时器 T1 图 5-3 定时器 T1 中断服务流程图

35、其程序如下所示 INT_T0: CLR TR0 ;定时器 0 中断子程序 MOV TL0, 20H MOV TH0, 21H CPL P3.0 SETB TR0 RETI INT_T1: CLR TR1 ;定时器 1 中断子程序 CLR TR0 LCALLKEY_E MOV TH1, #3CH MOV TL1, #0BH DJNZ 60H, OUT MOV 60H, #20 OUT:SETBTR1 RETI 5.35.3 键盘控制模块键盘控制模块的设计与流程图的设计与流程图 键盘控制模块分为 6 个功能键和读 4 个数字键。下面分别介绍各个键的流程图和程 序: 入口 系统复位 系统返回 入口

36、LED 显示 E TR0、TR1 取反 系统返回 E键被按下? N Y F 键子模块 F 键是用于实现系统复位 图 5-4 F 键流程图 E 键子模块 E 键用于实现对乐曲的暂停和播放 图 5-5 E 键子程序流程图 按下 E 键的主要源程序代码如下 KEY_E: JBP3.1, L2 ;中断键盘检测 LCALLDELAY2 ;消除抖动 JB P3.1, L2 ;如果是高电平就跳到 L2 JNB P3.1, $ ;如果仍然是低电平就执行中断程序 MOV P2, #10000110B ;让 LED 显示 E L3: JB P3.1, $ ;检测低电平,直到低电平时才跳出该指令 LCALLDELA

37、Y2 JB P3.1, L3 JNB P3.1, $ ;如果再来一个高电平才跳出中断 MOV P2,R5 入口 LED显示器清屏 调 A键子程序 系统返回 L2: SETB TR0 RET A 键子模块 当用户按下 A 键后,LED 显示器清屏,简易自动乐曲播放器按照从头到尾的顺序自动 播放预先设定的 14 共 4 首乐曲,全部乐曲播放完毕则停止。 入口 LED 显示器清屏 调 MUSIC1 MUSIC4 子程序 即按顺序自动播放 4 首乐 曲,并显示相应的序号 系统返回 图 5-6 A 键子程序流程图 A 键主要源程序代码如下: KEY_A: LCALLMUSIC1 ;乐曲我和你 LCALLMUSIC2 ;乐曲万水千山总是情 LCALLMUSIC3 ;乐曲送别 LCALLMUSIC4 ;乐曲北京欢迎您 RET B 键子模块 当用户按下 B 键后,LED 显示器清屏,简易自动乐曲播放器按照从头到尾的顺序自动 循环播放预先设定的全部乐曲。 入口 LED 显示器清屏 数字键按下? N Y Y 系统返回 是否是4? 是否是3? 是否是2? 是否是1? 乐曲 4 MUSIC 4并显示 乐曲 3 MUSIC 3并显示 乐曲 2 MUSIC 2并

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1