当前位置:首页 » 编程软件 » 蜂鸣器编程

蜂鸣器编程

发布时间: 2022-04-25 18:25:56

① 51单片机蜂鸣器程序是什么

51单片机蜂鸣器程序为:

#include"reg52.h"

typedef unsigned char u8;

typedef unsigned int u16;

sbit beep=P1^5;

void delay(u16 i)

{

while(i--);

}

void main()

{

while(1)

{

beep=~beep;

delay(1000);//控制音调频率

beep=~beep;/控制声音大小

delay(10);

}

}

(1)蜂鸣器编程扩展阅读:

BUZZER蜂鸣器的分类:

1、按其驱动方式的原理分,可分为:有源蜂鸣器(内含驱动线路,也叫自激式蜂鸣器)和无源蜂鸣器(外部驱动,也叫他激式蜂鸣器)。

2、按构造方式的不同,可分为:电磁式蜂鸣器和压电式蜂鸣器。

3、按封装的不同,可分为:DIP BUZZER(插针蜂鸣器)和SMD BUZZER(贴片式蜂鸣器)。

4、按电流的不同,可分为:直流蜂鸣器和交流蜂鸣器,其中,以直流最为常见压电式蜂鸣器,用的是压电材料,即当受到外力导致压电材料发生形变时压电材料会产生电荷。同样,当通电时压电材料会发生形变。

电磁式蜂鸣器,主要是利用通电导体会产生磁场的特性,用一个固定的永久磁铁与通电导体产生磁力推动固定在线圈上的鼓膜。

由于两种蜂鸣器发音原理不同,压电式结构简单耐用但音调单一音色差,适用于报警器等设备。而电磁式由于音色好,所以多用于语音、音乐等设备。

② S7-400程序设置蜂鸣器用什么指令

S7-400程序设置蜂鸣器用延时子程序。
蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、电子玩具、定时器等电子产品中作为发声器件。蜂鸣器分为有源蜂鸣器和无源蜂鸣器两种,在电路中用字母“H”或“HA”(旧标准用“FM”、“ZZG”、“LB”、“JD”等)表示。那么,怎么区分有源蜂鸣器和无源蜂鸣器呢?有源蜂鸣器内部带震荡源,所以只要一通电就会叫;而无源内部不带震荡源,所以如果用直流信号无法令其鸣叫。必须用2K-5K的方波去驱动它,有源蜂鸣器往往比无源的贵,就是因为里面多个震荡电路。
无源蜂鸣器的优点是:
1. 便宜;
2. 声音频率可控,可以做出“多来米发索拉西”的效果;
3. 在一些特例中,可以和LED复用一个控制口

③ 控制无源蜂鸣器响一声的编程关键是什么

摘要 不是BEEP=1,无源蜂鸣器就响,BEEP=0,无源蜂鸣器就不响,

④ 单片机用C语言让蜂鸣器发出两种声调,怎么编程

不会修改程序,但是可以送你一段程序,如果有心就看看吧;
//以下程序运行于STC12C**单片机
// BUZ为蜂鸣器输出I/O口定义名称
void Delay_1us(uint aa) //1T单片机/12MHz的n个us用于蜂鸣器
{
while (aa--)
{
_nop_();
_nop_();
}
}
/*----------------------------
响一声短音
----------------------------*/
void beep(void)
{
uint a;//定义变量用于发声的长度设置
for(a=300;a>0;a--)//第一个声音的长度

{
BUZ = ~BUZ;//产生音频
Delay_1us(100);//音调设置,延时调整赋值量可以调节音调
}
BUZ = 1;//音乐结束后扬声器关闭
}

⑤ 51单片机蜂鸣器程序

