c語(yǔ)言beep音樂(lè)代碼 c語(yǔ)言中,beep是個(gè)什么函數(shù)?
c語(yǔ)言中,beep是個(gè)什么函數(shù)?這是一個(gè)語(yǔ)音功能。跑步后,你可以通過(guò)主板揚(yáng)聲器演唱旋律。你可以試試以下的方法:Kbhit()){/*在沒(méi)有鍵盤敲擊的情況下,播放聲音*/for(freq=200lfre
c語(yǔ)言中,beep是個(gè)什么函數(shù)?
這是一個(gè)語(yǔ)音功能。跑步后,你可以通過(guò)主板揚(yáng)聲器演唱旋律。你可以試試以下的方法:
Kbhit()){/*在沒(méi)有鍵盤敲擊的情況下,播放聲音*/
for(freq=200lfreq
sound(freq)/*播放聲音*/
delay(200)/*delay本研究的結(jié)果如下:在這種情況下,我們會(huì)發(fā)現(xiàn)大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份大部份698500的大部分)
嗶嗶聲(784500)]}其中兩個(gè)在WinTC中進(jìn)行了測(cè)試。
如何用c語(yǔ)言編出能用鍵盤敲出音樂(lè)的的程序?
接下來(lái),用嘟嘟聲功能發(fā)音,按1、2、3、4、5、6、7、8對(duì)應(yīng)多米飯、少頭發(fā)。。。
按環(huán)繞鍵完成。0.3秒一聲,不要按得太快。
#include<windows.h>
#include<stdio.h>
#include<stdlib.h>
void main()
{
char p
int i=0
printf(“input 12345678..n”)
while(i< 50){
p=getch()
if(p=“r”)break
switch(p-“0”){
case 1:Beep(523300)break
case 2:Beep(587300)break
case 3:嗶聲(659300)中斷
案例4:嗶聲(698300)中斷
案例5:嗶聲(784300)中斷
案例6:嗶聲(880300)中斷
案例7:嗶聲(980300)中斷
案例8:嗶聲(1060300)中斷
默認(rèn)值:中斷
}]I
}]exit(0)
}
sbit Beep=P1^5sbit delay=P1^4這兩句話當(dāng)然有用有硬件接口,其中蜂鳴器是P1^5接口,延遲是P1^4接口
那么sbit就可以在程序中使用beep了。否則,程序中的所有嗶嗶聲都應(yīng)更改為P1^5
所有繼電器都應(yīng)更改為P1^4。這不僅是編寫程序的麻煩,而且不容易理解。誰(shuí)知道你的P1^5是什么?但如果你用嗶嗶聲,人們一眼就能看出那是個(gè)蜂鳴器。
在這里,您必須注意beep不是程序中的beep()函數(shù)。它們是不同的,因?yàn)镃語(yǔ)言是區(qū)分大小寫的。
事實(shí)上,上面兩個(gè)和你的程序一樣
sbit K1=P0^0 sbit K2=P0^1
sbit K3=P0^2 sbit K4=P0^3
sbit K5=P0^4 sbit K6=P0^5
這是幾個(gè)鍵映射的接口,它們的原理是一樣的。
嗶聲=!嘟嘟聲相當(dāng)于收回。啟動(dòng)時(shí),嘟嘟聲=1不響。進(jìn)入循環(huán)后,由于1的反比為0,嘟嘟聲=0,蜂鳴器鳴響。同時(shí)
for(J=0,J
unop()
上述循環(huán)實(shí)際上消耗了MCU發(fā)出長(zhǎng)時(shí)間蜂鳴器的時(shí)間。如果不加上這個(gè)循環(huán),蜂鳴器只會(huì)“嘀嗒”一聲停下來(lái),圖像上的響應(yīng)就是一個(gè)“點(diǎn)”。加上循環(huán),因?yàn)镸CU執(zhí)行循環(huán)需要時(shí)間,所以嘟嘟聲會(huì)響很長(zhǎng)時(shí)間,圖像上的響應(yīng)是“行”。
然后外循環(huán)(變量I的循環(huán))進(jìn)入第二次。因?yàn)樯洗梧洁?0,0的倒數(shù)是1,此時(shí)嘟嘟=1,蜂鳴器不響。然后它也進(jìn)入了內(nèi)環(huán),消耗了一些時(shí)間,使它產(chǎn)生了一條“線”。這時(shí),隊(duì)伍一片寂靜
!如此反復(fù)到外循環(huán)結(jié)束
這會(huì)產(chǎn)生方波!有什么不清楚的補(bǔ)充