Ⅰ 怎樣用51單片機檢測聲音
首先要有感測器,將聲音轉為電信號,可以使用駐極體話筒,後面再加上音頻放大電路,放大器輸出接單片機的ADC(模數轉換器)就可以了。單片機就可以通過編寫相應的程序對聲音識別處理,不過要做復雜的運算處理,需要使用DSP晶元,單片機的運算能力很有限。
Ⅱ 利用單片機控制,哪種晶元可以測量聲音大小
測量聲音的大小不是用那種晶元
聲音的大小可以通過駐極體傳聲器等,俗稱咪頭,把聲音信號轉成電信號,
通過放大電路把電信號放大,然後通過AD采樣(單片機有的自帶AD轉換),把模擬
電信號轉成數字量,最後通過計算就可以得出聲音的大小值 比如40dB等!
Ⅲ 51單片機聲控燈,怎麼改下列代碼使在分貝超過一定值的時候LED燈亮
假設你有XPT2046的源程序,且上面這段代碼可以正常採集AD
則只需修改main函數
sbit led=;//引腳定義
#define VALUE //某個經驗值
void main(void)
{
uint temp,count;
while(1)
{
if(count==50)
{
count=0;
temp = Read_AD_Data(0xE4); // AIN3 外部輸入
if(temp>VALUE)led=0;//判斷大於某個分貝則led亮,否則滅
else led=1;
}
count++;
DisplayData[0]=DIG_CODE[0];
DisplayData[1]=DIG_CODE[0];
DisplayData[2]=DIG_CODE[0];
DisplayData[3]=DIG_CODE[0];
DisplayData[4]=DIG_CODE[temp%10000/1000];
DisplayData[5]=DIG_CODE[temp%1000/100];
DisplayData[6]=DIG_CODE[temp%100/10];
DisplayData[7]=DIG_CODE[temp%10/1];
DigDisplay();
}
}