- 1、本文档共8页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理与接口技术音乐发生器接口
HUNAN CITY UNIVERSITY
微机原理与接口技术
实验报告
实验题目: 音乐发生器接口实验
专 业: 计算机科学与技术(嵌入式方向)
学生姓名: 李国红
班级学号: 1006402-20
分组成员: 蔡祥1106402-09 吕赟1106402-38
指导教师: 刘德峰
2013 年 5月 13日
一、实验时间
2013年5月13日9:40~11:40
二、实验地点
一实验楼321机房
设计课题
音乐发生器接口实验
四、实验目的
通过音乐发生器实验,学习如何利用8253定时/计数器进行声音控制电路的设计原理与方法。
五、实验小组成员
李国红1106402-20 蔡祥1106402-09 吕赟1106402-38
实验原理
1.音乐发生器驱动模块电路原理如图2.1.12所示。模块包含喇叭SPK,LM386A,74LS08,以及74LS245和LED等。其中LED是配合演奏音乐时产生发光效果而设置的。
图2.1.12 音乐发生器模块板电路原理框图
2.利用8253控制发声原理与方法的详细阐述,参考计算机接口技术相关参考书.
算法及流程图
实验现象:启动程序,音乐发生器奏出两只老虎的音乐.8个LED全亮. 按ESC键停止.
八、实验步骤
步骤一:硬件连线
跳线设置:将电源模块的JP7跳接.
单线连接如右图:
排线连接如右图:
步骤二:将平台的电源开关拔到“内”的位置上。在配套集成环境下进行硬件检测,达到初始化芯片的目的
步骤三:(示实验步骤)打开集成环境在“演示实验”菜单下点开“基本接口实验”。在“基本接口实验”中的“定时记数器实验”中选择“音乐发生器”实验进行演示。
步骤四:(学生实验步骤)打开集成环境在“文件”菜单下学生可以选择新建自己的C++/ASM文件或者集成环境自带的C++/ASM参考程序进行调试、运行。
步骤五:观看实验现象得出结论。
九、实验中出现的问题及其解决方法
问题:在编完成运行时发现不能运行?
解决办法:在写程序的时候,细心谨慎,不能漏掉或者省去一个‘}、;‘等符号,字母的大小写在定义前后应保持一致。
问题:程序运行时无法生成目标文件?
解决办法:程序中出现非法字符。
问题:接收端接收的数据出现乱码
解决办法:检查连线是否出错,并检查两端所设置的波特率是否相同。检查后发现任然有乱码现象,猜想可能是程序中终端设置有误,或实验平台电路老化。由于时间问题,最终没有验证。
十、心得体会
通过这次课程设计使我充分理解了8253和8255两个芯片的工作原理,知道了音乐发声器的硬件和软件的实现过程,并且通过自己动手编写的程序来控制音乐发器的工作,我感到非常有成就感,也锻炼了我的编程能力。在刚开始编程的时候,我感到很茫然,不知道怎么样下手,但是通过自己的仔细的分析和老师的细心的指导,在认真分析了原来已有的代码后,又加入了现实灯光闪烁的效果,而且现实从文件读取音符来转换成相应的频率和延时数组,在此之后,我又编写了一个主界面,在里面编写了一个菜单,来实现程序的跳转。
十一、源代码
#include dos.h //getvect(); setvect();
#include conio.h //kbhit();
#include stdlib.h //exit(0);
#include stdio.h //printf();
#ifdef __cplusplus
#define __CPPARGS ...
#else
#define __CPPARGS
#endif
short int nFreq[] = {
//声明歌曲“两个老虎”的音乐频率
262,294,330,262,
262,294,330,262,
330,349,392,
330,349,392,
392,440,392,349,330,262,
392,440,392,349,330,262,
294,196,262,
294,196,262,
0
};
short int nTimeDelay[] = {
//声明歌曲“两个老虎”的音乐延时
8,8,8,8,
8,8,8,8,
8,8,16,
8,8,1
您可能关注的文档
最近下载
- GBZ188-2014 职业健康监护技术规范(代替GBZ188-2007).pdf
- 劳务报酬合同.docx VIP
- 标牌、标线、波形护栏 等配套交通安全设施采购服务方案.docx
- 医院感染预防和控制评价规范.pptx
- 装修隔断工程施工方案(3篇).docx VIP
- 机箱用连接器的介绍.doc VIP
- 毕业设计论文_基于单片机STC89C52为控制器的LED点阵显示屏系统的设计.doc
- 名著导读《经典常谈》系列之《诗》第十二、《文》第十三-八年级语文下册课件.pptx VIP
- 2024年(高级)政工师理论考试题库及答案(含各题型) .docx
- 深入贯彻中央八项规定精神学习教育党课(ppt).pptx VIP
文档评论(0)