#include<reg51.h>
#include<intrins.h>
#defineucharunsignedchar
ucharpwm,ctl=5;
sbitfmq=P1^0;
bitflag;
voiddelay(uchara)
{
uchari;
while(a--)for(i=0;i<120;i++);
}
voidt0isr()interrupt1
{
pwm++;
if(pwm<=ctl)P0=0xff;
elseP0=0x00;
if(pwm==100)
{
pwm=0;
ctl++;
}
if(ctl==100)flag=1;
}
main()
{
uchari,led;
TMOD=0x02;
TH0=236;
TL0=236;
ET0=1;
EA=1;
while(1)
{
led=0xfe;
for(i=0;i<8;i++)
{
P0=led;
led=led<<1;
delay(200);
}
led=0xff;
delay(200);
led=0x7f;
for(i=0;i<8;i++)
{
P0=led;
led=led>>1;
delay(200);
}
TR0=1;
flag=1;
while(flag);
TR0=0;
}
}

⑥ 单片机无源蜂鸣器的程序,请求解释下这个程序从第一个for开始的意思!

#include//包含51的头文件
sbit BEEP=P1^5;//sbit是位定义的意思,即使用beep来代表单片P1端口的第5个IO口

void beep()//蜂鸣器子函数,方便调用,
{
unsigned char i , j;//设置无符号字符型变量i;和J
for (i=0;i<100;i++)//定义一个for循环,每次完整地执行for里面的所有语句,i就自增1,直到i=10
{ //当i=100是,for循环就结束

BEEP=!BEEP; //BEEP取反//蜂鸣器发生原理,进行电平取反,原来为高电平,下一次执行就变成低电平
for (j = 0 ; j<200 ; j++); //需要产生方波这个是延时程序

}
BEEP=1; //关闭蜂鸣器蜂鸣器电平不发生变化的时候,蜂鸣器无法发声。
}

⑦ C51 单片机控制蜂鸣器程序

把2个蜂鸣器的频率各写成一个函数。
然后主函数里这样写
if (key1 == 0)
"执行1蜂鸣器频率"

else if (key2 == 0)
"执行2蜂鸣器频率"

⑧ 关于单片机编程控制蜂鸣器的问题。想问从第几行程序蜂鸣器开始响,又是怎么控制它的频率变化,求大神解析

看你题里的意思应该是用单片机的P3.4口连接一个三极管,然后用三级管的开关作用驱动蜂鸣器发声,从第12行开始,蜂鸣器开始响,然后经过延时,到第14行,响声停止。想要控制蜂鸣器响的频率,只要改变第13行和15行延时函数括号里面的数就可以了,设1为250微秒、设2为500微秒依次类推就可以了

⑨ 89c52单片机蜂鸣器程序编程

简易蜂鸣器程序:
#include<reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit P36=P3^6;//我的系统板蜂鸣器口定义
sbit k1=P1^4; //按钮1
sbit k2=P1^5; //按钮2

void Delay(uint num)//延时函数
{uchar i,j;
for(i=0;i<255;i--)
{for(j=0;j>0;j++)}
}

main()
{
while(1)
{

if(k1==0)
{P36=0;//蜂鸣器响
Delay();
P36=1;//蜂鸣器停
Dalay();
key_time();
}

}

}

热点内容
oracle存储过程报错pls103 发布:2025-09-02 20:09:46 浏览:943
ftpservu教程 发布:2025-09-02 20:06:25 浏览:869
请检查服务器地址是否可用 发布:2025-09-02 19:27:10 浏览:746
什么播放器可以缓存 发布:2025-09-02 19:25:00 浏览:651
如何上微信找到微信密码 发布:2025-09-02 19:16:58 浏览:43
iphone发件服务器怎么填写 发布:2025-09-02 18:59:14 浏览:219
c对称算法 发布:2025-09-02 18:57:50 浏览:766
mysql数据存储 发布:2025-09-02 18:47:23 浏览:617
android打印不出来 发布:2025-09-02 18:43:09 浏览:998
联盟服务器怎么升级 发布:2025-09-02 18:37:56 浏览:193