多功能生日音乐盒设计Word文档下载推荐.docx

上传人:b****6 文档编号:20412019 上传时间:2023-01-22 格式:DOCX 页数:24 大小:903.23KB
下载 相关 举报
多功能生日音乐盒设计Word文档下载推荐.docx_第1页
第1页 / 共24页
多功能生日音乐盒设计Word文档下载推荐.docx_第2页
第2页 / 共24页
多功能生日音乐盒设计Word文档下载推荐.docx_第3页
第3页 / 共24页
多功能生日音乐盒设计Word文档下载推荐.docx_第4页
第4页 / 共24页
多功能生日音乐盒设计Word文档下载推荐.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

多功能生日音乐盒设计Word文档下载推荐.docx

《多功能生日音乐盒设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《多功能生日音乐盒设计Word文档下载推荐.docx(24页珍藏版)》请在冰豆网上搜索。

多功能生日音乐盒设计Word文档下载推荐.docx

3

硬件设计

12.29-1.2

4

焊接电路板

1.2-1.4

5

软件,硬件调试

1.4-1.5

6

撰写和打印论文

1.6

五、应收集的资料及主要参考文献

李朝青主编.单片机原理及接口技术.北京航空航天大学出版社

谭浩强主编.C程序设计.清华大学出版社

蒋力培主编.单片微机系统实用教程.机械工业出版社

周明德主编.微型计算机系统原理及应用.清华大学出版社

发出任务书日期:

2010年12月29日指导教师签名:

计划完成日期:

2011年1月6日基层教学单位责任人

章:

主管院长签章:

目录

1.摘要………………………………………………………………………………5

2.器件简介……………………………………………………5

2.1AT89C52概述…………………………………………………………………5

2.2LED点阵显示屏概述……………………………………………………………5

3.系统硬件设计……………………………………………………………6

3.1LED点阵的原理………………………………………………………………7

3.2音调节拍的原理…………………………………………………………………9

3.3.总原理图…………………………………………………………………12

4.系统的软件设计………………………………………………………14

5.心得体会………………………………………………18

附录………………………………………………………………………………19

1.实物图……………………………………………………………………19

2.参考文献……………………………………………………………………20

摘要

近年来,由于电子技术的飞速发展,特别是大规模集成电路的涌现,人类的生活发生了根本性的转变,最显著的就是单片机技术的应用产品大范围普及。

其作用日益突出,给人们的日常生活带来了莫大的方便。

本次课程设计是做一个多功能生日音乐盒,它的功能是在8*8LED屏幕点阵移动出现“祝生日快乐”,同时,彩灯不停闪烁。

当字幕过后,彩灯一直亮着,生日歌开始演奏起来。

当生日歌过后,彩灯会展现各种姿态。

这个设计,很适合送给生日的朋友。

本文首先介绍了AT89C52和LED显示屏,然后进行总体方案论证与设计,接着是系统硬件设计和系统软件设计,最后是系统调试和测试结果分析。

关键词:

AT89C528*8LED屏幕点阵音乐盒(蜂鸣器)

二.器件简介

2.1.AT89C52概述

AT89C52单片机是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。

使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。

片上Flash允许程序存储器在系统可编程,亦适于常规编程器。

在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89C522单片机为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

AT89C52具有以下标准功能:

8k字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。

另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。

空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。

掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

功能引脚说明:

Vcc:

电源电压

GND:

P0口:

P0口是一组8位漏极开路型双向1/O口,也即地址/数据总线复用口。

作为输出口用时.每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。

在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。

在FLASH由编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。

P1口:

PI是一个带内部上拉电阻的8位双向I/O口,Pl的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。

对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。

作输入口使用时,因为内部存在上拉电阻某个引脚被外部信号拉低时会输出一个电流IIL

P2口:

P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑电路。

对端口P2写“l"

,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(llt)。

P3口:

P3是一组带有内部上拉电阻的8位双向I/O口。

P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。

对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。

此时,被外部拉低的P3口将用上拉电阻输出电流(IIL).

RST:

复位输入。

当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位

ALE/PROG:

当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节.一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的

PSEN:

程序储存允许PSEN输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。

在此期间,当访问外部数据存储器,将跳过两次PSEN信号。

EA/VPP:

外部访问允许。

欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地).需注怠的是:

如果加密位LBI被编程,复位时内部会锁存EA端状态。

XTAL1:

振荡器反相放大器的及内部时钟发生器的输入端

XTAL2:

