A. c語言char d=7;//蜂鳴聲 char d='\007'; char d='\07'; d='\7'; 分別賦值給d,為什麼列印效果一樣
char d=7 -- d 等於 十進制 7
char d='\007' -- d值 等於 八進制 007
char d='\07' -- d值 等於 八進制 07
d='\7' -- d值 等於 八進制 7
八進制 7,07, 007 值一樣大小,都等於 十進制 7。
ASCII 碼 7 ,是響鈴符。所以列印效果一樣。
B. win7如何實現和xp一樣的調用beep.sys主板發生蜂鳴聲,不是音效卡發出。
把Windows Audio服務關了,beep.sys在Windows Audio沒啟動時調用主板蜂鳴器,反之發送給音效卡
C. C++如何實現蜂鳴
你可以寫一個文件,存儲你自己的聲音格式:
struct tagSound
{
int frequency; //頻率
int soundDelay; //發音時間(單位ms)
int nosoundDelay; //發完音之後暫停的時間(單位ms)
};
1。音符與頻率的關系
========低音部分
低1DO:262
#1DO#:277
低2RE:294
#2RE#:311
低3MI:330
低4FA:349
#4FA#:370
低5SO:392
#5SO#:415
低6LA:440
#6LA#:466
低7SI:494
========中音部分=低音X2
中1DO:523 956us FC44;
#1DO#:554 902us
中2RE:578 865us FC9F;
#2RE#:622 803us
中3MI:659 759us FD09;
中4FA:698 716us FD34
#4FA#:740
中5SO:784 638us FD82
#5SO#:831
中6LA:880 568us FDC8
#6LA#:932
中7SI:988 506us FE06
========高音部分=中音X2
高1DO:1046
#1DO#:1109
高2RE:1175
#2RE#:1245
高3MI:1318
高4FA:1480
#4FA#:1480
高5SO:1568
#5SO#:1661
高6LA:1760
#6LA#:1865
高7SI:1976
「#」表示半音,用於上升或下降半個音
2。頻率的產生
利用定時器來控制IO口的高低變化實現
周期=1/頻率
半周期中斷產生IO口電平
定時時間常數按照單片機的方式計算
3。音樂節拍的產生
每個音符用1個位元組,位元組的高4位代表音符的高低,低4位代表
音符的節拍,如果 1節拍是0.4秒,則1/4拍就是0.1秒。
其他節拍為1/4拍的整數倍。
4。節拍與節拍碼對照表
節拍 節拍數 節拍數
1 1/4 1/8
2 2/4 2/8
3 3/4 3/8
4 1 1/2
5 5/4 5/8
6 6/4 6/8
8 2 1
A 10/4 5/4
C 3 12/8
F 15/4
曲調 1/4拍的延遲時間 1/8拍的延遲時間
4/4 125ms 62ms
3/4 187ms 94ms
2/4 250ms 125ms
不過,真的好不準。
這樣就可以編輯文件了。
送你一個函數:
void MyDelay(long tt) /*暫停tt個百分之一秒*/
{
struct time now,last;
gettime(&last);
gettime(&now);
while((((now.ti_sec-last.ti_sec)*100+now.ti_hund-last.ti_hund))<tt)
{
gettime(&now);
}
}
這個函數可以暫停 0.01*tt 秒。
循環使用下面的句子:
Beep(frequency,soundDelay);
MyDelay(nosoundDelay/10);
就可以模擬那個音樂了。
在C語言里可以循環使用:
sound(frequency);
MyDelay(soundDelay/10);
nosound();
MyDelay(nosoundDelay/10);
就可以了
D. STC51單片機C語言開啟蜂鳴器
#include<reg52.h>
sbitbeep=P0^4;
voidmain()
{
beep=0;
while(1);
}
試試這個怎樣,單片機在執行完程序之後會回到初始狀態,然後再重新執行程序,所以蜂鳴器就會反復的開和關,聽起來聲音會小很多;加個while(1)死循環,讓程序一直保持在beep=0的狀態。
E. C語言中的蜂鳴問題
#include<stdio.h>
#include<windows.h>//包含windows頭文件
intmain()
{
intn;
intb=20;
for(n=0;n<21;n++)
{
printf("a");
printf("%d ",b-n);
Sleep(500);//延遲500毫秒
}
getchar();
return0;
}
你是想聲音和數字都慢慢的出來嗎?你的程序太短小,在一瞬間就執行完了,其實聲音可能響了20下,但是是在一瞬間同時發出來的,你分辨不出來而已。可以包含windows頭文件,調用sleep函數延遲發聲和列印,就可以出現有節奏的效果。一次發聲只需要列印一個'a'就可以了。
F. 哪位好心人給我一個51單片機C語言讓蜂鳴器唱生日歌的程序啊,謝謝啦!!
//此程序在硬體上調試通過
//本程序的單片機晶振採用11.0592M
#include<reg51.h>
sbitspeaker=P1^2;
unsignedchartimer0h,timer0l,time;
//生日歌
codeunsignedcharsszymmh[]={5,1,1,5,1,1,6,1,2,5,1,2,1,2,2,7,1,4,
5,1,1,5,1,1,6,1,2,5,1,2,2,2,2,1,2,4,
5,1,1,5,1,1,5,2,2,3,2,2,1,2,2,7,1,2,6,1,2,
4,2,1,4,2,1,3,2,2,1,2,2,2,2,2,1,2,4};
//音階頻率表高八位
codeunsignedcharFREQH[]={
0xF2,0xF3,0xF5,0xF5,0xF6,0xF7,0xF8,
0xF9,0xF9,0xFA,0xFA,0xFB,0xFB,0xFC,0xFC,//1,2,3,4,5,6,7,8,i
0xFC,0xFD,0xFD,0xFD,0xFD,0xFE,
0xFE,0xFE,0xFE,0xFE,0xFE,0xFE,0xFF,
};
//音階頻率表低八位
codeunsignedcharFREQL[]={
0x42,0xC1,0x17,0xB6,0xD0,0xD1,0xB6,
0x21,0xE1,0x8C,0xD8,0x68,0xE9,0x5B,0x8F,//1,2,3,4,5,6,7,8,i
0xEE,0x44,0x6B,0xB4,0xF4,0x2D,
0x47,0x77,0xA2,0xB6,0xDA,0xFA,0x16,
};
voiddelay(unsignedchart)
{
unsignedchart1;
unsignedlongt2;
for(t1=0;t1<t;t1++)
{
for(t2=0;t2<8000;t2++)
{
;
}
}
TR0=0;
}
voidt0int()interrupt1
{
TR0=0;
speaker=!speaker;
TH0=timer0h;
TL0=timer0l;
TR0=1;
}
voidsong()
{
TH0=timer0h;
TL0=timer0l;
TR0=1;
delay(time);
}
voidmain(void)
{
unsignedchark,i;
TMOD=1;//置CT0定時工作方式1
EA=1;
ET0=1;//IE=0x82//CPU開中斷,CT0開中斷
while(1)
{
i=0;
while(i<75){//音樂數組長度,唱完從頭再來
k=sszymmh[i]+7*sszymmh[i+1]-1;
timer0h=FREQH[k];
timer0l=FREQL[k];
time=sszymmh[i+2];
i=i+3;
song();
}
}
}
P12接J31的7腳,我在板子上已經測試過了,用的是89S52
花時間編的,希望你能採納
G. 編寫一個c語言程序 使計算機發出鳴叫
轉義字元 意義 ASCII碼值(十進制)
\a 響鈴(BEL) 007
#include <stdio.h>
int main()
{
printf("test:\a");
return 0;
}
測試的時候,會聽到嘟的一聲,它不能自動播放音樂的,就一個「嘟」
H. 易語言win7系統如何調用主板蜂鳴器
.版本 2
.DLL命令 Beep, 邏輯型, , "Beep"
.參數 dwFreq
.參數 dwDuration
就可以
參數1 為聲音 1-999 之間
參數2 為播放速度 1-99
I. C語言編程中怎麼讓計算機發出蜂鳴聲
#include <windows.h> //使用windowsAPI函數Beep();
/*
BOOL Beep(
DWORD dwFreq, // sound frequency, in hertz
DWORD dwDuration // sound ration, in milliseconds
);
*/
Beep(5500,150);
J. c語言怎麼使用\a發出蜂鳴聲,下面的程序為什麼電腦不會振鈴,振鈴和蜂鳴一樣嗎
樓主我用Dev-Cpp是有響聲的。
然後我再VC++6.0運行了一遍,還是有響聲的。
不知道振鈴和蜂鳴的區別。