1. 51單片機聲音報警SPEAKER
R3 10K去掉,R2低於1K,硬體就這些問題,
程序上,delay函數太短了,51上,燒進去跑,人根本感覺不出來。裡面加一級循壞,for(j=0;j<256;j++);這樣就沒什麼問題了
2. 如何用單片機實現防空警報音
需要找到防空警報的頻率變化范圍,就可以實現。
下面給一個蜂鳴器模擬消防車報警聲;
*****************************************************************************/
#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;
}
/*********************************************************/
3. 51單片機控制語音晶元進行播報怎麼做,另外PC機通過無線給單片機傳輸命令
提問不明確。語音晶元型號很多,大多數都可以處理多段語音信息,所以,原理上都可以被51去控制。因為語音晶元,實際是語音存儲晶元,所以每個信息段都必須有一個地址碼,如果你想播放哪段語音,就用51去調用這個地址,就能實現語音播放。
第二部分問題:PC通過什麼制式的無線信號給單片機傳輸命令,這個需要說清楚。無線信號類型也很多的。
4. 單片機設定時間報警怎麼處理
我冬天漏腳
關注
單片機定時報警C語明族言程序,單片機控制的簡易定時報警器電路設計( - 控制/MCU - 電子發燒友網... 轉載
2021-05-17 12:29:32
我冬天漏腳
碼齡5年
關注
單片機控制的簡易定時報警器電路設計(含電路圖和程序)
設計一個單片機控制的簡易定時報警器。要求根據設定的初始值(1-59秒)進行倒計時,當計時到0時數碼管閃爍「00」(以1Hz閃爍),按鍵功能如下:
(1)設定鍵:在倒計時模式時,按下此鍵後停止倒計時,進入設置狀態;如果已經處於設置狀態則此鍵無效。
(2)增一鍵:在設置狀態時,每按一次遞增鍵,初始值的數字增1。
(3)遞一鍵:在設置狀態時,每按一次遞減激殲弊鍵,初始值的數字減1。
(4)確認鍵:在設置狀態時,按下此鍵後,單片機按照新的初始值進行倒計時及顯示倒計時的數改搭字。如果已經處於計時狀態則此鍵無效。
5. 利用單片機設計實現一個60秒倒計時顯示裝置,並且計時到後發出報警聲音。
#include<reg52.h>
sbitbz=P3^1;
unsignedchara[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xd8,0x80,0x90};
unsignedcharn,time=60;
main()
{
P1=a[0];
P2=a[6];
TMOD=0X01;
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
EA=1;
ET0=1;
TR0=1;
while(1);
}
timer0()interrupt1
{
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
if(time!=0)
{
n++;
if(n==100)
{
n=0;
time--;
P1=a[time%10];
P2=a[time/10];
}
}
elsebz=~bz;
}
6. 51單片機送低電平就報警,想問下報警的原理請仔細點,謝謝了
圖中利用三極體來驅動蜂鳴器,此處PNP三極體9012工作在飽和產、截止狀態,即當其基極為高電平時截止,低電平時飽和。故當51單片機送低電平時Q1飽和導通,LS1得電發聲實現報警。