- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课程设计任务书
学生姓名: 专业班级: 电气1107班
指导教师: 李知践 工作单位: 自动化学院
题 目: 电子乐曲的播放设计
任务内容:用汇编语言实现在PC喇叭上播放一段音乐。
要求完成的主要任务:
1.认真分析课程设计任务及要求可知,本题为纯软件类题目;通过查阅相关文献资料,确定选择“大海”这首歌曲进行编程,并运用emu8086和MF2KP软件进行仿真,实现音乐播放。
2.根据所选乐曲确定各音符频率及对应时间,编排频率表和时间表,绘制流程图,编出完整程序,并进行程序调试,直至达到预期效果。
3.对此次课程设计进行认真、全面的总结,详细记录设计全过程,按照要求独立完成说明书的撰写及各个附件、附录的整理,调整书面格式,设计出一份完整、充实的微机课程设计报告。
时间安排:
资料检索与收集 2天
系统方案设计与确定 1天
系统设计与程序编写 3天
说明书撰写 3天
答辩 1天
指导教师签名: 年 月 日
系主任(或责任教师)签名: 年 月 日
目录
摘要 I
1 基础知识 1
1.1 8253内部结构 1
1.2 8253端口地址 2
1.3 8253控制字 2
1.4 8253工作方式 3
2详细设计 4
2.1设计说明 4
2.1.1 PC机扬声系统原理 4
2.1.2 演奏单音符 4
2.1.3 控制音符的演奏时间 4
2.1.4 频率表和时间表 4
2.1.5各音符对应频率 5
2.2程序设计 5
2.2.1程序流程图 5
2.2.2 程序代码 6
3 程序调试及结果分析 7
3.1 程序调试 7
3.2 结果分析 8
4 心得体会 9
5 参考文献 10
附录1:各音符对应的频率和半周期 11
附录2:完整程序代码 12
摘要
没有哪一门科学能像计算机科学这样高速发展,短短几十年时间,突飞猛进,一日千里,为世界带来如此深刻的变革和深远的影响,特别是以微型计算机为主的互联网,将世界距离拉的如此之近,使得人们不出门便知天下事。尽管计算机发展迅速,但基本原理没有改变,在计算机体系结构上还是遵循冯·诺依曼的思想。汇编语言是对机器语言的改进,完善了机器语言的可读、可记性,是能够利用计算机所有硬件特征且能直接控制硬件的一种程序设计语言,是计算机能够供给用户的最快且最有效的编程语言。
本课设任务是用汇编语言实现在PC喇叭上播放一段音乐。主要设计过程是以8086微处理机、8253芯片为基础,选择张雨生的名曲《大海》伴奏,编排音符频率表和时间表,运用汇编语言编写程序,并通过emu8086、MF2KP软件进行调试、仿真,最终播放出整首歌的伴奏。
关键词:微型计算机 汇编语言 MF2KP 仿真 音乐播放
电子乐曲的播放设计
1 基础知识
本课程设计用到的核心芯片是可编程定时/计数器接口芯片8253,所以重点介绍其基本知识,包括:内部结构、端口地址、控制字和工作方式等。
1.1 8253内部结构
8253占用4个端口,3个定时器各占1个,控制端口占1 个。8253的内部结构如图所示,它主要包括以下几个主要部分:
图1-1 8253的内部结构
(1).数据总线缓冲器
实现8253与CPU数据总线连接的8位双向三态缓冲器,用以传送CPU向8254的控制信息、数据信息以及CPU从8254读取的状态信息,包括某时刻的实时计数值。
(2).读/写控制逻辑
控制8254的片选及对内部相关寄存器的读/写操作,它接收CPU发来的地址信号以实现片选、内部通道选择以及对读/写操作进行控制。
(3).控制字寄存器
在8254的初始化编程时,由CPU写入控制字,以决定通道的工作方式,此寄存器只能写入,不能读出。
(4).计数通道0#、1#、2#:
这是三个独立的,结构相同的计数器/定时器通道,每一个通道包含一个16位的计数寄存器,用以存放计数初始值,一个16位的减法计数器和一个16位的锁存器,锁存器在计数器工作的过程中,跟随计数值的变化,在接收到CPU发来的读计数值命令时,用以锁存计数值,供CPU读取,读取完毕之后,输出锁存器又跟随减1计数器变化。
(5).8254外部引脚
8254芯片是具有24个引脚的双列直插式集成
文档评论(0)