目录
一、课程设计任务与要求................................................................................................................ 2
1. 课程设计的目的和作用 .......................................................................................................2
2. 课程设计内容与要求...........................................................................................................2
二、总体方案设计分析 .................................................................................................................... 3
1.设计思路: ............................................................................................................................. 3
2.设计分析 ................................................................................................................................. 3
三、硬件系统原理图设计................................................................................................................ 3
1.硬件原理图 ............................................................................................................................. 3
2.设计过程说明 ......................................................................................................................... 5
四、软件设计 .................................................................................................................................... 5
1.主要模块流程图 ..................................................................................................................... 5
2.设计过程 ................................................................................................................................. 7
五、调试及运行结果........................................................................................................................ 8
1.主界面 ..................................................................................................................................... 8
2.运行结果 ................................................................................................................................. 8
六、课程设计总结 ............................................................................................................................ 9
1.收获与体会 ............................................................................................................................. 9
2.问题与解决方法 ..................................................................................................................... 9
3.特色之处 ............................................................................................................................... 10
4.存在的问题和改进设想 .......................................................................................................10
存在的问题: .................................................................................................................. 10
改进和设想: .................................................................................................................. 10
改进:.............................................................................................................................. 10
设想:.............................................................................................................................. 10
七、附录 .......................................................................................................................................... 11
1.源程序 ................................................................................................................................... 11
2.参考文献 ............................................................................................................................... 15
一、课程设计任务与要求
1. 课程设计的目的和作用
《微机原理与接口技术》是一门应用性、综合性、实践性较强的课程,没有实际
的有针对性设计环节,学生就不能很好的理解和掌握所学的技术知识,更缺乏解
决实际问题的能力。所以通过有针对性的课程设计,使学生学会系统地综合运用
所学的技术理论知识,提高学生在微机应用方面的开发与设计本领,系统的掌握
微机硬软件设计方法。
本课程设计是配合课堂教学的一个重要的实践教学环节,不仅要培养学
生的实际动手能力,检验学生对本课程学习的情况,更要培养学生在实际的工程
设计中查阅专业资料、工具书或参考书,掌握工程设计手段和软件工具,并能以
图纸和说明书表达设计思想和结果的能力。培养学生事实求是和严肃认真的工作
态度。
通过设计过程,要求学生熟悉和掌握微机系统的软件、硬件设计的方法、
设计步骤,使学生得到微机开发应用方面的初步训练。让学生独立或集体讨论设
计题目的系统方案论证设计、编程、软件硬件调试、查阅资料、绘图、编写说明
书等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,
实现由学习知识到应用知识的初步过渡。通过本次课程设计使学生熟练掌握微机
系统与接口扩展电路的设计方法,熟练应用 8086 汇编语言编写应用程序和实际
设计中的硬软件调试方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。
2. 课程设计内容与要求
要求每个学生(或小组)都要自己动手独立设计完成一个典型的微机应用小系。
设计题目可以在给出的参考题目中选,也可以自己选设计题目,但难度不应小
于参考题需经指导教师审查后方可确定是否采纳或修改设计题目。
分组要求:每 2-3 人一组。通过 1 周的集中设计时间,在老师的指导下独立
完成规定的设计任务。
二、总体方案设计分析
1.设计思路:
8255 用来做并行控制,8253 用来分频,输出相应波形。利用 8255 的输入口
控制暂停,切歌,以及播放过程中退出;8255 输出口连接 8253 门控信号、LED
灯。为了使音乐播放可以暂停,通过一个与门控制,与门输入端接 8253 的 out
端的输出,以及 8255 的一个输出端口,与门输出端接喇叭。
2.设计分析
这样设计可以方便在播放过程中随意切歌,暂停,以及退出。完成这些功能
只需要拨动与 8255 输入口连接的相应的控制台开关即可,实现也比较容易。比
如初始化 8255B 端口进行输入的话,若 PB0 连接控制台开关 K0,若想使拨动 K0
就能实现切歌,则程序中只需这样做一个判断即可:
test al,00000001B
jnz MUSIC_TWO
暂停、退出等功能也都可以这样实现。
三、硬件系统原理图设计
1.硬件原理图
2.设计过程说明
8255 初始化 A 口输入,B 口输出,8253 初始化计数通道 0,工作在方式三,
先读写低八位再读写高八位。PB0 口接通门控信号 GATE0,PB7 接 LED7;PA6 接
K6,控制暂停和播放,PA1、PA2、PA3 分别接 K1、K2、K3 控制歌曲的任意切换,
PA4 接 K4,用于控制播放时随时退出;8255 的片选 CS 接地址口 Y3;8253 的片
选 CS 接地址口 Y6;CLK0 接输入频率 1MHZ,OUT0 端与 PA6 做位与门的输入端,
与门输出端接喇叭。
四、软件设计
1.主要模块流程图
1.1 主模块流程图
1.2 播放流程控制流程图
1.3 播放功能流程图
1.4 延时功能
2.设计过程
2.1 主模块设计过程
首先初始化 8253 和 8255,然后显示主菜单,用户输入选择,对应选择可以
做相应操作。
2.2 播放流程控制设计过程
首先取音乐频率表和节拍表首地址内容,然后测试 PA6 位是否为 1,为 1 播
放暂停,不为 1 判断 PA3 是否为 1,为 1 播放歌曲“葫芦娃”,不为 1,判断 PA2
是否为 1,为 1 播放歌曲“粉刷匠”,不为 1 判断 PA1 是否为 1,为 1 播放歌曲“友
谊地久天长”,不为 1 判断 PA4 是否为 1,为 1 退出程序,不为 1 播放当前音乐。
2.3 播放功能设计过程
首先初始化 8253 和 8255,从频率表中取出第一个频率,给 8253 计数通道
送计数初值,从节拍表中取出对应音长,判断是否到达停止位,是则重新选择要
播放的音乐,否则将节拍数给 CX 寄存器,PB7 置 1,LED7 亮,调用延时程序,
取下一个频率和节拍。
2.4 延时功能设计过程
首先设定节拍的延时值(3000 仅为自己电脑合适值),并给 BX,CX 寄存器,
每执行一次 loopCX 寄存器中的数值减 1,当 CX 减到 0 时,BX 减 1,最后知道 BX
减到 0 为止。
五、调试及运行结果
1.主界面
2.运行结果
由于是音乐发生器,结果屏幕上显示不了,按照实际情况结果如下
根据菜单栏,键盘输入 1 就会播放音乐“友谊地久天长”,键盘输入 2 就会
播放音乐“粉刷匠”,键盘输入 3 就会播放音乐“葫芦娃”,键盘输入 4 就会退出。
在一首音乐播放完后,界面就会提示用户再次输入选项,执行相应操作。在播放
音乐过程中,拨动 K1 开关,切换到歌曲“友谊地久天长”;拨动 K2 开关,切换
到歌曲“粉刷匠”;拨动 K3 开关,切换到歌曲“葫芦娃”;拨动 K4 开关,直接退
出程序;拨动 K6 开关,暂停播放。