新建
上传
首页
助手
最?/div>
资料?/div>
工具

微机原理及应用课程设?/p>

 

 

1 

一

.

 

设计任务及要?/p>

 

1.

 

?/p>

8255

接八个开?/p>

K1~K8

,做电子琴按键输入?/p>

 

2.

 

?/p>

8253

控制扬声器,拨动不同的开关,发出相应的音阶?/p>

 

要求?/p>

 

K1

?/p>

静音

 

 

 

 

 

 

 

 

K2

?/p>

?/p>

si

的音

493Hz 

 

 

 

 

 

 

 

K3

?/p>

?/p>

la

的音

440Hz 

 

 

 

 

 

 

 

K4

?/p>

?/p>

sol

的音

392Hz 

 

 

 

 

 

 

 

K5

?/p>

?/p>

fa

的音

349Hz 

 

 

 

 

 

 

 

K6

?/p>

?/p>

mi

的音

329Hz 

 

 

 

 

 

 

 

K7

?/p>

?/p>

re

的音

293Hz 

 

 

 

 

 

 

 

K8

?/p>

?/p>

do

的音

261Hz 

?/p>

.

 

方案比较和认?/p>

 

通过

8255

?/p>

8253

来实现电子琴模拟?/p>

主要可以分成

两部分,

分别为输入部分和发音部分?/p>

输入部分主要是由

8255

?/p>

8

个常开型开关来完成?/p>

常开型开关如右图?/p>

8

?/p>

常开型开?/p>

K1~K8

?/p>

8255

?/p>

A

?/p>

PA0~PA7

相接,不?/p>

动开关时,为高电平输入,当按下开关时,就接地,为?/p>

电平输入。例如当

K1

键按下时,从

8255

?/p>

A

口输入的

数为

11111110B

,十六进制为

0FEH

。每一个开关按下时?/p>

都对应一?/p>

ASCII

码,如下表所示:

 

开

 

 

 

?/p>

 

K1 

K2 

K3 

K4 

K5 

K6 

K7 

K8 

对应数据

 

0FEH 

0FDH 

0FBH 

0F7H 

0EFH 

0DFH 

0BFH 

7FH 

对应频率

 

静音

 

493 Hz 

440 Hz 

392 Hz 

349 Hz 

329 Hz 

293 Hz 

261 Hz 

 

输入部分的硬件实现比较简单,所以说主要还是在发音部分。在设计中驱

动扬声器地声的主要有两种方式?/p>

分别是以位触发和定时器控制?/p>

下面就这两种

不同的方式确定两个不同的设计方案?/p>

 

方案

1

?/p>

 

 

 

 

 

发声采用位触发方式。电路原理图如下所示。程序直接控?/p>

PPI

?/p>

8255

可编

程序外围接口芯片)的输出控制寄存器(

I/O

端口?/p>

61H

)的第一位,使该位按

所需的频率进?/p>

1

?/p>

0

的交替变化,

从而产生一串脉冲控制波形,

这些脉冲经过

放大后驱动扬声器发出声音?/p>

 

 

 

 

 

可以利用软件延时来控制所产生的脉冲波形的长度和脉宽,

就可以实?/p>

产生不同频率和不同音长的声音。软件实现的程序如下?/p>

 

 

 

 

 

 

IN 

 

 

 

 

AL

?/p>

61H 

 

 

 

 

 

MOV 

 

AH

?/p>

AL 

 

 

 

 

 

AND 

 

 

AL

?/p>

0FCH 

 

 

 

 

;关断定时器通道

2

的门?/p>

 

SOUND

?/p>

XOR 

 

 

AL

?/p>

2 

 

 

 

 

 

 

 

 

;触?/p>

61H

端口?/p>

1

?/p>

 

 

 

 

 

 

 

 

 

 

OUT 

 

 

61H

?/p>

AL 

 

 

 

 

 

 

 

 

 

MOV 

 

CX

?/p>

DX 

 

 

 

 

 

 

 

?/p>

?/p>

DX

?/p>

=

控制脉冲的计数?/p>

 

WAIT

?/p>

 

 

LOOP 

 

WAIT 

 

 

 

 

 

 

 

 

 

;延时循?/p>

 

Ͼλ
新建
上传
首页
助手
最?/div>
资料?/div>
工具

微机原理及应用课程设?/p>

 

 

1 

一

.

 

设计任务及要?/p>

 

1.

 

