如果晶振频率12MHz, 试用定时器编写程序,完成一蜂鸣器响1S,停0.5S 的程序

如果晶振频率12MHz, 试用定时器编写程序,完成一蜂鸣器响1S,停0.5S 的程序,第1张

一次定时50ms,中断20次和10次就 是1S和05s

uchar a=0;

sbit fmq=P1^0;

程序

void main( )

{

TMOD=0X01;

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

EA=1;

ET0=1;

TR0=1;

while(1)

{

fmq=1;

a=20;

while(a!=0);//等待20次中断

fmq=0;

a=10;

while(a!=0);//等待10次中断

}

}

中断程序为:

void timer0( )interrupt 1

{

TH0=(65536-50000)/256;

TL0=(65536-50000)%256;

a--;

}

完整的源程序:

#include<reg52h>

define uint unsigned int

sbit spk=P1^2; //与喇叭相连接的单片机引脚的定义

void delayms(uint); //延时子函数声明

main()

{

uint i=8; //轰鸣的次数

spk=0; //喇叭的初始状态为不响

while(i) //喇叭鸣响控制核心

{

spk=!spk;

delayms(1000); //延时1000毫秒

i--;

}

}

void delayms(uint ms) //延时子函数

{

uint x,y;

for(x=ms;x>0;x--);

for(y=110;y>0;y--);

}

哥们专门给你写的,看的够明白吧

如果是有源蜂鸣器的话很简单,只需要按照对应的电路给出电平(比如PNP驱动的只要给出低电平即可),无源的麻烦一点,需要给一定频率的方波才能发声,增强型51可以直接使用PWM,普通51可以使用定时器模拟PWM进行驱动,网上的例子很多,多看看就行了

你们给问题总是条件不全面!

假设P11控制LED,低电平亮;

P12控制蜂鸣器,低电平响。

sbit p11=p1^1;

sbit p12=p1^2;

if((p11=!p11) && (p11==1))

{

p12=0;

//此处延时50毫秒

p12=1;

}

#include<reg51h>

#define uint unsigned int

#define uchar unsigned char

sbit LED0=P1^0;

sbit Buzzer=P1^1;

void delay_ms(uint xms)//x是多少就是多少ms

{ uint y,z;

for(y=xms;y>0;y--)

for(z=110;z>0;z--);

}

void main()

{

P1=0x00;//这个值的设定参照你的开发板确定,也就是你的发光管与蜂鸣器是高电平工作还是低电平工作

while(1)

{

LED0=1;

Buzzer=1;

delay_ms(500);//延时05s

LED0=0;

Buzzer=0;

delay_ms(500);

}

}

电路图如下:

蜂鸣器发声原理是电流通过电磁线圈,使电磁线圈产生磁场来驱动振动膜发声的,因此需要一定的电流才能驱动它,单片机IO引脚输出的电流较小。

单片机输出的TTL电平基本上驱动不了蜂鸣器,因此需要增加一个电流放大的电路。三极管的作用为驱动,通过三极管放大驱动电流,从而可以让蜂鸣器发出声音。

扩展资料:

有源蜂鸣器和无源蜂鸣器的区别:

这里的“源”不是指电源。而是指震荡源。 也就是说,有源蜂鸣器内部带震荡源,所以只要一通电就会叫。

而无源内部不带震荡源,所以如果用直流信号无法令其鸣叫。必须用2K~5K的方波去驱动它。

有源蜂鸣器往往比无源的贵,就是因为里面多个震荡电路。

无源蜂鸣器的优点是:便宜且声音频率可控,可以做出“多来米发索拉西”的效果。在一些特例中,可以和LED复用一个控制口 有源蜂鸣器的优点是:程序控制方便 。

以上就是关于如果晶振频率12MHz, 试用定时器编写程序,完成一蜂鸣器响1S,停0.5S 的程序全部的内容,包括:如果晶振频率12MHz, 试用定时器编写程序,完成一蜂鸣器响1S,停0.5S 的程序、让单片机的蜂鸣器1秒钟响一次 下面的是自带的程序 看起来有点麻烦 谁帮我用蜂鸣器来实现1秒钟响一次的程序、51单片机蜂鸣器响程序怎么写最简单的。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9310649.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存