下載手機(jī)汽配人

51單片機(jī)如何控制蜂鳴器發(fā)出不同聲調(diào)

如題,蜂鳴器應(yīng)該是單一聲調(diào)的,但是我單片機(jī)實(shí)驗(yàn)板上的光碟自帶程序可以控制單片機(jī)唱歌,不過(guò)是匯編的,我看不懂,我是用C寫程序我開(kāi)始是想利用延時(shí)控制蜂鳴器每秒鐘發(fā)生次數(shù),這樣就控制了頻率 但是不能達(dá)到預(yù)期效果,我想問(wèn)問(wèn),要控制蜂鳴器發(fā)出不同聲調(diào)的思路是什么呢? 哪位大哥告訴一下,萬(wàn)分感謝~~~~~~·
問(wèn) 提問(wèn)者:網(wǎng)友 2017-08-25
最佳回答
我這里有現(xiàn)成的程序,把分給我,留下信箱,我就給你發(fā)過(guò)去,呵呵。我利用軟件定時(shí)和中斷方式都有,可以演奏音樂(lè),不過(guò)蜂鳴器演奏的實(shí)在夠難聽(tīng)??磥?lái)樓主對(duì)程序不感興趣,我還是告訴你吧,你定時(shí)必須知道準(zhǔn)確的定時(shí)時(shí)間,音樂(lè)中DO RE MI-----SI都是有一定的頻率也就是Hz,都如下:c1:262Hz--thtl=0xf8b3d1:294Hz--0xf972e1:330Hz--0xfa14f1:349Hz--0xfa66g1:392Hz--0xfb03a1:440Hz--0xfb8fb1:494Hz--0xfc0b前面是HZ,后面是我用硬件定時(shí)得到的TH和TL的值。比如你想發(fā)C1的音,先用軟件定一個(gè)262*2Hz的延時(shí)反復(fù)調(diào)用,在一個(gè)周期內(nèi)使buzzer響,再接著一個(gè)周期使buzzer不響,如此反復(fù)就得到了262Hz的聲音,也就類似發(fā)出了C1的聲音。反正是夠難聽(tīng)的。
回答者:網(wǎng)友
產(chǎn)品精選
搜索問(wèn)答
還沒(méi)有汽配人賬號(hào)?立即注冊(cè)

我要提問(wèn)

汽配限時(shí)折扣

本頁(yè)是網(wǎng)友提供的關(guān)于“51單片機(jī)如何控制蜂鳴器發(fā)出不同聲調(diào)”的解答,僅供您參考,汽配人網(wǎng)不保證該解答的準(zhǔn)確性。