『壹』 關於單片機驅動蜂鳴器發出滴滴的聲音的程序怎麼寫
#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);
}
}
}
『貳』 單片機與聲音接收
使用普通的麥克風就可以捕捉聲音了,然後如果你只要某一頻率范圍內的信號,就用數字濾波器或者效果很好的模擬濾波器進行信號濾波處理,就能得到你需要的了。
『叄』 怎樣使單片機發出聲音
...這恐怕有難度``
單單讓他發出聲音那很簡單``
只要一個51片+一個喇叭就可以
發音原理就是利用聲音的頻率``就是說用51控制一個腳發出一個20~20KHZ的方波就可以讓喇叭產生同樣頻率的震動``從而發出聲音.(人耳能聽到的頻率范圍是20~20KHZ).
但要發出兩段錄制好的聲音,這就很有難度了.除非你能把這段聲音轉化成相應的機器碼`讓CPU直接處理.
『肆』 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
『伍』 單片機開始計時聲音怎麼調
單片機開始計時聲音怎麼調
八通道計時器抖藍聲音怎麼調,開機狀態,在所有定時單元均處於停止(待機狀態)時,按住編程健不放,3秒鍾以上,喇叭響罩孝衫一聲,定時器進入編程(設定)狀態,此時1數碼顯示屏的秒單元閃爍。
此時可按本組的數字鍵,選擇調整分鍾(此時分鍾單元閃爍),再次按本組的數字鍵,又轉為調整秒慎吵鍾數值;通過使用加▲減▼鍵調整時間;此時每按一次鍵,喇叭響一聲;把定時器調整到需要的時間後,再按一下編程鍵,即可進入2數碼顯示屏的時間設定;重復2至4步,完成全部8組數碼顯示的設定後,定時器退出編程狀態,轉為待機狀態。
抖籃提醒設定開機狀態,在所有定時單元均處於停止(待機狀態)時,按住抖籃編程健不放,3秒鍾以上,喇叭響一聲,定時器進入抖籃編程(設定)狀態,此時1﹟數碼顯示屏的秒單元閃爍。
此時可按本組的數字鍵,選擇調整分鍾(此時分鍾單元閃爍),再次按本組的數字鍵,又轉為調整秒鍾數值;通過使用加▲減▼鍵調整時間;此時按鍵,喇叭不響,表示編程的是抖籃定時器。
把抖籃定時器調整到需要的時間後,再按一下抖籃編程鍵,即可進入2﹟數碼顯示屏的時間設定;重復2至4步,完成全部8組數碼顯示屏的設定後,抖籃定時器退出狀態,轉為待機狀態。定時器的使物腔用和維護。
『陸』 請問下 怎麼用單片機控制鳳鳴器發出滴滴和滴答的聲音 可以說下程序的主要思路嗎
可以用定時器分別預置兩個初值,以獲得兩個頻率的聲音對應「嘀」「嗒」聲。再開一個定時器做節拍。
【1】做按鍵調整初值,頻率輸出接蜂鳴器,調試後記錄兩個頻點值。
【2】另開一定時器,控制蜂鳴器開關以及兩個頻點的切換以產生相應的聲音。