?/p>

8255

接八个开?/p>

K1~K8

,做电子琴按键输入?/p>

 

2.

 

?/p>

8253

控制扬声器,拨动不同的开关,发出相应的音阶?/p>

 

要求?/p>

 

K1

?/p>

静音

 

 

 

 

 

 

 

 

K2

?/p>

?/p>

si

的音

493Hz 

 

 

 

 

 

 

 

K3

?/p>

?/p>

la

的音

440Hz 

 

 

 

 

 

 

 

K4

?/p>

?/p>

sol

的音

392Hz 

 

 

 

 

 

 

 

K5

?/p>

?/p>

fa

的音

349Hz 

 

 

 

 

 

 

 

K6

?/p>

?/p>

mi

的音

329Hz 

 

 

 

 

 

 

 

K7

?/p>

?/p>

re

的音

293Hz 

 

 

 

 

 

 

 

K8

?/p>

?/p>

do

的音

261Hz 

?/p>

.

 

方案比较和认?/p>

 

通过

8255

?/p>

8253

来实现电子琴模拟?/p>

主要可以分成

两部分,

分别为输入部分和发音部分?/p>

输入部分主要是由

8255

?/p>

8

个常开型开关来完成?/p>

常开型开关如右图?/p>

8

?/p>

常开型开?/p>

K1~K8

?/p>

8255

?/p>

A

?/p>

PA0~PA7

相接,不?/p>

动开关时,为高电平输入,当按下开关时,就接地,为?/p>

电平输入。例如当

K1

键按下时,从

8255

?/p>

A

口输入的

数为

11111110B

,十六进制为

0FEH

。每一个开关按下时?/p>

都对应一?/p>

ASCII

码,如下表所示:

 

开

 

 

 

?/p>

 

K1 

K2 

K3 

K4 

K5 

K6 

K7 

K8 

对应数据

 

0FEH 

0FDH 

0FBH 

0F7H 

0EFH 

0DFH 

0BFH 

7FH 

对应频率

 

静音

 

493 Hz 

440 Hz 

392 Hz 

349 Hz 

329 Hz 

293 Hz 

261 Hz 

 

输入部分的硬件实现比较简单,所以说主要还是在发音部分。在设计中驱

动扬声器地声的主要有两种方式?/p>

分别是以位触发和定时器控制?/p>

下面就这两种

不同的方式确定两个不同的设计方案?/p>

 

方案

1

?/p>

 

 

 

 

 

发声采用位触发方式。电路原理图如下所示。程序直接控?/p>

PPI

?/p>

8255

可编

程序外围接口芯片)的输出控制寄存器(

I/O

端口?/p>

61H

)的第一位,使该位按

所需的频率进?/p>

1

?/p>

0

的交替变化,

从而产生一串脉冲控制波形,

这些脉冲经过

放大后驱动扬声器发出声音?/p>

 

 

 

 

 

可以利用软件延时来控制所产生的脉冲波形的长度和脉宽,

就可以实?/p>

产生不同频率和不同音长的声音。软件实现的程序如下?/p>

 

 

 

 

 

 

IN 

 

 

 

 

AL

?/p>

61H 

 

 

 

 

 

MOV 

 

AH

?/p>

AL 

 

 

 

 

 

AND 

 

 

AL

?/p>

0FCH 

 

 

 

 

;关断定时器通道

2

的门?/p>

 

SOUND

?/p>

XOR 

 

 

AL

?/p>

2 

 

 

 

 

 

 

 

 

;触?/p>

61H

端口?/p>

1

?/p>

 

 

 

 

 

 

 

 

 

 

OUT 

 

 

61H

?/p>

AL 

 

 

 

 

 

 

 

 

 

MOV 

 

CX

?/p>

DX 

 

 

 

 

 

 

 

?/p>

?/p>

DX

?/p>

=

控制脉冲的计数?/p>

 

WAIT

?/p>

 

 

LOOP 

 

WAIT 

 

 

 

 

 

 

 

 

 

;延时循?/p>

 

">
新建
上传
首页
助手
最?/div>
资料?/div>
工具

微机原理及应用课程设?/p>

 

 

1 

一

.

 

设计任务及要?/p>

 

1.

 

?/p>

8255

接八个开?/p>

K1~K8

,做电子琴按键输入?/p>

 

2.

 

?/p>

8253

控制扬声器,拨动不同的开关,发出相应的音阶?/p>

 