振荡器反相放大器的输出端

2.2.LED点阵显示屏概述

LED点阵显示屏的构成型式有多种,其中典型的有两种。

一种把所需展示的广告信息烧写固化到EPROM芯片内,能进行固定内容的多幅汉字显示,称为单显示型;

另一种在机内设置了字库、程序库,具有程序编制能力,能进行内容可变的多幅汉字显示,称可编程序型。

目前,国内的LED点阵显示屏大部分是单显示型,其显示的内容相对较少,显示花样较单一。

一般在产品出厂时,显示内容就已写入显示屏控制系统中的EPROM芯片内,当需要更换显示内容时就非常困难,这样使该类型的显示屏使用范围受到了限制。

国内的另一种LED显示屏——可编程序型LED显示屏,虽然增加了显示屏系统的编程能力,显示内容和显示花样都有所增加,但也存在着更换显示内容不便的缺点。

随着社会经济的迅速发展,如今的广告牌都存在着显示内容丰富、信息量大、信息更换速度快等特点。

因此传统的LED显示屏控制系统已经越来越不能满足现代广告宣传业的需要。

而利用PC机通信技术控制LED显示屏,则具有显示内容丰富,信息更换灵活等优点。

三.系统硬件设计

本次课程设计是利用STC89C52做一个多功能生日音乐盒。

它有3个功能模块:

(1)显示移动字“祝你生日快乐”的8*8LED屏幕点阵

(2)能够演奏生日歌的蜂鸣器

(3)展示各种效果的彩灯(用彩灯围成蛋糕形状)。

3.18*8LED屏幕点阵原理:

(1)为8×

8点阵LED外观及引脚图,其等效电路如图

(2)所示,只要其对应的X、Y轴顺向偏压,即可使LED发亮。

例如如果想使左上角LED点亮,

则Y0=1,X0=0即可。

应用时限流电阻可以放在X轴或Y轴。

(1)8×

8点阵LED外观及引脚图

(2)8×

8点阵LED等效电路

LED一般采用扫描式显示,实际运用分为三种方式:

(1)点扫描;

(2)行扫描;

(3)列扫描。

16×

64=1024Hz,周期小于1ms即可。

若使用第二和第三种方式,则频率必须大于16×

8=128Hz,周期小于7.8ms即可符合视觉暂留要求。

此外一次驱动一列或一行(8颗LED)时需外加驱动电路提高电流,否则LED亮度会不足。

本次设计我们采用的是列扫描方式,通过P2端口控制列,P0端口控制行。

由于显示时整个8*8LED屏幕点阵都在工作,故需要驱动,因此在PO端口处加上NPN型的三极管。

只要延迟的时间足够短,就能看到整个8*8LED屏幕点阵。

P2:

0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f从右到左逐列扫描。

P0:

0x24,0x6F,0x34,0x3C,0x27,0x24,0x27,0x3D

0x10,0x3F,0x40,0x24,0x4A,0x7F,0x48,0x64

如此类推

生字

0x08,0x11,0x35,0x15,0x7F,0x15,0x15,0x01

日字

0x7F,0x49,0x49,0x49,0x7F,0x00,0x10,0x7F

快字

0x10,0x29,0x2A,0x7C,0x3A,0x09,0x00,0x3A

乐字

0x00,0x00,0x3A,0x4D,0x0BF,0x0C,0x0A,0x00

3.2

(2)能够演奏生日歌的蜂鸣器

蜂鸣器电路原理图:

通过对应的代码设定T0定时器,使P3.0输出不同频率的方波演奏不同音调,从而形成一首生日歌。

音调、节拍的确定方法

一般说来,单片机演奏音乐基本都是单音频率,它不包含相应幅度的谐波频率,也就是说不能像电子琴那样能奏出多种音色的声音。

因此单片机奏乐只需弄清楚两个概念即可,也就是“音调”和节拍表示一个音符唱多长的时间。

音调的确定

不同音高的乐音是用C、D、E、F、G、A、B来表示,这7个字母就是音乐的音名,它们一般依次唱成DO、RE、MI、FA、SO、LA、SI,即唱成简谱的1、2、3、4、5、6、7,相当于汉字“多来米发梭拉西”的读音,这是唱曲时乐音的发音,所以叫“音调”,即Tone。

把C、D、E、F、G、A、B这一组音的距离分成12个等份,每一个等份叫一个“半音”。

两个音之间的距离有两个“半音”,就叫“全音”。

