導航:首頁 > 操作系統 > 怎麼把報警聲寫入單片機里

怎麼把報警聲寫入單片機里

發布時間:2023-11-18 03:45:23

① 如何用單片機實現防空警報音

需要找到防空警報的頻率變化范圍,就可以實現。
下面給一個蜂鳴器模擬消防車報警聲;
*****************************************************************************/
#include <reg51.h>
#include <intrins.h>

#define uchar unsigned char
#define uint unsigned int

uchar Count;

sbit Key1 = P3^2 ;
sbit Key3 = P3^3 ;
sbit BEEP = P3^1 ; //蜂鳴器
sbit p34 = P3^4 ;

/********************************************************
延時函數
*********************************************************/
void delay(void)
{
uint k;
for(k=1700;k>0;k--);
}

/********************************************************
鍵控制函數
*********************************************************/
void key_control()
{

if(Key1==0)
{
while(Key1==0);
TR0=1;
}
if(Key3==0)
{
while(Key3==0);
TR0=0;
}
}
/********************************************************
主函數
*********************************************************/
main()
{
p34=0;
P0=0x0;
P1=0xff;
P2=0xff;
Count=0x00;
BEEP=1;

TMOD=0x01;
TH0=0x00;
TL0=0xff;
EA=1; ET0=1;

while(1)
{
do
{
Count++;
key_control();
delay();
}while(Count!=0xff);

do
{
Count--;
key_control();
delay();
}while(Count!=0x00);
}
}

/*********************************************************
Time0中斷函數
**********************************************************/
void Time0(void) interrupt 1 using 0
{
TH0=0xfe;
TL0=Count;
BEEP=~BEEP;
}

/*********************************************************/

② 51單片機,怎麼用匯編語言編程一個程序。實現4個按鍵控制4種報警聲音(110、119、120、防空警報聲)。

沒有四種聲音的頻率庫,其他的給你做個示範吧:
ORG 0000H
LJMP MAIN
ORG 0030H
MAIN:
MOV SP,#5FH
MOV TMOD,#11H
SETB EA
SETB ET0
SETB ET1
LOOP:
LCALL KEYSCAN
MOV A,R2
JNZ LP1
MOV DPTR,#TAB110
SJMP LPRUN
LP1:
DEC A
JNZ LP2
MOV DPTR,#TAB119
SJMP LPRUN
LP2:
DEC A
JNZ LP3
MOV DPTR,#TAB120
SJMP LPRUN
LP3:
DEC A
JNZ LP4
MOV DPTR,#TABBOMB
SJMP LPRUN
LP4:
LJMP LOOP
LPRUN:
MOVX A,@DPTR
MOV TL0,A
INC DPTR
MOVX A,@DPTR
MOV TH0,A
............;時長控制也可以做到表裡,計算後賦值給T1
LJMP LOOP
END

③ 開關控制報警器如何用單片機實現

開關控制報警器如何用單片機實現

單片機C語言程序設計:開關控制報警器

/*名稱:開關控制報警器

說明:用K1開關控制報警器,程序控制P1.0輸出兩種不同頻率的聲音,模擬很逼真的報警效果

*/

#include

#defineucharunsignedchar

#defineuintunsignedint

sbitSPK=P1^0;

sbitK1=P1^7;

//發聲函數

voidAlarm(uchart)

{

uchari,j;

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

{

SPK=~SPK;

for(j=0;j//由參數t行成不同的頻率

}

voidmain()

{

SPK=0;

while(1)

{

if(K1==1)

{

Alarm(90);

Alarm(120);

}

}

}

④ C51單片機有警報聲又可以閃燈的程序怎麼寫

給你做個示範吧:
#include<reg51.h>
sbit ALARMSND=P1^0;
sbit ALARMLED=P1^1;
sbit KEY=P1^2;
void t0_isr() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
ALARMLED=!ALARMLED;
}
main()
{
TMOD=0x01;
ET0=1;
EA=1;
while(1)
{
if(KEY==0)
{
delay(10);
if(KEY==0)
{
ALARMSND=!ALARMSND; //按鍵切換報警
if(ALARMSND==1)TR0=1; //如果報警聲響,則啟動定時器,開始閃爍
else TR0=0; //不響則關閃爍
}
}
}
}

閱讀全文

與怎麼把報警聲寫入單片機里相關的資料

熱點內容
反編譯移動盒子 瀏覽:394
失落記憶安卓怎麼下載 瀏覽:839
美團app怎麼找不到我的評價 瀏覽:730
cadsdi命令 瀏覽:688
qt少裝一個編譯器 瀏覽:416
怎麼刪除游戲文件夾修改畫質 瀏覽:736
給程序員加油 瀏覽:599
電腦怎麼找外部命令 瀏覽:292
app按摩怎麼樣 瀏覽:561
c代碼轉java 瀏覽:86
Python計算趨勢指標 瀏覽:342
程序員小伙是什麼梗 瀏覽:568
淮安兼職程序員條件 瀏覽:72
崽崽app怎麼取消屏蔽的人 瀏覽:158
程序員的內功訓練 瀏覽:33
極限編程敏捷開發 瀏覽:747
雲網站伺服器購買費用 瀏覽:481
如何查看電腦的解壓路徑 瀏覽:313
ai換裝特效app怎麼退 瀏覽:334
如何獲取伺服器管理員賬戶 瀏覽:906