微机原理与接口技术-8254电子发声器_课程设计_BY(凉).doc

微机原理与接口技术-8254电子发声器_课程设计_BY(凉).doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE PAGE 0 实验名称:发声器 功能及使用方法: 设计一个电子琴发声程序,并在运行时通过实验箱上的扬声器发声,并且当按下数字1~14时,依次发出1,2,3,4,5,6,7的低音和1,2,3,4,5,6,7的中音。并在实验箱上的发声器上发声,这肯定需要有发声程序,驱动发声程序,还有键盘扫描程序,及为了能够听见清脆的字符音还得对程序进行必要的延时。利用8254芯片所提供转化后的频率送到发声单元进行发声及8255芯片送提供的输入输出功能,来完成从键盘的输入到发声装置发声的控制。 电子发声原理: 一个音符对应一个频率,将对应一个音符频率的方波通到扬声器上,就可以发出这个音符的声音。将一段乐曲的音符对应频率的方波一次送到扬声器,就可以演奏出这段乐曲。利用8254的“方波发生器”,将相应的一种频率的计数初值写入计数器,就可以产生对应频率的方波。计数初值的计算如下: 计数初值 = 输入时钟\输出频率 例如输入时钟采用1MHZ,要得到800HZ的频率,计数初值即为1000000/800。音符与表的对照关系如上表所示。对于每一个音符的演奏时间,可以通过软件延时来处理。首先确定单位延时子程序(根据CPU的频率不同而有所变化)。然后确定每个音符演奏需要几个单位延时,将此值送入寄存器,再调用延时子程序即可。 三.实验器件: 通过实验箱上的扬声器发声,并且当按下数字1~14时,依次发出1,2,3,4,5,6,7的低音和1,2,3,4,5,6,7的中音。并在实验箱上的发声器上发声。 选用器件: 8254和8255芯片各一片,微机一台,TPC-H通用微机接口实验系统一台,扬声器和导线若干 四.电路连接图: 8254部分接线图 8255部分接线图 五.各子程序功能 1.为8255和8254所定义的端口地址: I0Y0 EQU 06C0H MY8254_COUNT0 EQU I0Y0+00H MY8254_COUNT1 EQU I0Y0+02H MY8254_COUNT2 EQU I0Y0+04H MY8254_MODE EQU I0Y0+06H MY8255_A EQU 0640H MY8255_B EQU 0642H MY8255_C EQU 0644H MY8255_MODE EQU 0646H 2..频率表及所对应的时间表: FREQ_LIST DW 262H,294H,330H,349H,392H,440H,496H DW 523H,587H,659H,698H,784H,880H,988H DTABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H 3.定义8255和8254的控制字 MOV DX,MY8255_MODE MOV AL,81H OUT DX MOV DX,MY8254_MODE MOV AL,36H OUT DX 4.CCSCAN子程序实现取出按键值并输入A口(清屏子程序) CCSCAN:MOV AL,00H MOV DX,MY8255_A OUT DX MOV DX,MY8255_C IN AL,DX NOT AL AND AL,0FH RET 5.Play输出发音的子程序 PLAY PROC MOV AH,0 MOV SI,AX SHL SI,1 MOV DX,0FH MOV AX,4240H DIV WORD PTR [SI] MOV DX,MY8254_COUNT0 OUT DX MOV AL,AH OUT DX RET PLAY ENDP 6.延时子程序 DALLY PROC D0: MOV CX,0010H D1: MOV AX,02H D2: DEC AX JNZ D2 LOOP D1 DEC DL JNZ D0 RET DALLY ENDP 7.按键扫描功能 COLUM: MOV AL,CH MOV DX,MY8255_A OUT DX MOV DX,MY8255_C IN AL,DX L1:TEST AL,01H JNZ L2 MOV AL,00H JMP KCODE L2:TEST AL,02H JNZ L3 MOV AL,04H JMP KCODE L3:TEST

文档评论(0)

小教资源库 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档