音乐霓虹灯程序设计.doc
《音乐霓虹灯程序设计.doc》由会员分享,可在线阅读,更多相关《音乐霓虹灯程序设计.doc(31页珍藏版)》请在沃文网上搜索。
1、一、设计目的通过课程设计使学生更进一步掌握微机原理及应用课程的有关知识,提高应用微机解决问题的能力,加深对微机应用的理解。通过查阅资料,结合所学知识进行软、硬件的设计,使学生初步掌握应用微机解决问题的步骤及方法。为以后学生结合专业从事微机应用设计奠定基础。二、设计的原始资料及依据查阅可编程并行芯片8254或其他相关资料。用定时/计数器,配合延时和控制程序控制扬声器发声(演奏音乐),彩灯随频率变化亮灭。 三、设计的主要内容及要求内容:利用定时/计数器8254实现音乐演奏。要求:(1)配合延时和控制程序控制扬声器发声(演奏音乐)。 (2)彩灯随频率变化亮灭。四、对设计说明书撰写内容、格式、字数的要
2、求 1.课程设计说明书(论文)是体现和总结课程设计成果的载体,一般不应少于3000字。2.学生应撰写的内容为:目录、正文、参考文献等。课程设计说明书(论文)的结构及各部分内容要求可参照沈阳工程学院毕业设计(论文)撰写规范执行。应做到文理通顺,内容正确完整,书写工整,装订整齐。3.说明书(论文)手写或打印均可。手写要用学校统一的课程设计用纸,用黑或蓝黑墨水工整书写;打印时按沈阳工程学院毕业设计(论文)撰写规范的要求进行打印。4. 课程设计说明书(论文)装订顺序为:封面、任务书、成绩评定表、目录、正文、参考文献。五、 设计完成后应提交成果的种类、数量、质量等方面的要求;提交课程设计说明书一份。在说
3、明书中要有设计原理、硬件电路接线图、设计的程序及必要注释等。六、时间进度安排;顺序阶段日期计 划 完 成 内 容备注11.5天查阅资料及程序设计22.5天上机调试程序30.5天成绩评定40.5天书写报告沈 阳 工 程 学 院微机原理及应用课程设计成绩评定表系(部): 电气工程系 班级: 发电本091 学生姓名: 黎世华 指 导 教 师 评 审 意 见评价内容具 体 要 求权重评 分加权分调研论证能独立查阅文献,收集资料;能制定课程设计方案和日程安排。0.15432工作能力态度工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作, 0.25432工作量按期圆满完成规定的设计任务,工作量
4、饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.55432指导教师评审成绩(加权分合计乘以12) 分加权分合计指 导 教 师 签 名: 年 月 日答 辩 小 组 意 见评价内容具 体 要 求权重评 分加权分报告内容思路清晰,语言表达准确,概念清楚,论点正确;分析归纳合理;结论严谨;设计具有应用价值。0.25432答辩回答问题有理论根据,基本概念清楚。主要问题回答准确、深入。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备
5、,书写工整规范。0.35432评阅教师评审成绩(加权分合计乘以8)分加权分合计评 阅 教 师 签 名: 年 月 日课 程 设 计 总 评 成 绩分摘要微机原理是一门非常重要的计算机技术基础课程,全面介绍微机的基本结构、工作原理、硬件配置、接口期间和接口种类等。本次微机接口课程设计的主要目的是要使学生更进一步掌握微机原理及应用课程的有关知识,提高应用微机解决问题的能力,加深对微机应用的理解。通过查阅资料,结合所学知识进行软、硬件的设计,使学生初步掌握应用微机解决问题的步骤及方法。为以后学生结合专业从事微机应用设计奠定基础。在本次课程设计中大家利用课上所学的各种知识,对自己的课程设计题目进行设计。
6、我们小组所要设计的题目是音乐霓虹灯程序设计。在设计的过程中主要利用计数器/定时器8254芯片和可编程并行接口8255A芯片,完成2个开关选择歌曲,能用扬声器播放歌曲,并且能有彩灯亮的个数来反映歌曲的频率。首先我们利用定时器产生各种频率的声音,如“DO”“RE”“ME”然后将各个单音连接起来就组成了一首简单的曲子或者旋律,旋律及拍数可以按音乐简谱而定。对8255芯片PA0和PA1口的置0和1来选择歌曲。其次实现唱歌功能即实现歌曲的节拍通过调用延时子程序控制音符发音的长短,实现连续发声把SI是否为0作为循环的条件在每一次扬声器发出一个相应音符之后做无条件转移,从而使扬声器连续发声,发光二级管跟着歌
7、曲频率的变化改变亮灭的个数。关键字 : 音乐播放器、可编程并行接口8255A芯片、计数器/定时器8254I 目录摘要I1 设计原理说明11.1 设计原理11.2 设计环境及设备21.3 硬件接线图21.4 设计流程图22 主要芯片介绍42.1 8254芯片42.1.1 定时/计数器825442.1.2 8254内部结构42.1.3 8254外部引脚52.1.4 计数器内部结构62.1.5 8254端口地址72.1.6 8254功能72.1.7 8254控制字72.1.8 8254工作方式82.2 8255芯片92.2.1 8255外部引脚功能92.2.2 8255内部结构102.2.3 825
8、5控制字112.2.4 8255三种工作方式122.2.5 8255A的端口地址142.3 发光二极管142.3.1 发光二极管介绍142.3.2发光二极管的分类143 具体模块设计153.1频率产生模块153.2 控制模块153.3 控制音符的演奏时间163.4 音符频率表163.5 控制二极管的亮灭模块173.5.1 音乐与所设频率进行比较来调用程序183.5.2 控制彩灯所亮个数的程序18总结20致谢21参考文献22附录232沈阳工程学院微机原理及应用课程设计1 设计原理说明1.1 设计原理我们在这次课设选择了音乐霓虹灯程序设计,音乐霓虹灯程序设计可以实现两首歌的可选择播放。对于歌曲的播
9、放我们采用的是计数器/定时器8254芯片,而对于选择哪首歌播放则是利用可编程并行接口8255A芯片来实现的。所有音乐都是由各个不同频率的音阶和其延续时间的长短来实现的。不同的音乐是由各个音阶按某种排列各自播放一定时间形成的,将各音乐音阶和其延续时间存在数据段中,然后根据不同按键值选择不同的音阶和时间表,再使用计数器产生该音阶频率。CPU通过对定时器的通道2(端口地址为42)进行编程,使其I/O寄存器接收一个控制声音频率的16位计数值,端口61H的最低控制通道2门控的开断。以产生特殊的音响。当定时器接收的计数值为533H时,能产生896Hz的声音,因此产生其他频率的计数值就可算出来:533Hz8
10、96频率=1234DC频率。将频率的计数值在最大和最小之间取出七个值,由这七个值写出七个比较语句,从大频率开始,只要频率计数值大于其中一个值,就执行这个语句所调用的语句。调用的语句是通过控制8255芯片C端口的输出量,来控制二极管应该亮几个,那几个该亮。执行我这语句之后强行跳到音乐播放程序。在送出频率计数值之前,还要给方式寄存器送一个方式值,该数决定对哪一个通道编程,采用什么模式,送入通道的计数值是一字节还是两字节,是二进制码还是BCD码。其位组合的格式如下:当通道2用于发声时,采用的是模式3,在模式3下,输出线为“1”和为“0”的时间各占计数时间的一半,因而产生一系列间隔均匀的脉冲。基于82
11、54定时计数接口芯片的工作原理,本次课设实现了音乐霓虹灯演奏系统程序设计。当运行程序时,扬声器便发出优美的音乐。首先要解决发声并发出相应音符声音的问题,由8254计数器0在初始化时用来产生一定频率的方波来使扬声器发声,再根据不同音符对应的频率写入计数初值发出相应的音符声。对8255芯片PA0和PA1口的置0和1来控制播放音乐1还是音乐2,B端口的PB0和PB1接到二极管上来显示只是播放的是音乐1还是音乐2,C端口的PC0到PC7接到二极管上来显示频率的高低。其次实现唱歌功能即实现歌曲的节拍通过调用延时子程序控制音符发音的长短,实现连续发声把SI是否为0作为循环的条件在每一次扬声器发出一个相应音
12、符之后做无条件转移,从而使扬声器连续发声。1.2 设计环境及设备PC机一台、windows 98系统、实验箱,导线若干。8254定时器:用于产生秒脉冲。8255并口:用做接口芯片,A端口的PA0和PA1接到开关上;B端口PA0和PB1接到二极管上;C端口接到二极管上。1.3 硬件接线图硬件接线图如图2.1所示。图2.1 硬件接线图1.4 设计流程图软件流程图如图2.2所示。图 2.2 软件流程图262 主要芯片介绍2.1 8254芯片2.1.1 定时/计数器8254 在微机及控制系统中,经常要用到定时信号。如系统的日历时钟,动态存储器刷新。对外部执行机构控制时也需要定时中断、定时检测、定时查询
13、等。定时的方法主要是两种:软件定时:利用指令的执行时间设计循环程序,使CPU 执行延迟子程 序的时间就是定时时间。缺点:执行延迟时,CPU 一直被占用,降低了CPU 的效率。硬件定时:用计数器/定时器作为主要硬件,在软件简单指令的控制下产生精确的时间延迟。突出优点为计数时不占用CPU 时间,如利用定时器/计数器产生中断信号,可建立多作业环境,提高了CPU 效率。主要功能: 每片上有3 个独立的16 位的减计数器通道。 对于每个计数器,都可以单独作为定时器或计数器使用,并且都可以按照二进制或十进制来计数。 每个通道都有6 种工作方式,都可以通过程序设置或改变。 每个计数器的速率可高达2MHz。最
14、高的计数时钟频率为2.6MHz。2.1.2 8254内部结构8254的内部结构如图2.1所示,它主要包括以下几个主要部分:图 2.1 8254的内部结构 数据总线缓冲器实现8254与CPU数据总线连接的8位双向三态缓冲器,用以传送CPU向8254的控制信息、数据信息以及CPU从8254读取的状态信息,包括某时刻的实时计数值。 读/写控制逻辑控制8254的片选及对内部相关寄存器的读/写操作,它接收CPU发来的地址信号以实现片选、内部通道选择以及对读/写操作进行控制。 控制字寄存器在8254的初始化编程时,由CPU写入控制字,以决定通道的工作方式,此寄存器只能写入,不能读出。 计数通道0#、1#、
15、2#:这是三个独立的,结构相同的计数器/定时器通道,每一个通道包含一个16位的计数寄存器,用以存放计数初始值,一个16位的减法计数器和一个16位的锁存器,锁存器在计数器工作的过程中,跟随计数值的变化,在接收到CPU发来的读计数值命令时,用以锁存计数值,供CPU读取,读取完毕之后,输出锁存器又跟随减1计数器变化。2.1.3 8254外部引脚8254芯片是具有24个引脚的双列直插式集成电路芯片,其引脚分布如图所示。8254芯片的24个引脚分为两组,一组面向CPU,另一组面向外部设备,各个引脚及其所传送信号的情况,介绍如下: D7D0:双向、三态数据线引脚,与系统的数据线连接,传送控制、数据及状态信
16、息。 :来自于CPU的读控制信号输入引脚,低电平有效。 :来自于CPU的写控制信号输入引脚,低电平有效。 :芯片选择信号输入引脚,低电平有效。图2.2 8254的引脚 A1、A0:地址信号输入引脚,用以选择8254芯片的通道及控制字寄存器。 VCC及GND:+5V电源及接地引脚 CLKi:i=0,1,2,第i个通道的计数脉冲输入引脚,8254规定,加在CLK引脚的输入时钟信号的频率不得高于2.6MHZ,即时钟周期不能小于380ns。 GATEi:i=0,1,2,第i个通道的门控信号输入引脚,门控信号的作用与通道的工作方式有关。 OUTi:i=0,1,2,第i个通道的定时/计数到信号输出引脚,输
17、出信号的形式由通道的工作方式确定,此输出信号可用于触发其它电路工作,或作为向CPU发出的中断请求信号。2.1.4 计数器内部结构每个计数器由一个16位可预置的减1计数器组成,计数初值可保存在16位的锁存器中,该锁存器只写不能读。在计数器工作时,初值不受影响,以便进行重复计数。图中每个计数器有一个时钟输入端CLK作为计数脉冲源, 计数方式可以是二进制,计数范围110000H,也可以是十进制,计数范围165536。门控端GATE用于控制计数开始和停止。输出OUT端当计数器计数值减到零时,该端输出标志信号 。图2.3 计数器内部结构2.1.5 8254端口地址表2.1 8254端口地址2.1.6 8
18、254功能8254既可作定时器又可作计数器: 计数: 计数器装入初值后,当GATE为高电平时,可用外部事件作为CLK 脉冲对计数值进行减1 计数,每来一个脉冲减1,当计数值减至0时,由OUT 端输出一个标志信号。 定时: 计数器装入初值后,当GATE为高电平时,由CLK 脉冲触发开始自动计数,当计数到零时,发计数结束定时信号。除上述典型应用外,8254还可作频率发生器、分频器、实时钟、单脉冲发生器等。2.1.7 8254控制字图2.4 8254控制字说明 : 8254每个通道对输入CLK按二进制或二十进制从预置值开始减1计数,减到0时从OUT输出一个信号。 8254编程时先写控制字,再写时间常
19、数。2.1.8 8254工作方式 方式0:计数结束产生中断方式当写入控制字后,OUT变为低电平,当写入初值后立即开始计数,当计数结束时,变成高电平。 方式1:可编程单次脉冲方式当初值装入后且GATE由低变高时,OUT变为低电平,计数结束变为高电平。 方式2:频率发生器方式当初值装入时,OUT变为高;计数结束,OUT变为低。该方式下如果计数未结束,但GATE为低时,立即停止计数,强制OUT变高,当GATE再变高时,便启动一次新的计数周期。 方式3:方波发生器当装入初值后,在GATE上升沿启动计数,OUT 输出高电平; 当计数完成一半时,OUT输出低电平。图2.5 方波图方式3与方式2的工作方式类
20、似,也是在初始化完成后能重复循环计数,只是输出的波形不同。计数过程当把方式3的控制字写入控制字寄存器后,输出端OUT变成高电平,作为初始电平。再将计数初值写入计数初值寄存器CR中,再经过一个时钟周期,计数初值被移入计数执行单元CE中,从下一个时钟脉冲开始作减1 计数,方式3的计数过程分为两种情况:第一种情况:计数初值为偶数,当作减1计数减到N/2时,输出端OUT端变成低电平,减到0时,输出端OUT变成高电平,并重新从初值开始新的计数过程。若GATE为高电平,则一直重复同样的计数过程。可见,输出端OUT输出连续的方波,故称方波发生器。第二种情况:计数初值为奇数,当作减1计数减到(N+1)/2以后
21、,输出端OUT变成低电平,减到0时,输出端OUT又变成高电平。并重新从初值开始新的计数过程。这时输出端的波形为连续的近似方波。门控信号的影响工作在方式3时,门控信号GATE的功能与工作方式2一样,即GATE 为高电平时,允许计数;GATE为低电平时停止计数。GATE引脚上的信号从低电平跳到高电平时,将会重新把计数初值寄存器CR中的内容移入计数执行单元CE中,并以新装入的值重新开始计数。新的计数初值对计数过程的影响如果在计数过程中写入新的初值,而GATE信号一直维持高电平,则新的初值不会影响当前的计数过程,只有在计数结束后的下一个计数周期,才按新的初值计数。若写入新的初值后,遇到门控信号的上升沿
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 音乐 霓虹灯 程序设计