當前位置:首頁 » 編程語言 » C語言關閉蜂鳴器的代碼
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

C語言關閉蜂鳴器的代碼

發布時間: 2023-08-15 17:20:54

『壹』 蜂鳴器每一秒響一次,響十秒後關閉,怎麼做,c語言

每隔一秒響一次, 響多久沒有說

一般都是響一秒 停一秒。 這樣就是20秒後關閉了。

可以寫作

intcnt=0;
while(cnt++<10)
{
BEEP=1;
delay_ms(1000);
BEEP=0;
delay_ms(1000);
}

『貳』 如何用c語言實現單片機蜂鳴器播放的音樂的暫停 就是通過按鍵來實現

if(key==0)
{
//關閉定時器的代碼,可以停止音樂
}

『叄』 用C語言編寫,兩個按鈕控制蜂鳴器工作。按鈕1按下,蜂鳴器以500Hz的頻率工作。按鈕2按下,蜂鳴器停止工作

#include"reg52.h"

#defineucharunsignedchar

#defineuintunsignedint

sbitBELL=P1^0;//定義蜂鳴器

sbitkey1=P1^1;//定義按鍵

sbitkey2=P1^2;//定義按鍵

uintnum;

/*1ms廷時*/

voiddelay_ms(uintz)

{

uinti,j;

for(i=0;i<z;i++)

for(j=0;j<110;j++);

}

/*定時器初始化*/

voidinit_timer0()

{

TMOD=0x01;

TH0=(65535-2000)/256;

TL0=(65535-2000)%256;

EA=0;

ET0=1;

TR0=1;

}

voidmain()

{

BELL=0;

init_timer0();

while(1)

{

if(key1==0)

{

delay_ms(10);//延時消抖

if(key1==0) //再次判斷按鍵是否真的被按下

{

while(key1==0);//等待釋放按鍵

EA=1; //開啟總中斷

}

}

if(key2==0)

{

delay_ms(10);//延時消抖

if(key2==0) //再次判斷按鍵是否真的被按下

{

while(key2==0); //等待釋放按鍵

EA=0; //關閉總中斷

BELL=0; //關閉蜂鳴器

}

}

}

}

voidtimer0()interrupt1

{

TH0=(65535-2000)/256;

TL0=(65535-2000)%256;//中斷計時2ms(500Hz),之所以用中斷是因為定時比較准確想改延時就把裡面的2000改掉,這個數除以1000得的數就是多少毫秒

num++;

if(num==1) //讓蜂鳴器工以500Hz頻率工作

{

num=0;

BELL=~BELL;

}

}