实验蜂鸣器实验.docx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

实验任务

实验8 蜂鸣器实验

(仿真部分)

用P1.0输出1KHz和500Hz的音频信号驱动扬声器,作报警信号,要求1KHz信号响100ms,500Hz信号响200ms,交替进行,P1.7接一开关进行控制,当开关合上响报警信号,当开关断开告警信号停止,编出程序。

电路原理图

硬件连线

(1.P1.0端口用导线通过“音频放大模块”连接到喇叭SOUNDER上;

(2.把P1.7端口用导线连接到“拨动开关”K1端口上;

程序设计内容

(1.信号产生的方法

500Hz信号周期为2ms,信号电平为每1ms变反1次,1KHz的信号周期为1ms,信号电平每500us变反1次;

程序框图

开始

K1按下了吗?

FLAG=0吗?

置200次计数

置200次计数

P1.0输出取反

P1.0输出取反

延时500us

延时1ms

计数值计完了吗?

计数值计完了吗?

FLAG取反

FLAG取反

6.汇编源程序(非中断软延时)

图4.6.2

FLAGSTART:

DV:

NEXT:DV1:

DELY500:LOOP:

BIT00HORG00H

JBP1.7,STARTJNBFLAG,NEXTMOVR2,#200CPLP1.0

LCALLDELY500LCALLDELY500DJNZR2,DVCPLFLAG

MOVR2,#200CPLP1.0

LCALLDELY500DJNZR2,DV1CPLFLAG

SJMPSTARTMOVR7,#250

NOP

DJNZR7,LOOPRET

END

C语言源程序(非中断软延时)

#includeAT89X51.H#includeINTRINS.H

bitflag;

unsignedcharcount;

voiddely500(void)

{

unsignedchari;for(i=250;i0;i--)

{

_nop_();

}

}

voidmain(void)

{

while(1)

{

if(P1_7==0)

{

for(count=200;count0;count--)

{

P1_0=~P1_0;

dely500();

}

for(count=200;count0;count--)

{

P1_0=~P1_0;

dely500();dely500();

}

}

}

}

汇编源程序(计数方式采用中断方式)

ORG0000HLJMPMAINORG0003HLJMPINT0PORG0013HLJPMINT1P

MAIN:MOVSP,#60H

SETBIT0SETBIT1SETBIE0SETBIE1SETBEAMOVR0,#00H

LOOP:MOVP1,R0

JMPLOOP

INT0P:INCR0

RETIINT1P:DECR0

RETIEND

实验要求

学会C51和ASM51两种编程工具。并尝试采用定时器实现定时。

实验8 交流蜂鸣器演奏简单乐曲

实验目的

学习蜂鸣器的基础知识

掌握用I/O驱动中等电流负载的正确方法

学习如何用74HC573扩展简单的并行输出端口

进一步掌握如下基础知识:定时器、中断、I/O扩展电流驱动、蜂鸣器

学习如何编写简单的乐曲程序

实验原理

蜂鸣器原理

蜂鸣器是常见的电子讯响器件,与扬声器相比,明显优势是体积很小,但缺点是低频响应很差,一般不能很好地产生200Hz以下的低频声音。按制造工艺,蜂鸣器可分为电磁式、压电式等。按功能,蜂鸣器分为有源和无源两大类,也称做直流蜂鸣器和交流蜂鸣器。对直流蜂鸣器,只要加上正向电源(可能需要限流电阻)就能发出一定频率的响声,操作简单,但是只有响与不响两种状态。而交流蜂鸣器需要输入有一定驱动能力的交流信号才能发声,发声频率即交流信号的频率,因此能够发出各种不同音调的响声,可用来演奏简单乐曲。

蜂鸣器在正常工作时,一般需要数十毫安的驱动电流,这大大超过了8051的I/O承受能力。对这种中等电流负载的驱动方法,一般可采用晶体管。图4.21是蜂鸣器的典型驱动电路。

简单乐曲原理

假如您是一名电子产品研发工程师,如果能够在您设计的产品里加入演奏乐曲的功能,则会让消费者耳目一新,增加一个很好的卖点。利用蜂鸣器演奏简单的乐曲,具有结构简单、体积小、成本低等优势,软件处理起来也不是很复杂。

图4.24一段简单的乐谱

编写简单的乐曲程序,需要懂得一些简单的乐理知识。由于篇幅所限,这里不做详细讲解,如果有兴趣,请参考相关书籍或网上资料。

请看图4.24所示的一段简单乐谱。一首乐曲可以看成是由一个个基本的

文档评论(0)

hao187 + 关注
官方认证
内容提供者

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

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地湖北
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档