logo资料库

微机原理课程设计 音乐播放器.doc

第1页 / 共19页
第2页 / 共19页
第3页 / 共19页
第4页 / 共19页
第5页 / 共19页
第6页 / 共19页
第7页 / 共19页
第8页 / 共19页
资料共19页,剩余部分请下载后查看
目 录
一 课程设计的任务和目的
1.1 课程设计任务
1.2课程设计目的
二 课程设计基础知识
2.1 定时/计数器8253A
2.2 8253A内部结构
2.3 8253A外部引脚
2.4 计数器内部结构
2.5 8253A端口地址
2.6 8253A功能
2.7 8253A控制字
2.8 8253A工作方式
三 详细设计
3.1硬件设计
3.2 软件设计
四 程序调试
五 总结
六 参考文献
七 附录
7.1 源代码
7.2 各个音符的对应频率
微机原理课程设计报告 题 目: 音乐播放器 学生姓名: 学 号: 专业班级: 同组姓名: 指导教师: 杨红杰 设计时间: 2010 年上学期第 17 周 指导老师意见: 评定成绩: 签名: 日期: 年 月 日
湖南文理学院计算机科学与技术学院 目 录 一 课程设计的任务和目的................................................................. 2 1.1 课程设计任务........................................................................................ 2 1.2 课程设计目的........................................................................................ 2 二 课程设计基础知识......................................................................... 3 2.1 定时/计数器 8253A............................................................................... 3 2.2 8253A 内部结构.................................................................................... 3 2.3 8253A 外部引脚.................................................................................... 4 2.4 计数器内部结构.................................................................................... 5 2.5 8253A 端口地址.................................................................................... 6 8253A 功能............................................................................................ 6 2.6 8253A 控制字........................................................................................ 7 2.7 2.8 8253A 工作方式.................................................................................... 7 三 详细设计..........................................................................................9 3.1 硬件设计................................................................................................ 9 3.2 软件设计.............................................................................................. 13 四 程序调试.......................................................................................14 五 总结................................................................................................14 六 参考文献.......................................................................................15 七 附录................................................................................................16 7.1 源代码.................................................................................................... 16 7.2 各个音符的对应频率............................................................................ 18 1
湖南文理学院计算机科学与技术学院 一 课程设计的任务和目的 1.1 课程设计任务 本课程设计题目是:设计并实现一个音乐播放器。 1. 自己选用芯片和其它的硬件。 2. 自行设计电路并使用汇编语言编写程序完成音乐播放器功能。 3. 利用 8253 作为音阶频率发生器,对一段音乐进行编码后存入音符表,程序 中可调用音符表自动播放音乐,从中了解音乐播放的原理。 4. 利用 8253A 和 PC 机,设计并实现简易音乐播放器 5. 使用汇编语言编写音乐播放程序。 6. 上机调试程序并联机,利用试验箱提供的扬声器发声。 7. 完成实验报告。 1.2 课程设计目的 本课程设计注重提高学生应用能力、创新能力。在掌握了基本的实验方法和 实验技能且理论教学完成的基础上,要求学生通过一周的集中工作,初步锻炼综 合运用所学知识的能力,通过讨论与合作,完成一项完整的设计工作。更深入的 了解微机芯片的用法和程序的完成过程,调试方法及技巧。通过这个环节来加深 对《微机原理与接口技术》所学内容的理解和融会贯通。 设计音乐播放器主要目的:  通过 D/A 装换器产生模拟信号,在实验平台上实现简易音乐播放器。  了解利用数模转换器产生音乐的基本方法。  掌握定时/计数器 8253A 的使用。 2
湖南文理学院计算机科学与技术学院 二 课程设计基础知识 2.1 定时/计数器 8253A 在微机及控制系统中,经常要用到定时信号。如系统的日历时钟,动态存储 器刷新。对外部执行机构控制时也需要定时中断、定时检测、定时查询等。定时 的方法主要是两种: 软件定时:利用指令的执行时间设计循环程序,使 CPU 执行延迟子程 序的 时间就是定时时间。缺点:执行延迟时,CPU 一直被占用,降低了 CPU 的效 率。 硬件定时:用计数器/定时器作为主要硬件,在软件简单指令的控制下产生精 确的时间 延迟。突出优点为计数时不占用 CPU 时间,如利用定时器/计数器产生中断信号, 可建立多作业环境,提高了 CPU 效率。 主要功能: (1)每片上有 3 个独立的 16 位的减计数器通道。 (2)对于每个计数器,都可以单独作为定时器或计数器使用,并且都可以按照 二进制或十进制来计数。 (3)每个通道都有 6 种工作方式,都可以通过程序设置或改变。 (4)每个计数器的速率可高达 2MHz。最高的计数时钟频率为 2.6MHz。 2.2 8253A 内部结构 8253 的内部结构如图所示,它主要包括以下几个主要部分: 3
湖南文理学院计算机科学与技术学院 图 2-1 8253 的内部结构 (1).数据总线缓冲器 实现 8253 与 CPU 数据总线连接的 8 位双向三态缓冲器,用以传送 CPU 向 8253 的控制信息、数据信息以及 CPU 从 8253 读取的状态信息,包括某时刻的实时计 数值。 (2).读/写控制逻辑 控制 8253 的片选及对内部相关寄存器的读/写操作,它接收 CPU 发来的地 址信号以实现片选、内部通道选择以及对读/写操作进行控制。 (3).控制字寄存器 在 8253 的初始化编程时,由 CPU 写入控制字,以决定通道的工作方式,此 寄存器只能写入,不能读出。 (4).计数通道 0#、1#、2#: 这是三个独立的,结构相同的计数器/定时器通道,每一个通道包含一个 16 位的计数寄存器,用以存放计数初始值,一个 16 位的减法计数器和一个 16 位的锁存器,锁存器在计数器工作的过程中,跟随计数值的变化,在接收到 CPU 发来的读计数值命令时,用以锁存计数值,供 CPU 读取,读取完毕之后,输出 锁存器又跟随减 1 计数器变化。 2.3 8253A 外部引脚 8253 芯片是具有 24 个引脚的双列直插式集成电路芯片,其引脚分布如图所 示。8253 芯片的 24 个引脚分为两组,一组面向 CPU,另一组面向外部设备,各 个引脚及其所传送信号的情况,介绍如下: (1).D7~D0:双向、三态数据线引脚,与系统的数据线连接,传送控制、数据及 状态信息。 (2). RD :来自于 CPU 的读控制信号输入引脚,低电平有效。 (3).WR :来自于 CPU 的写控制信号输入引脚,低电平有效。 (4).CS :芯片选择信号输入引脚,低电平有效。 4
湖南文理学院计算机科学与技术学院 图 2-1 8253 的引脚 (5).A1、A0:地址信号输入引脚,用以选择 8253 芯片的通道及控制字寄存器。 (6).VCC 及 GND:+5V 电源及接地引脚 (7).CLKi:i=0,1,2,第 i 个通道的计数脉冲输入引脚,8253 规定,加在 CLK 引脚的输入时钟信号的频率不得高于 2.6MHZ,即时钟周期不能小于 380ns。 (8).GATEi:i=0,1,2,第 i 个通道的门控信号输入引脚,门控信号的作用与通 道的工作方式有关。 (9).OUTi:i=0,1,2,第 i 个通道的定时/计数到信号输出引脚,输出信号的形 式由通道的工作方式确定,此输出信号可用于触发其它电路工作,或作为向 CPU 发出的中断请求信号。 2.4 计数器内部结构 每个计数器由一个 16 位可预置的减 1 计数器组成,计数初值可保存在 16 位 的锁存器中,该锁存器只写不能读。在计数器工作时,初值不受影响,以便进行 重复计数。图中每个计数器有一个时钟输入端 CLK 作为计数脉冲源, 计数方式 可以是二进制,计数范围 1~10000H,也可以是十进制,计数范围 1~65536。门 控端 GATE 用于控制计数开始和停止。输出 OUT 端当计数器计数值减到零时, 该端输出标志信号 。 5
湖南文理学院计算机科学与技术学院 图 2-2 计数器内部结构 2.5 8253A 端口地址 图 2-3 8253A 端口地址 2.6 8253A 功能 8253 A 既可作定时器又可作计数器: 6
湖南文理学院计算机科学与技术学院 (1) 计数: 计数器装入初值后,当 GATE 为高电平时,可用外部事件作为 CLK 脉冲对计数值进行减 1 计数,每来一个脉冲减 1,当计数值减至 0 时,由 OUT 端输出一个标志信号。 (2) 定时: 计数器装入初值后,当 GATE 为高电平时,由 CLK 脉冲触发 开始自动计数,当计数到零时,发计数结束定时信号。 除上述典型应用外,8253A 还可作频率发生器、分频器、实时钟、单脉冲发 生器等。 2.7 8253A 控制字 说明 : 图 2-4 8253A 控制字 (1) 8253 A 每个通道对输入 CLK 按二进制或二十进制从预置值开始减 1 计数,减到 0 时从 OUT 输出一个信号。 (2) 8253 A 编程时先写控制字,再写时间常数。 2.8 8253A 工作方式 (1) 方式 0:计数结束产生中断方式 7
分享到:
收藏