要求?/p>

 

K1

?/p>

静音

 

 

 

 

 

 

 

 

K2

?/p>

?/p>

si

的音

493Hz 

 

 

 

 

 

 

 

K3

?/p>

?/p>

la

的音

440Hz 

 

 

 

 

 

 

 

K4

?/p>

?/p>

sol

的音

392Hz 

 

 

 

 

 

 

 

K5

?/p>

?/p>

fa

的音

349Hz 

 

 

 

 

 

 

 

K6

?/p>

?/p>

mi

的音

329Hz 

 

 

 

 

 

 

 

K7

?/p>

?/p>

re

的音

293Hz 

 

 

 

 

 

 

 

K8

?/p>

?/p>

do

的音

261Hz 

?/p>

.

 

方案比较和认?/p>

 

通过

8255

?/p>

8253

来实现电子琴模拟?/p>

主要可以分成

两部分,

分别为输入部分和发音部分?/p>

输入部分主要是由

8255

?/p>

8

个常开型开关来完成?/p>

常开型开关如右图?/p>

8

?/p>

常开型开?/p>

K1~K8

?/p>

8255

?/p>

A

?/p>

PA0~PA7

相接,不?/p>

动开关时,为高电平输入,当按下开关时,就接地,为?/p>

电平输入。例如当

K1

键按下时,从

8255

?/p>

A

口输入的

数为

11111110B

,十六进制为

0FEH

。每一个开关按下时?/p>

都对应一?/p>

ASCII

码,如下表所示:

 

开

 

 

 

?/p>

 

K1 

K2 

K3 

K4 

K5 

K6 

K7 

K8 

对应数据

 

0FEH 

0FDH 

0FBH 

0F7H 

0EFH 

0DFH 

0BFH 

7FH 

对应频率

 

静音

 

493 Hz 

440 Hz 

392 Hz 

349 Hz 

329 Hz 

293 Hz 

261 Hz 

 

输入部分的硬件实现比较简单,所以说主要还是在发音部分。在设计中驱

动扬声器地声的主要有两种方式?/p>

分别是以位触发和定时器控制?/p>

下面就这两种

不同的方式确定两个不同的设计方案?/p>

 

方案

1

?/p>

 

 

 

 

 

发声采用位触发方式。电路原理图如下所示。程序直接控?/p>

PPI

?/p>

8255

可编

程序外围接口芯片)的输出控制寄存器(

I/O

端口?/p>

61H

)的第一位,使该位按

所需的频率进?/p>

1

?/p>

0

的交替变化,

从而产生一串脉冲控制波形,

这些脉冲经过

放大后驱动扬声器发出声音?/p>

 

 

 

 

 

可以利用软件延时来控制所产生的脉冲波形的长度和脉宽,

就可以实?/p>

产生不同频率和不同音长的声音。软件实现的程序如下?/p>

 

 

 

 

 

 

IN 

 

 

 

 

AL

?/p>

61H 

 

 

 

 

 

MOV 

 

AH

?/p>

AL 

 

 

 

 

 

AND 

 

 

AL

?/p>

0FCH 

 

 

 

 

;关断定时器通道

2

的门?/p>

 

SOUND

?/p>

XOR 

 

 

AL

?/p>

2 

 

 

 

 

 

 

 

 

;触?/p>

61H

端口?/p>

1

?/p>

 

 

 

 

 

 

 

 

 

 

OUT 

 

 

61H

?/p>

AL 

 

 

 

 

 

 

 

 

 

MOV 

 

CX

?/p>

DX 

 

 

 

 

 

 

 

?/p>

?/p>

DX

?/p>

=

控制脉冲的计数?/p>

 

WAIT

?/p>

 

 

LOOP 

 

WAIT 

 

 

 

 

 

 

 

 

 

;延时循?/p>

 

Ͼλ">
Ͼλ
Ŀ

微机原理及应用课程设?Read - 百度文库
新建
上传
首页
助手
最?/div>
资料?/div>
工具

微机原理及应用课程设?/p>

 

 

1 

一

.

 

设计任务及要?/p>

 

1.

 

?/p>

8255

接八个开?/p>

K1~K8

,做电子琴按键输入?/p>

 

2.

 

?/p>

8253

控制扬声器,拨动不同的开关,发出相应的音阶?/p>

 

要求?/p>

 

K1

?/p>

静音

 

 

 

 

 

 

 

 

K2

