电子音调发生器文档格式.docx

上传人:b****2 文档编号:986677 上传时间:2023-04-29 格式:DOCX 页数:13 大小:168.76KB
下载 相关 举报
电子音调发生器文档格式.docx_第1页
第1页 / 共13页
电子音调发生器文档格式.docx_第2页
第2页 / 共13页
电子音调发生器文档格式.docx_第3页
第3页 / 共13页
电子音调发生器文档格式.docx_第4页
第4页 / 共13页
电子音调发生器文档格式.docx_第5页
第5页 / 共13页
电子音调发生器文档格式.docx_第6页
第6页 / 共13页
电子音调发生器文档格式.docx_第7页
第7页 / 共13页
电子音调发生器文档格式.docx_第8页
第8页 / 共13页
电子音调发生器文档格式.docx_第9页
第9页 / 共13页
电子音调发生器文档格式.docx_第10页
第10页 / 共13页
电子音调发生器文档格式.docx_第11页
第11页 / 共13页
电子音调发生器文档格式.docx_第12页
第12页 / 共13页
电子音调发生器文档格式.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

电子音调发生器文档格式.docx

《电子音调发生器文档格式.docx》由会员分享,可在线阅读,更多相关《电子音调发生器文档格式.docx(13页珍藏版)》请在冰点文库上搜索。

电子音调发生器文档格式.docx

音调

1

2

3

4

5

6

7

频率

131

147

165

175

196

220

247

X

F242

F3C1

F517

F5B6

F6D0

F7D1

F8B6

中音节

262

294

330

349

392

440

494

F921

F9E1

FA8C

FAD8

FB68

FBE9

FC5B

高音节

523

587

659

698

784

880

988

FC8F

FCEF

FD45

FD6C

FDB4

FDF4

FE2D

注:

频率以HZ为单位

每个音节相应的定时器初值x可按下法计算。

即:

其中,f是音调频率,晶振fosc=11.0592Mhz。

(2)定时器的使用及时间延迟

首先对定时器进行初始化

设置TMOD(工作方式)寄存器

GATA

C/T

M1

M0

定时器1

定时器0

GATE:

门控位

GATE=0,TR=1启动计数(软件启动);

GATE=1,TR=1且INT=1启动计数(硬件启动)。

C/T:

定时或计数方式选择位。

C/T=0,定时工作方式;

C/T=1,计数工作方式。

M1M0:

工作方式选择位。

M1M0=00,方式0:

13位计数(TL0-4、TH0-7)

M1M0=01,方式1:

16位计数(TL0-7、TH0-7)

M1M0=10,方式2:

8位计数,有自动装入功能。

M1M0=11,方式3:

T0分为两个8位计数器,TL0可工作为定时或计数方式,TH0只能工作为定时方式。

设置TCON(控制)寄存器:

TF1

TR1

TF0

TR0

IE1

IT1

IE0

IT0

TR0/TR1:

启动计数。

为1启动计数;

为0停止计数。

TF0/TF1:

计数溢出。

当加”1”计数结束时为1。

本实验采用定时器T0,工作在方式1(16位计数),无自动装入功能。

其节拍的延时为:

曲调值

DELAY

调4/4

125ms

调3/4

187ms

调2/4

250ms

四、实验程序流程图:

1、音调发声部分:

无输入K4&

K5&

K6=1

有输入且K4&

K6=0

否是

五、实验程序源代码:

;

************************

DATASEGMENT

msgDB0DH,0AH,'

[1234567]'

DB0DH,0AH,'

[qwertyu]'

_________________'

9:

EXIT'

'

$'

;

********音调******后面用到-1判断音乐播是否放完

sound_0DW-1

sound_11DW441,-1

sound_12DW495,-1

sound_13DW556,-1

sound_14DW589,-1

sound_15DW661,-1

sound_16DW742,-1

sound_17DW833,-1

sound_1DW882,-1

sound_2DW990,-1

sound_3DW1112,-1

sound_4DW1178,-1

sound_5DW1322,-1

sound_6DW1484,-1

sound_7DW1655,-1

timeDW25

DATAENDS

STACKSEGMENT

Db200DUP('

STACK'

STACKENDS

***********************

CODESEGMENT

ASSUMEDS:

DATA,SS:

STACK,CS:

CODE

START:

MOVAX,DATA

MOVDS,AX

MOVaH,0

MOVAL,00

INT10H

*****定义一个宏*****

SHOWMACROb

LEADX,b

MOVAH,9

INT21H

ENDM

********一个声音宏********

onesoundmacrosoundis,jumpis,letteris

CMPAL,letteris

JNZjumpis

LEASI,soundis

LEABP,DS:

time

CALLMUSIC

JMPinput

showmsg

INPUT:

MOVAH,01H

CMPAL,'

9'

jnzgo

movah,4ch

int21h

go:

onesoundsound_11,a0,'

q'

a0:

onesoundsound_12,b0,'

w'

b0:

onesoundsound_13,c0,'

e'

c0:

onesoundsound_14,d0,'

r'

d0:

onesoundsound_15,e0,'

t'

e0:

onesoundsound_16,f0,'

y'

f0:

onesoundsound_17,g0,'

u'

g0:

onesoundsound_1,h0,'

1'

h0:

onesoundsound_2,i0,'

2'

i0:

onesoundsound_3,j0,'

3'

j0:

onesoundsound_4,k0,'

4'

k0:

onesoundsound_5,l0,'

5'

l0:

onesoundsound_6,m0,'

6'

m0:

onesoundsound_7,n0,'

7'

n0:

onesoundsound_0,o0,al

o0:

jmpinput

********************发声

GENSOUNDPROCNEAR

-------------

PUSHAX

PUSHBX

PUSHCX

PUSHDX

PUSHDI

--------------

MOVAL,0B6H

OUT43H,AL

MOVDX,12H

MOVAX,348ch

DIVDI

OUT42H,AL

MOVAL,AH

INAL,61H

MOVAH,AL

ORAL,3

OUT61H,AL

WAIT1:

MOVCX,3314

callwaitf

DELAY1:

DECBX

JNZWAIT1

----------------

POPDI

POPDX

POPCX

POPBX

POPAX

-------------------

RET

GENSOUNDENDP

**************************

waitfprocnear

pushax

waitf1:

inal,61h

andal,10h

cmpal,ah

jewaitf1

movah,al

loopwaitf1

popax

ret

waitfendp

MUSICPROCNEAR

PUSHDS

SUBAX,AX

FREG:

MOVDI,[SI]

CMPDI,-1;

音乐是否放完?

JEEND_MUS

MOVBX,DS:

[BP]

CALLGENSOUND

ADDSI,2

ADDBP,2

JMPFREG

END_MUS:

MUSICENDP

CODEENDS

**********************

ENDSTART

六、调试界面

实验电路图大体如下:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2