课程设计论文-基于单片机的电子琴设计内容摘要:

程序储存允许( PSEN)输出是外部程序存储器的读选通信号,当 AT89C52 由外部程序存储器取指令(或数据)时,每个机器周期两次 PSEN 有效,即输出两个脉冲。 在此期间,当访问外部数据存储器,将跳过两次 PSEN 信号。 EA/VPP: 外部访问允许。 欲使 CPU 仅访问外部程序存储器(地址为0000H— FFFFH), EA 端必须保持低电平(接地)。 需注意的是:如果加密位 LB1 被编程,复位时内部会锁存 EA端状态。 如 EA端为高电平(接 Vcc 端), CPU 则执行内部程序存储器中的指令。 Flash 存储器编程时,该引脚加上 +12V 的编程允许电源 Vpp,当然这必须是该器件是使用 12V 编程电压 Vpp。 XTAL1: 振荡器反相放大器的及内部时钟发生器的输入端。 XTAL2: 振荡器反相放大器的输出端。 显示电路及发声原理 显示电路 本次设计的显示电路主要是十六个发光二极管流水灯显示,当按下流水灯控制按键时,则调用流水灯程序,将产生的方波信号送至 P0 与 P2口所接的十六个发光二极管,根据不同的高低电平发光,实现流水灯功能。 发声电路原理 由于一首音乐是许多不同音节组成的,而每个音节对应不同的频率,这样我们就可以利用不同的频率组合,即可构成我们所想要的音乐了。 当然对于单片机来产生不同的频率非常方便,我们可以利用单片机的定时 /计数器 T0来产生这样的方波频率信号,因此,我们只要把一首歌曲的音阶对应频率关系找到就可以了。 本次设计中单片机晶振为 12MHZ,那么定时器的计数周期为 1MHZ,假如 选择工作方式 1,那 T值便为 T=2165*105/相应的频率,那么根据不同的频率计算出应该赋给定时器的计数值,列出不同音符与单片机计数 T0相关的 计数值。 各功能模块原理图 AT89C52 电路 时钟电路 基于单片机的电子琴设计 11 时钟电路中,我们采用外接时钟源,由两个电容串联之后并联一晶振组成,接入单片机的 XTAL1 和 XTAL2 端。 晶振频率 12MHZ,两电容为 20pF,注意电容接地处。 键盘电路 键盘电路中,八个按键即为八个对应的音符,他们分别连接到 P3 的八个口上,按键不按下则没有触发信号,按键按下时,为低电平,对应 P3 口有触发信号,完成相应功能。 驱动电路 驱动电路中,应用 一个达林顿管作为扬声器的驱动电路,将声音信号放大。 达林顿管的基极通过一个 10K 的电阻接在 口。 与 分接两个按键,控制流水灯和内置音乐。 第四章 系统软件设计 音乐相关知识 乐音听起来有的高,有的低,这就叫音高,音高是由发音物体振动频率的高低决定的,频率高声音就高,频率低,声音就低,不同音调的乐音是用 C、 D、 E、F、 G、 A、 B表示的,这 7个字母就是乐音的音名,它们一般依次唱成 DO、 RE、MI、 FA、 SO、 LA、 SI,这是唱曲时乐音的发音,所以叫唱名。 音持续时间的长短即时值,一般 用拍数表示,休止符表示暂停发音。 一首音乐是由许多不同的音符组成的,而每个音符对应着不同的频率,这样就可以利用不同频率的组合,加以与拍数对应的延时,构成音乐 如何用单片机实现音乐节拍 除了音符以外,节拍也是音乐的关键组成部分。 节拍实际上就是音持续时间的长短,在单片机系统中可以用延时来实现,如果 1/4 拍的延时是 秒,则 1拍的延时是 秒,只要知道 1/4拍的延时时间,其余的节拍延时时间就是它的陪数。 如果单片机要自己播放音乐,那么必须在程序设计中考虑到节拍的设置,由于本例实现的音乐发生器是由用户通 过键盘输入弹奏乐曲的,所以节拍由用户掌握,不由程序控制。 对于不同的曲调我们也可以用单片机的另外一个定时 /计数器来完成。 音乐的音拍,一个节拍为单位( C 调)具体如下表: 基于单片机的电子琴设计 12 音乐节拍表 曲调值 DELAY 曲调值 DELAY 调 4/4 125ms 调 4/4 62ms 调 3/4 187ms 调 3/4 94ms 调 2/4 250ms 调 2/4 125ms 如何用单片机产生音频脉冲 了解音乐的一些基本知识后可知,产生不同频率的音频脉冲即能产生音乐,对于单片机而言,产生不同频率有脉冲非常方便,可以利 用它的定时 /计数器来产生这样的方波频率信号,因此,需要弄清楚音乐中的音符和对应的频率,以及单片机定时计数的关系。 在本实验中,单片机工作于 12MHZ 时钟频率,使用其定时 /计数器 T0,工作模式为 1,改变计数值 TH0和 TL0 可以产生不同频率的脉冲信号,在此情况下,C调的各音符频率与计数值 T的对照如 附录 2. T的值决定了 TH0 和 TL0 的值,其关系为: TH0=T/256, TL0=T%256。 系统总体功能流程图 基于单片机的电子琴设计 13 第五章 电路仿真 Proteus 软件介绍 Proteus ISIS 是英国 Labcenter 公司开发的电路分析与实物仿真软件。 它运行于 Windows 操作系统上,可以仿真、分析 (SPICE)各种模拟器件和集成电路。 该软件的特点是: (1)实现了单片机仿真和 SPICE 电路仿真相结合。 具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真、 RS232 动态仿真、 I2C 调试器、 SPI调试器、键盘和 LCD 系统仿真的功能;有各种虚拟仪器,如示波器、逻辑分析仪、信号发生 器等。 (2)支持主流单片机系统的仿真。 目前支持的单片机类型有: 68000 系列、8051 系列、 AVR 系列、 PIC12 系列、 PIC16 系列、 PIC18 系列、 Z80 系列、 HC11 按下按键 流水灯亮 是 否 按下按键 不同样式流水灯亮 播放音乐 是 否 播放音乐 按按键弹奏音乐 结束 基于单片机的电子琴设计 14 系列以及各种外围芯片。 (3)提供软件调试功能。 在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须具有这些功能;同时支持第三方的软件编译和调试环境,如 Keil C51 uVision2 等软件。 (4)具有强大的原理图绘制功能。 总之,该软件是一款集单片机和 SPICE 分析于一身的仿真软件,功能极其强大。 本章介绍 Proteus ISIS 软件的工作环境和一些基本操作。 电路仿真结果 第六章 设计心得体会 基于单片机的电子琴设计 15 心得体会 : 通过各方面努力,本次课程设计任务完成,系统预设功能已实现, 可以 随意演奏一首喜欢的曲子,虽然暂无高低音之分,但下次的努力方向上会加以修正。 课程设计是大三 学习阶段一次非常难得的理论与实践相结合的机会,通过这次系统的项目设计提高了我运用所。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。