c語言beep函數 為什么執(zhí)行Beep()函數時聽不到聲音???
為什么執(zhí)行Beep()函數時聽不到聲音???嗶嗶聲功能確實發(fā)送到嗶嗶聲設備,該設備物理上位于主板上,但是windows通過Hal接管了計算機的所有設備,并且該設備也位于主板上嗶嗶聲.sys在司機的控制下
為什么執(zhí)行Beep()函數時聽不到聲音啊?
嗶嗶聲功能確實發(fā)送到嗶嗶聲設備,該設備物理上位于主板上,但是windows通過Hal接管了計算機的所有設備,并且該設備也位于主板上嗶嗶聲.sys在司機的控制下。未安裝聲卡驅動程序或windows音頻服務未啟動時,嗶嗶聲.sys使用主板的蜂鳴器發(fā)聲,否則,重定向到聲音服務的警告信息設置的聲音,并通過聲卡發(fā)聲
是聲音功能。跑步后,通過主板揚聲器演唱旋律。您可以嘗試以下操作:
TC try:
]!Kbhit()){/*無鍵盤命中,播放聲音*/
對于(freq=200l freq
]聲音(freq)/*播放頻率聲音*/
延遲(200)/*延遲200ms*/
!]隱藏
主()
{
嗶嗶(523500)
嗶嗶(587500)
嗶嗶(659500)
嗶嗶(698500)
嗶嗶(784500)
睡眠(500)
嗶嗶(523500)
嗶嗶嗶(587500)
嗶嗶嗶(659500)
嗶嗶嗶(698500)
嗶嗶嗶嗶(784500)
}-
WinTC測試。
c語言中,beep是個什么函數?
Sbit beep=P1^5sbit delay=P1^4
MCU有硬件接口,其中蜂鳴器是P1^5接口,延遲是P1^4接口
然后Sbit就可以在程序中使用beep了。否則,程序中的所有嗶嗶聲都應更改為P1^5
所有繼電器都應更改為P1^4。這不僅是編寫程序的麻煩,而且不容易理解。誰知道你的P1^5是什么?但如果你用嗶嗶聲,人們一眼就能看出那是個蜂鳴器。
在這里,您必須注意beep不是程序中的beep()函數。它們是不同的,因為C語言是區(qū)分大小寫的。
事實上,上面兩個和你的程序一樣
sbit K1=P0^0 sbit K2=P0^1
sbit K3=P0^2 sbit K4=P0^3
sbit K5=P0^4 sbit K6=P0^5
這是幾個鍵映射的接口,它們的原理是一樣的。
嗶聲=!嘟嘟聲相當于收回。啟動時,嘟嘟聲=1不響。進入循環(huán)后,由于1的反比為0,嘟嘟聲=0,蜂鳴器鳴響。同時
for(J=0,J
unop()
上述循環(huán)實際上消耗了MCU發(fā)出長時間蜂鳴器的時間。如果不加上這個循環(huán),蜂鳴器只會“嘀嗒”一聲停下來,圖像上的響應就是一個“點”。加上循環(huán),因為MCU執(zhí)行循環(huán)需要時間,所以嘟嘟聲會響很長時間,圖像上的響應是“行”。
然后外循環(huán)(變量I的循環(huán))進入第二次。因為上次嘟嘟=0,0的倒數是1,此時嘟嘟=1,蜂鳴器不響。然后它也進入了內環(huán),消耗了一些時間,使它產生了一條“線”。這時,隊伍一片寂靜
!如此反復到外循環(huán)結束
這會產生方波!有什么不清楚的補充