在钢琴等键盘乐器上,C–D、D–E、F–G、G–A、A–B两音之间隔着一个黑键,他们之间的距离就是全音;

E–F、B–C两音之间没有黑键相隔,它们之间的距离就是半音。

通常唱成1、2、3、4、5、6、7的音叫自然音,那些在它们的左上角加上﹟号或者b号的叫变化音。

﹟叫升记号,表示把音在原来的基础上升高半音,b叫降记音,表示在原来的基础上降低半音。

例如高音DO的频率(1046Hz)刚好是中音DO的频率(523Hz)的一倍,中音DO的频率(523Hz)刚好是低音DO频率(266Hz)的一倍;

同样的,高音RE的频率(1175Hz)刚好是中音RE的频率(587Hz)的一倍,中音RE的频率(587Hz)刚好是低音RE频率(294Hz)的一倍。

1)要产生音频脉冲,只要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周期的时间。

利用定时器计时这半个周期时间,每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期时间再对I/O反相,就可在I/O脚上得到此频率的脉冲。

2)利用AT89C51的内部定时器使其工作在计数器模式MODE1下,改变计数值TH0及TL0以产生不同频率的方法。

此外结束符和休止符可以分别用代码00H和FFH来表示,若查表结果为00H,则表示曲子终了;

若查表结果为FFH,则产生相应的停顿效果。

3)例如频率为523Hz,其周期T=1/523=1912us,因此只要令计数器计时956us/1us=956,在每次技术956次时将I/O反相,就可得到中音DO(523Hz)。

计数脉冲值与频率的关系公式如下:

N=Fi

Fr

N:

计算值;

Fi:

内部计时一次为1us,故其频率为1MHz;

4)其计数值的求法如下:

T=65536-N=65536-Fi

Fr

例如:

设K=65536,F=1000000=Fi=1MHz,球低音DO(261Hz)。

中音DO(523Hz)。

高音的DO(1046Hz)的计算值

Fr=65536-1000000

Fr=65536-500000/Fr

低音DO的T=65536-500000/262=63627

低音DO的T=65536-500000/523=64580

低音DO的T=65536-500000/1047=65059

5)C调各音符频率与计数值T的对照表如表4.1所示。

表4.1C调各音符频率与计数值T的对照表

低音

频率

T

参数

中音

高音

Do

262

1908

229

523

956

115

1046

57

Do﹟

277

1805

217

554

903

108

1109

54

Re

294

1701

204

587

852

102

1175

51

Re﹟

311

1608

193

622

804

97

1245

48

Mi

330

1515

182

659

759

91

1318

45

Fa

349

1433

172

698

716

86

1397

43

Fa﹟

370

1351

162

740

676

81

1480

41

So

392

1276

153

784

638

77

1568

38

So﹟

415

1205

145

831

602

72

1661

36

La

440

1136

136

880

568

68

1760

34

La﹟

464

1078

129

932

536

64

1865

32

Si

494

1012

121

988

506

61

1976

30

节拍的确定

若要构成音乐,光有音调是不够的,还需要节拍,让音乐具有旋律(固定的律动),而且可以调节各个音的快满度。

“节拍”,即Beat,简单说就是打拍子,就像我们听音乐不自主的随之拍手或跺脚。

若1拍实0.5s,则1/4拍为0.125s。

至于1拍多少s,并没有严格规定,就像人的心跳一样,大部分人的心跳是每分钟72下,有些人快一点,有些人慢一点,只要听的悦耳就好。

音持续时间的长短即时值,一般用拍数表示。

休止符表示暂停发音。

一首音乐是由许多不同的音符组成的,而每个音符对应着不同频率,这样就可以利用不同的频率的组合,加以与拍数对应的延时,构成音乐。

了解音乐的一些基础知识,我们可知产生不同频率的音频脉冲即能产生音乐。

对于单片机来说,产生不同频率的脉冲是非常方便的,利用单片机的定时/计数器来产生这样的方波频率信号。

因此,需要弄清楚音乐中的音符和对应的频率,以及单片机定时计数的关系。

表4.2节拍与节拍码对照

节拍码

节拍数

1/4拍

1/8拍

2/4拍

3/4拍

3/8拍

1拍

2/1拍

1又1/4拍

5/8拍

1又1/2拍

8

2拍

A

2又1/2拍

C

3拍

F

3又3/4拍

每个音符使用1个字节,字节的高4位代表音符的高低,低4位代表音符的节拍,图5.2为节拍码的对照。

