pc喇叭發聲就是需要控制硬體的聲調和延時,讓其發出對應的聲音,可用來對外界產生測試聲音源。注意:使pc喇叭發聲是繞過音效卡的,也就是說就算計算機上沒有音效卡,該操作也可完成。
(1)新建乙個mfc對話方塊,並且安置七個按鈕,分別表示聲調的7個階,每個按鈕的操作函式如下:
void cspeakerbeepdlg::onone()
void cspeakerbeepdlg::ontwo()
void cspeakerbeepdlg::onthree()
void cspeakerbeepdlg::onfour()
void cspeakerbeepdlg::onfive()
void cspeakerbeepdlg::onsix()
void cspeakerbeepdlg::onseven()
以上按鈕即可實現驅使pc喇叭發出音階的聲音
(2)如果還想利用pc小鍵盤上的數字鍵,快捷的控制pc喇叭發聲。則需要用到處理pretranslatemessage這個訊息處理。在mfc中,pretranslatemessage是虛函式,我們可以過載它來處理鍵盤和滑鼠訊息。該函式表示在訊息處理(translatemessge()和dispatchmessage()等)前所作的操作,如果函式返回值為true,那麼訊息處理即終止,不會呼叫translatemessge()和dispatchmessage()來翻譯和分發訊息給相應的視窗;若返回值為false,才會呼叫翻譯和分發訊息函式。
在類嚮導中新增這個訊息,然後開始該訊息處理。如下:
bool cspeakerbeepdlg::pretranslatemessage(msg* pmsg)
if (pmsg->message==wm_keydown && pmsg->wparam>vk_numpad2)
if (pmsg->message==wm_keydown && pmsg->wparam>vk_numpad3)
if (pmsg->message==wm_keydown && pmsg->wparam>vk_numpad4)
if (pmsg->message==wm_keydown && pmsg->wparam>vk_numpad5)
if (pmsg->message==wm_keydown && pmsg->wparam>vk_numpad6)
if (pmsg->message==wm_keydown && pmsg->wparam>vk_numpad7)
return cdialog::pretranslatemessage(pmsg);
}按不同的數字鍵,即可發出連續的音階聲,數字越大發出的音階聲越完整。
C 控制蜂鳴器發聲
1 beep的報警實現 2 呼叫microsoft.viualbase中的beep 1.先引入命名空間 using microsoft.visualbasic 2.呼叫 interaction.beep 在編譯時注意要引用microsoft.visualbasic.dll程式集,否則編譯不能通過。另...
FPGA 喇叭不同音節控制
fpga乙個引腳控制喇叭發聲 25mhz 專案一 發出乙個單音 嗶嗶 module music clk,speaker input clk output speaker 16位計數 reg 15 0 counter always posedge clk counter counter 1 計數器高位...
Shell命令控制蜂鳴器發聲
1 使用如下命令進行安裝 sudo apt get install beep 2 安裝好後,檢視幫助資訊 beep verbose debug e device device device f n l n r n d n d n s c 其中,verbose或 debug選項開啟除錯資訊輸出功能 e...