单片机课后作业:音乐倒数定时器

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录

一、设计要求 (1)

二、设计目的 (1)

三、设计的具体实现 (2)

1系统概述 (2)

2单元电路设计 (3)

3软件程设计和调试 (7)

四、结论和展望 (24)

五、心得体会及建议 (25)

六、附录 (26)

七、参考文献 (27)

基于单片机音乐倒数定时器的设计

报告

一、设计要求

利用单片机结合LCD显示器设计一个倒数计时器,可以放在家中使用,例如煮方便面、煮开水或小睡片刻等,做一小段时间计时。当倒数计时为0时,则发出一段音乐,通知倒数终了,该做重要的事情了。

具体要求:

①文字型LCD(16*2)显示目前倒数的时间;显示格式为“TIME 分分:秒秒”;具有4个按键操作来设置现在想要倒数的时间;一旦按键后则开始倒数计时,当计时为零则发出一阵音乐声响,②程序执行后工作指示灯LED山东,表示程序开始执行,七段显示器显示“0500”,按下操作键K1~K4动作如下:操作键K1,可调整倒数时间1min~60min;操作键K2,设置倒数计时时间为5min,显示“0500”;操作键K3,设置倒数计时时间为10min,显示“1000”;操作键K4,设置倒数计时时间为20min,显示“2000”,③RESET 后按下K1显示如下:

UP DOWN OK

TIME 04:59 倒数时间

操作键K2:增加倒数计时1min;操作键K3,减少倒数计时1min,操作键K4:设置完成。④一旦按键后则开始倒数计时,当计时为0时则发出一段音乐,同时继电器启动

二、设计目的

1、通过该设计能提高学生分析解决问题的能力。

2、了解模拟电路及数字电路的相关知识。

3、学习单片机定时器时间计时处理、按键扫描、LCD显示及音乐旋律演奏的设计方法。

三、设计的具体实现

1.系统概述

1.1 总体方案论证

要实现音乐倒数定时器可以用两种方案实现。

方案一:利用PROG-110可编程控制器

PROG-110 可编程器,是一种用《数字简码》控制的产品,它的特点是:自带一套用于输入数码的按键和显示程序的数码管,只要我们现场输入一列2位数码,编制的程序即能完成,即编,即用。每一种《数字简码》控制器,它都自带一套系统软件,每一套系统软件都有一套相对应的指令表,配套的指令表表明,只要输入什么样的数,程序将去做什么事,输入一列数,它就会按次序去完成你要求它做的所有的事。

但是首先PROG-110模块总共只有6个I/O端口,这就必须扩展模块端口,用两部以上模块串联,但花钱要多;其次是程序过长,PROG-110模块的E2PROM存储器24C01只可输入128步程序;第三是受PROG-110模块跳转指令步数的限制。

方案二:利用单片机、LCD显示器和压电喇叭

单片机具有性能高、速度快、体积小、价格低、稳定可靠、应用广泛、通用性强等突出优点。它在硬件结构、指令系统、I/O 端口、功率消耗及可靠性等方面均有其独特之处,其最显著的特点之一就是具有非常有效的控制功能。而LCD显示器具有体积小、重量轻、工作电压低、功耗极低、显示内容丰富、稳定可靠、成本低、控制驱动方便、接口简单易用、模块化结构紧凑等特点。

综上所述,按照设计要求我选择第二种方案,即利用单片机和LCD显示器来实现定时倒数,通过压电喇叭来发出音乐。

1.2 单片机选择方案

采用8051单片机

8051单片机内部包含一个8位CPU、一个片内振荡器及时钟电路、ROM程序存储器、RAM数据存储器、两个16位定时器/计数器、可分别寻址64KB的程序存储器空间和64KB的数据存储器空间、32条可编程的I/O口线(4个8位并行I/O端口)、一个可编程全双工串行口、具有5个中断源和2个优先级的中断结构。可以有效实现本次设计中要求的各项功能。

具体的设计流程可见图1:

2.单元电路设计

2.1控制电路

图1 设计流程图2.单元电路设计

2.1控制电路

倒数计数器的控制电路可以见附图,其中主要分为以下几部

⑴单片机8051

8051 基本资料如下:

图2 8051引脚图

8051主要使用引脚功能说明如下:

●8051的引脚40接+5V电源,引脚20接电源地线。

●传统8051工作时钟的最高为12MHz。

●EA引脚低电平动作用来存取外部程序ROM控制。

●EA接地,由外部程序ROM来执行程序。

●EA接高电平,由内部ROM来执行程序。

●开机时必须加入芯片重置信号。(RESET)

●RESET信号高电平动作,高电平时产生芯片重置。

●RESET信号低电平时,由程序ROM地址0开始执行程序。

在本次设计中采用的8051外接电路如图3所示:

P3.5

图3 8051外接电路图

8051系列的单片机的时钟方式分为内部方式和外部方式。内部方式就是在单片机的引脚18、19外接晶振,就够成了自激振荡器在单片机内部产生时钟脉冲信号。外部时钟方式是把外部已经有的时钟信号引入到单片机内部。时钟电路在计算机系统中起着非常重要的作用,是保证系统正常工作的基础。在一个单片机应用系统中,时钟有两方面的含义:一是指为保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢;二是指系统的标准定时时钟,即定时时间。

用一个12MHz晶振和两个30Pf瓷片电容组成,为单片机提供标准时钟,其中两个瓷片电容可以增加电路的稳定性,可以抗噪声增加稳定性,不容易死机。

在8051中之所以采用高性能的振荡电路,因为:

1.单片机电子钟的计时脉冲基准是由外部晶振的频率经过12分频后提供,采用内部的定时/计数器来实现计时功能。所以,外接晶振频率精确度直接影响电子钟计时的准确性。

2.单片机电子钟利用内部定时/计数器溢出产生中断(12M晶振一般为50ms)再乘以相应的倍率来实现秒、分、时的转换。大家都知道从定时/计数器产生中断请求到响应中断需要3-8个机器周期,定时中断子程序中的数据入栈和重装定时/计数器的初值还需要占用数个机器周期,还有从中断入口转到中断子程序也要占用一定的机器周期。

工作指示灯LED,送出低电平时,LED点亮,高电平时则使LED熄灭。

●程序执行中有情况产生时,LED闪动一下。

●用于状态区分,如状态1闪动一下,状态2闪动两下。

●程序执行中遇到特殊错误时,持续闪动。

⑵LCD显示器

SDEC LCD 16*2

本次设计使用的倒数计时LCD控制,使用的是16字*2行设

相关文档
最新文档