如果1拍为0.4秒,1/4拍实0.1秒,只要设定延迟时间就可求得节拍的时间。

假设1/4拍为1DELAY,则1拍应为4DELAY,以此类推。

所以只要求得1/4拍的DELAY时间,其余的节拍就是它的倍数,如图5.3为1/4和1/8节拍的时间设定。

表4.31/4和1/8节拍的时间设定

曲调值

DELAY

调4/4

125毫秒

62毫秒

调3/4

187毫秒

94毫秒

调2/4

250毫秒

彩灯电路图:

通过P1端口来控制彩灯的亮灭情况,当给低电平时,等亮;

当给高电平时,灯灭。

利用循环语句,一个灯亮以逆时针移动,一个灯灭以顺时针移动。

3.3总原理图

时钟振荡电路

AT89C52中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。

这个放大器与作为反馈元件的片外石英晶体或者陶瓷谐振器一起构成自然振荡器。

外接石英晶体及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。

对外接电容C1,C2虽然没有什么严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性。

如果使用石英晶体,我们推荐电容使用30PF

10PF,而如果使用陶瓷振荡器建议选择40PF

10PF。

用户也可以采用外部时钟。

采用外部时钟的电路如图示。

这种情况下,外部时钟脉冲接到XTAL1端,即内部时钟发生器的输入端,XTAL2则悬空。

由于外部时钟信号是通过一个2分频触发器后作为内部时钟信号的,所以对外部时钟信号的占空比没有特殊要求,但最小高电平持续时间和最大的低电平持续时间应符合产品技术条件的要求。

振荡器电路图如下:

图3.3单片机内部、外部振荡电路

复位电路:

四.程序

#include<

reg51.h>

#include<

intrins.h>

//调用左移函数

//word

unsignedcharcodetab[]=

{0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};

unsignedcharcodedigittab[56][8]={

{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x24},

{0x00,0x00,0x00,0x00,0x00,0x00,0x24,0x6F},

{0x00,0x00,0x00,0x00,0x00,0x24,0x6F,0x34},

{0x00,0x00,0x00,0x00,0x24,0x6F,0x34,0x3C},

{0x00,0x00,0x00,0x24,0x6F,0x34,0x3C,0x27},

{0x00,0x00,0x24,0x6F,0x34,0x3C,0x27,0x24},

{0x00,0x24,0x6F,0x34,0x3C,0x27,0x24,0x27},

{0x24,0x6F,0x34,0x3C,0x27,0x24,0x27,0x3D},

{0x6F,0x34,0x3C,0x27,0x24,0x27,0x3D,0x00},

{0x34,0x3C,0x27,0x24,0x27,0x3D,0x00,0x10},

{0x3C,0x27,0x24,0x27,0x3D,0x00,0x10,0x3F},

{0x27,0x24,0x27,0x3D,0x00,0x10,0x3F,0x40},

{0x24,0x27,0x3D,0x00,0x10,0x3F,0x40,0x24},

{0x27,0x3D,0x00,0x10,0x3F,0x40,0x24,0x4A},

{0x3D,0x00,0x10,0x3F,0x40,0x24,0x4A,0x7F},

{0x00,0x10,0x3F,0x40,0x24,0x4A,0x7F,0x48},

{0x10,0x3F,0x40,0x24,0x4A,0x7F,0x48,0x64},

{0x3F,0x40,0x24,0x4A,0x7F,0x48,0x64,0x00},

{0x40,0x24,0x4A,0x7F,0x48,0x64,0x00,0x08},

{0x24,0x4A,0x7F,0x48,0x64,0x00,0x08,0x11},

{0x4A,0x7F,0x48,0x64,0x00,0x08,0x11,0x35},

{0x7F,0x48,0x64,0x00,0x08,0x11,0x35,0x15},

{0x48,0x64,0x00,0x08,0x11,0x35,0x15,0x7F},

{0x64,0x00,0x08,0x11,0x35,0x15,0x7F,0x15},

{0x00,0x08,0x11,0x35,0x15,0x7F,0x15,0x15},

{0x08,0x11,0x35,0x15,0x7F,0x15,0x15,0x01},

{0x11,0x35,0x15,0x7F,0x15,0x15,0x01,0x00},

{0x35,0x15,0x7F,0x15,0x15,0x01,0x00,0x7F},

{0x15,0x7F,0x15,0x15,0x01,0x00,0x7F,

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

当前位置:首页 > IT计算机 > 互联网

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1