?/p>

?/p>

si

的音

493Hz 

 

 

 

 

 

 

 

K3

?/p>

?/p>

la

的音

440Hz 

 

 

 

 

 

 

 

K4

?/p>

?/p>

sol

的音

392Hz 

 

 

 

 

 

 

 

K5

?/p>

?/p>

fa

的音

349Hz 

 

 

 

 

 

 

 

K6

?/p>

?/p>

mi

的音

329Hz 

 

 

 

 

 

 

 

K7

?/p>

?/p>

re

的音

293Hz 

 

 

 

 

 

 

 

K8

?/p>

?/p>

do

的音

261Hz 

?/p>

.

 

方案比较和认?/p>

 

通过

8255

?/p>

8253

来实现电子琴模拟?/p>

主要可以分成

两部分,

分别为输入部分和发音部分?/p>

输入部分主要是由

8255

?/p>

8

个常开型开关来完成?/p>

常开型开关如右图?/p>

8

?/p>

常开型开?/p>

K1~K8

?/p>

8255

?/p>

A

?/p>

PA0~PA7

相接,不?/p>

动开关时,为高电平输入,当按下开关时,就接地,为?/p>

电平输入。例如当

K1

键按下时,从

8255

?/p>

A

口输入的

数为

11111110B

,十六进制为

0FEH

。每一个开关按下时?/p>

都对应一?/p>

ASCII

码,如下表所示:

 

开

 

 

 

?/p>

 

K1 

K2 

K3 

K4 

K5 

K6 

K7 

K8 

对应数据

 

0FEH 

0FDH 

0FBH 

0F7H 

0EFH 

0DFH 

0BFH 

7FH 

对应频率

 

静音

 

493 Hz 

440 Hz 

392 Hz 

349 Hz 

329 Hz 

293 Hz 

261 Hz 

 

输入部分的硬件实现比较简单,所以说主要还是在发音部分。在设计中驱

动扬声器地声的主要有两种方式?/p>

分别是以位触发和定时器控制?/p>

下面就这两种

不同的方式确定两个不同的设计方案?/p>

 

方案

1

?/p>

 

 

 

 

 

发声采用位触发方式。电路原理图如下所示。程序直接控?/p>

PPI

?/p>

8255

可编

程序外围接口芯片)的输出控制寄存器(

I/O

端口?/p>

61H

)的第一位,使该位按

所需的频率进?/p>

1

?/p>

0

的交替变化,

从而产生一串脉冲控制波形,

这些脉冲经过

放大后驱动扬声器发出声音?/p>

 

 

 

 

 

可以利用软件延时来控制所产生的脉冲波形的长度和脉宽,

就可以实?/p>

产生不同频率和不同音长的声音。软件实现的程序如下?/p>

 

 

 

 

 

 

IN 

 

 

 

 

AL

?/p>

61H 

 

 

 

 

 

MOV 

 

AH

?/p>

AL 

 

 

 

 

 

AND 

 

 

AL

?/p>

0FCH 

 

 

 

 

;关断定时器通道

2

的门?/p>

 

SOUND

?/p>

XOR 

 

 

AL

?/p>

2 

 

 

 

 

 

 

 

 

;触?/p>

61H

端口?/p>

1

?/p>

 

 

 

 

 

 

 

 

 

 

OUT 

 

 

61H

?/p>

AL 

 

 

 

 

 

 

 

 

 

MOV 

 

CX

?/p>

DX 

 

 

 

 

 

 

 

?/p>

?/p>

DX

?/p>

=

控制脉冲的计数?/p>

 

WAIT

?/p>

 

 

LOOP 

 

WAIT 

 

 

 

 

 

 

 

 

 

;延时循?/p>

 



ļ׺.doc޸Ϊ.docĶ

  • ѧӦͳѧҵ
  • C½ϰ⼯(ȫ)
  • ҵĹЧЩ
  • оӢ̲ĶA1-14Ԫ+ķ(ȫ)
  • Ȼҩﻯѧϰ⼯
  • 00177ѧ201007Ծ⼰
  • 2019߿һָϰһ ͼ һ ϰϰ
  • Ͷŵôд
  • 2015ҹԱвж㣺֪ʶ㴢
  • Ƶﱸ Ƶ꿪ҵﱸְ̲񡪡Ƶ˾20

վ

԰ Ͼλ
ϵͷ779662525#qq.com(#滻Ϊ@)