『壹』 c51單片機: 利用定時器+蜂鳴器實現定時報警功能,30秒內,每一秒響一下,30秒時間到了,蜂鳴器長鳴 求程序
參考程序:
#include <reg52.h>
sbit Beep = P3^0;
unsigned char t1s,t50ms;
unsigned char flag30s = 0,flag1s = 0;
void delayms(unsigned int xms)
{
unsigned int i,j;
for(i=0; i<xms; i++)
for(j=0; j<110; j++);
}
void Alarm(void)
{
Beep = 0;
delayms(200);
Beep = 1;
}
void main()
{
TMOD = 0x01;
TH0 = 0x3C;
TL0 = 0xB0;//50ms中斷一次
EA = 1;
ET0 = 1;
TR0 = 1;
while(1)
{
if(flag30s)Beep = 0;//30s到蜂鳴器一直響
if(flag1s)//1s到,蜂鳴器響一下
{
flag1s = 0;
Alarm();
}
}
}
void TIM0(void) interrupt 1
{
TH0 = 0x3C;
TL0 = 0xB0;
t50ms++;
if(t50ms == 20)//1s
{
t50ms = 0;
t1s++;
flag1s = 1;
if(t1s == 30)//30s
{
TR0 = 0;
flag30s = 1;
}
}
}
『貳』 關於單片機驅動蜂鳴器發出滴滴的聲音的程序怎麼寫
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit SPK=P1^0;
sbit K1=P1^7;
//發聲函數,注意這里是用揚聲器,不能用普通的蜂鳴器
void Alarm(uchar t)
{
uchari,j;
for(i=0;i<200;i++)
{
SPK=~SPK;
for(j=0;j<t;j++); //由參數t行成不同的頻率產生不同的聲音
}
}
voidmain()
{
SPK=0;
while(1)
{
if(K1==1)
{
Alarm(90);
Alarm(120);
}
}
}
『叄』 如何通過匯編語言寫一個能讓蜂鳴器響一秒
;假設P2.5控制蜂鳴器,低電平響。
;啟動入口
ORG 0000H ;復位啟動
LJMP START ;
ORG 000BH ;T0中斷
LJMP T0INT ;
ORG 0100H ;
LJMP START ;
;
;主控程序
START: MOV SP,#80H ;初始堆棧值
MOV TMOD,#01H ;定時器0工作於方式1
MOV TH0,#03CH ;定時器0定時時間=50mS
MOV TL0,#0B0H ;
CLR P2.5 ;蜂鳴器響
MOV YSJS,#200 ;200*50mS=10000mS
SETB TR0 ;定時器0啟動,開始定時
JMP $ ;死循環
;
;定時器0中斷服務程序
T0INT: DJNZ YSJS,QT0 ;不到1秒跳轉
SETB P2.5 ;關閉蜂鳴器
CLR TR0 ;
;
QT0: MOV TH0,#03CH ;定時器0定時時間=50mS
MOV TL0,#0B0H ;
RETI ;
;
YSJS EQU 30H ;
END ;
『肆』 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);
}
}
(4)蜂鳴器響程序擴展閱讀:
BUZZER蜂鳴器的分類:
1、按其驅動方式的原理分,可分為:有源蜂鳴器(內含驅動線路,也叫自激式蜂鳴器)和無源蜂鳴器(外部驅動,也叫他激式蜂鳴器)。
2、按構造方式的不同,可分為:電磁式蜂鳴器和壓電式蜂鳴器。
3、按封裝的不同,可分為:DIP BUZZER(插針蜂鳴器)和SMD BUZZER(貼片式蜂鳴器)。
4、按電流的不同,可分為:直流蜂鳴器和交流蜂鳴器,其中,以直流最為常見壓電式蜂鳴器,用的是壓電材料,即當受到外力導致壓電材料發生形變時壓電材料會產生電荷。同樣,當通電時壓電材料會發生形變。
電磁式蜂鳴器,主要是利用通電導體會產生磁場的特性,用一個固定的永久磁鐵與通電導體產生磁力推動固定在線圈上的鼓膜。
由於兩種蜂鳴器發音原理不同,壓電式結構簡單耐用但音調單一音色差,適用於報警器等設備。而電磁式由於音色好,所以多用於語音、音樂等設備。