① 如何用c語言編一個發出聲音的程序
這個唱 多來米法少
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
main()
{
Beep(523,500);
Beep(587,500);
Beep(659,500);
Beep(698,500);
Beep(784,500);
Beep(880,500);
Beep(980,500);
Beep(1060,500);
Sleep(500);
Beep(523,500);
Beep(587,500);
Beep(659,500);
Beep(698,500);
Beep(784,500);
}
② c語言主板發聲程序
while (c==('Y'|'y'));
改成:
while ( c == 'Y' || c == 'y' ));
③ 單片機用C語言讓蜂鳴器發出兩種聲調,怎麼編程
讓蜂鳴器發出兩種不同的聲調很容易,只要給蜂鳴器的控制信號發送不同頻率的脈沖就可以實現了,以下以延時方式來做。
#include<reg51.h>
#define
uchar
unsigned
char
#define
uint
unsigned
int
sbit
SPK=P1^0;
sbit
K1=P1^7;
//發聲函數
void
Alarm(uchar
t)
{
uchari,j;
for(i=0;i<200;i++)
{
SPK=~SPK;
for(j=0;j<t;j++);
//由參數t行成不同的頻率
}
}
voidmain()
{
SPK=0;
while(1)
{
if(K1==1)
{
Alarm(90);
Alarm(120);
}
}
}
④ 求c語言程序:按鍵的時候發聲,松開後就不響
要是你需要的是匯編就好了!
⑤ c語言:發聲的問題
不同型號筆記本上蜂鳴器不一樣!有的是直接的蜂鳴器!有的則是用音效卡模擬,受bios控制!C下發聲程序走蜂鳴器,直接控制硬體,音效卡模擬不了的!你換IBM的本本試試!一般都可以正常發聲!
⑥ C語言 用 \a 發出系統聲音(嘟嘟嘟嘟……)
int max = 1000;//這里可以自己定義要響的次數.
int count = 0;
while(count < max)
{
printf("\a");
count++;
}
⑦ 幫忙編寫一個C語言程序,運行是可以播放出聲音,要能運行無錯誤的,非常著急,這是要交的作業,謝謝!
/*
學習內容:1、應用定時器。2、用io口控制交流蜂鳴器發聲。3、結合聲樂原理播放音樂。
程序效果:下載此程序後會聽到蜂鳴器響起《八月桂花香》曲子。
*/
//*******soundplay.h**********
#include<reg51.h>
#ifndef __SOUNDPLAY_H_REVISION_FIRST__
#define __SOUNDPLAY_H_REVISION_FIRST__
#define byte unsigned char
#define word unsigned int
sbit led1=P0^0;
sbit led2=P0^1;
sbit led3=P0^2;
sbit led4=P0^3;
sbit led5=P0^4;
sbit led6=P0^5;
sbit led7=P0^6;
sbit led8=P0^7;
sbit led_k=P2^7; //8個發光二極體陰極端
sbit shu1=P2^6; //第1位數碼管共陰端
sbit shu2=P2^5; //第2位數碼管共陰端
sbit shu3=P2^4; //第3位數碼管共陰端
sbit shu4=P2^3; //第4位數碼管共陰端
sbit speaker=P3^3; //蜂鳴器控制端
word counter=0;
byte code array[]=
{
0x18, 0x30, 0x1C, 0x10,
0x20, 0x40, 0x1C, 0x10,
0x18, 0x10, 0x20, 0x10,
0x1C, 0x10, 0x18, 0x40,
0x1C, 0x20, 0x20, 0x20,
0x1C, 0x20, 0x18, 0x20,
0x20, 0x80, 0xFF, 0x20,
0x30, 0x1C, 0x10, 0x18,
0x20, 0x15, 0x20, 0x1C,
0x20, 0x20, 0x20, 0x26,
0x40, 0x20, 0x20, 0x2B,
0x20, 0x26, 0x20, 0x20,
0x20, 0x30, 0x80, 0xFF,
0x20, 0x20, 0x1C, 0x10,
0x18, 0x10, 0x20, 0x20,
0x26, 0x20, 0x2B, 0x20,
0x30, 0x20, 0x2B, 0x40,
0x20, 0x20, 0x1C, 0x10,
0x18, 0x10, 0x20, 0x20,
0x26, 0x20, 0x2B, 0x20,
0x30, 0x20, 0x2B, 0x40,
0x20, 0x30, 0x1C, 0x10,
0x18, 0x20, 0x15, 0x20,
0x1C, 0x20, 0x20, 0x20,
0x26, 0x40, 0x20, 0x20,
0x2B, 0x20, 0x26, 0x20,
0x20, 0x20, 0x30, 0x80,
0x20, 0x30, 0x1C, 0x10,
0x20, 0x10, 0x1C, 0x10,
0x20, 0x20, 0x26, 0x20,
0x2B, 0x20, 0x30, 0x20,
0x2B, 0x40, 0x20, 0x15,
0x1F, 0x05, 0x20, 0x10,
0x1C, 0x10, 0x20, 0x20,
0x26, 0x20, 0x2B, 0x20,
0x30, 0x20, 0x2B, 0x40,
0x20, 0x30, 0x1C, 0x10,
0x18, 0x20, 0x15, 0x20,
0x1C, 0x20, 0x20, 0x20,
0x26, 0x40, 0x20, 0x20,
0x2B, 0x20, 0x26, 0x20,
0x20, 0x20, 0x30, 0x30,
0x20, 0x30, 0x1C, 0x10,
0x18, 0x40, 0x1C, 0x20,
0x20, 0x20, 0x26, 0x40,
0x13, 0x60, 0x18, 0x20,
0x15, 0x40, 0x13, 0x40,
0x18, 0x80, 0x00
};
#endif
byte data count=0;
void init_com()
{
TMOD=0x01;
TH0=0xff;
TL0=0xff;
EA=1;
ET0=1;
}
void timer0(void) interrupt 1 using 3
{
counter=counter+1; //節拍次數計數
TH0=0xd8; //定義單位節拍的延時大小
TL0=0xef;
}
void delay(byte n)
{
byte i;
while(n--)
for(i=0;i<125;i++); //延時1毫秒
}
void sound_delay(byte n)
{
byte i;
while(n--)
{
for(i=0;i<2;i++);
}
}
void main()
{
word i;
byte sound_signal;//定義音符大小
byte sound_pace;//定義節拍大小
led_k=0; /*關閉8個led的總開關*/
shu1=shu2=shu3=shu4=0; /*關閉數碼管,否則數碼管會拉低P0口電平,導致流水燈不亮*/
init_com() ;
//array[i]=0x00 代表歌曲演唱完畢
//array[i]=0xff 代表是休止符
sound_delay(10);
while(1)
{
i=0;
while(array[i]!=0x00)
{
//如果是休止符,延時100ms,並終止本次循環,進入下一個循環
if(array[i]==0xff)
{
TR0=0;
i++;
delay(100);
//continue;
}
//從表中取得 音符大小
sound_signal=array[i];
i=i+1;
//從表中取得 節拍大小
sound_pace=array[i];
TR0=1;
//當節拍數未達到時候,繼續循環,產生該音調的聲音
while(counter!=sound_pace)
{
speaker=~speaker;
sound_delay(sound_signal);
}
i++;
counter=0;//節拍計數器置0,進入下一個音調
}
delay(10); //歌曲演唱完畢後,延時一段時間
}
}
⑧ 怎樣用C語言以最簡單的方式讓電腦蜂鳴器發出聲音
你的代碼改成 printf("\007");
這樣試試看!
補充一下,還有是有的機子本身就屏蔽了這個聲音,像我的電腦,這個聲音就發不出來。
⑨ ubuntu 如何在C語言的程序裡面讓揚聲器或者蜂鳴器發聲
試試這個
intspeaker(unsignedintfreq,unsignedintdelay)
{staticintflag=0,bit;
if(flag==0)
{
flag=1;
iopl(3);
}
outb(0xb6,0x43);
outb((freq&0xff),0x42);
outb((freq>>8),0x42);
bit=inb(0x61);
outb(3|bit,0x61);
usleep(10000*delay);
outb(0xfc|bit,0x61);
}
#include<sys/io.h>
#include<unistd.h>
main()
{
inti;
for(i=0;i<1;i++)
{
speaker(2000,40);
sleep(2);
}
speaker(1000,40);
}
希望對你有幫助。
⑩ 不用旋律只是單調的發聲蜂鳴器用C語言怎麼的程序
Windows下蜂鳴器發生函數API:
BOOL Beep(DWORD dwFreq,DWORD dwDuration);
第一個參數是發音頻率:范圍37~32767第二個參數是發聲時間:毫秒
例如:Beep( 750, 300 );