- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
pc机发音原理
在没有配置多媒体的微机上,扬声器是PC机唯一可以发声的设备。这里,我们讨论PC机扬声器发声的原理及有关音乐程序设计。1.PC机发声原理:@@42L20100.GIF;图1@@从图中可以看出,扬声器接受两个发声信号:一个来自定时器芯片(8253)的通道2的输出信号OUT2;另一个来自外围设备接口芯片(8255)端口B的第一位发出的信号(注:在386微机中采用与8255和8253芯片功能兼容的类8255和类8253芯片)。8255芯片通过I/O端口61H的PB1和PBO两位来选择扬声器的驱动。当PBO为1时,控制82533定时器发出脉冲;当PB1为1时,扬声器的与门电路接通并一直保持到PB1变到)时关闭;在此期间,由8253芯片通道2以及选通扬声器的作用。8253芯片有三个相同且各自独立的通道,其通道2的输出OUT2在初始化后发出一定频率的脉冲信号。此脉冲信号可以通过对通道的编程而进行改变,这样,就使得扬声器能发出各种频率的声音。我们用程序设定通道2输出波形的频率和延续时间,就能控制扬声器的单调和发声的长短。2.发声软件设计及实例根据发声电路,我们知道要使扬声器发出一定频率的声音,需要完成以下几项工作:根据已知的声音频率,求送8253芯片通道2的计数时间常数TIME;往8253指令寄存器(43H)送指令码oB6H,使通道2输出脉冲信号;把时间常数TIME送入8253的通道2;把8255芯片的PB1、PBO置为1,开启扬声器;持续若干时间。所有发声软件设计都基于上述工作进行,这里我们给出一个用PC机键盘模拟钢琴的程序,作为发声软件设计实例。DATASEGMENTTABLE DW 524,588,660,698,784,880,988,1048 ;音符1,2,3,4,5,6,7,i频率MESSDB ’Press CTRL-C to return to DOS!, 0dh, 0ah, $DATAENDSCODESEGMENTASSUME CS:CODE, DS:DATASTART: MOV AX,DATAMOV DS,AXMOV AB,09HMOV DX,OFFSET MESSINT 21HSING: MOV AB,01HINT 21H ;接收键入字符CMP AL,03H ;是否是CTRL-C ?JZ FINISHSUB AL,31HSHL AL,01H ;转换为查表偏移量MOV BL,ALMOV AX,0MOV DX,12H ;常数120000H作为被除数MOV BH,00DIV WORD PTR[TABLE+BX]MOV BX,AX ;求得频率值→BXMOV ALOUT 43H,AL ;设置8253计数器的控制字MOV AX,BXOUT 42H,AL ;设置计数器2 计数初值低位MOV AL,AHOUR 42H,AL ;设置计数初值高位IN AL,61HOR AL,03HOUT 61H,AL ;打开与门CALL DELAYIN AL,61HAND AL,OFCHOUT 61H,AL ;关闭与门JMP SINGFINESH:MOV AX,4C00HINT 21H ;返回DOSDELAY PROC NEAR ;延时子程序PUSH CXPUSH AXMOV CX,OAHX2: MOV AX,OFFFFHX1: DEC AXJNZ X1LOOP X2POP AXPOP OXRETDELAY ENDPCODEENDS3.后台演奏音乐软件设计在PC机前台工作的同时,进行后台音匀演奏是带点技巧性的程序设计,这实际上是中断服务程序设计。定时中断服务程序挂接在BIOS计时中断上,每秒激活18.2次。后台音乐程序开始发一个音,然后,每次定时激活时,检查是否该停止当前音和开始新的音。通常,当调用中断服务程序时,只执行几行程序、就足以确定是否需要对发音作某些变动。每个音符的持续期,我们用BIOS时钟的滴答次数来计量。每次从一个音符换到另一个音符,新音符的持续期计算为BIOS日历钟计数的脉冲数,并把该值加到当前计数的读数上。每次调用该程序时,检查日历钟值,当最后出现所等待的值时,程序查找下个音符,把其频率编程进计时芯片8253的通道2,并设置新持续期计数。这就是后台音乐软件设计的基本原理和方法。
您可能关注的文档
最近下载
- (高清版)DB43∕T 140-2023 造林技术规程 .pdf VIP
- 2025广东汕尾市海丰县纪委监委招聘政府聘员6人笔试参考题库附答案解析.docx VIP
- 飞机构造基础 液压源 液压源的组成(二).pptx VIP
- 正元地下管线数据处理系统用户手册(Zyspps Ver5.0).pdf
- 概率论与数理统计教程(第2版) 茆诗松全套PPT课件.ppt
- 瑶族舞曲(管弦乐)总谱.pdf VIP
- DCS控制室全操作规程.docx VIP
- 爱立信5G四期产品及建设方案介绍.pdf VIP
- 统编版八年级上册语文第一单元第2课《中国人首次进入自己的空间站》教学课件(新教材).pptx
- 《汽车鉴定与评估》全套课件.pptx VIP
文档评论(0)