CyberPress
közéleti magazin
cyberpress@sopron.hu
2024. május 18., szombat, Erik, Alexandra napja


Irodalmi Kávéház

Intranet Galéria

Apróhirdetések

Képeslapok

Soproni Képindex

Polgármesteri Hivatal

ZÓNÁK
Főoldal
Lapszemle
  Lapszemle
Kultúra
  KultúrVáros
  Lélektől lélekig
  SzínházVilág
  Soproni Ünnepi Hetek
  Borváros
Regionális kulturális programajánló
  Színház
  Kiállítás
  Rendezvények
  Hangverseny-Zene
Cyber Kurír
  Hírek - események
  Szomszédvár - Régió
  Soproni Snassz
Európai Unió
  EU
Cyber hírek
  Közélet
  SopronMedia
  Városháza
  Sport
Szórakozás
  Fesztiválgájd
  HangFal
  Mi1más
  Diákélet - diákszáj
  ViccGödör
Gazdaság
  Kereskedelmi és Iparkamara
Sport - szabadidő
  Sportcentrum
  Száguldó Cirkusz
Tudomány-technika
  Űrvadász
  Egészség
Környezet
  Borostyán
  Egészség

Dr. Bit  

Hangok és dallamok...

				Hangok és dallamok
Bizonyára már te is találkoztál olyan programmal, 
amely egyszerű hangokkal 
figyelmeztetett valamire.(Ilyen lehet például valamilyen üzenetet 
kísérő csipogás.) 
A számítógép többféle módon adhat ki hangokat, 
ugyanis (legalábbis majdnem 
minden gépben) van egy kis, beépített hangszóró, illetve lehet egy 
hangkártya is, külső
hangszórókkal. A hangkártyák használata egy kicsit bonyolultabb, 
ezért 
ezekkel
valamikor később foglalkozom majd, de ott van a beépített hangszóró, 
ami kiválóan
alkalmas arra, hogy egyszerű hangokat, dallamokat lejátsszunk vele. 
Ennek használata
nagyon könnyű C és C++ -ban. Van ugyebár nekünk egy sound() 
függvényünk a DOS.H -ban,
ami megszólaltatja a hangszórót a paraméterként kapott frekvencián. A 
hang egészen 
addig szól, ameddig egy nosound() függvény nem kerül 
meghívásra. A DOS.H -ban van
még (sok egyéb más függvény mellett) egy delay() utasítás, 
ami annyi ezredmásodpercet
vár, amennyit paraméterként kapott. (1000 ezredmásodperc=1 másodperc)
Itt van hát egy egyszerű példa, ami egy másodpercig 440 Hz-en 
szól:
/* sound1.c - Egy egyszeru pelda a sound() 
fuggveny hasznalatara */
#include<dos.h>
void main(void)
{
sound(440);
delay(1000);
nosound();
}
Ha egymás után több hangot szeretnénk lejátszani, 
az is megoldható, csak több
sound() utasítás kell egymás után:

/* sound2.c - Egy egyszeru pelda a sound() -al valo dallamlejatszasra 
*/
#include<dos.h>
#define WAIT 1000
void main(void)
{
sound(440);
  delay(WAIT);
sound(660);
  delay(WAIT);
sound(1000);
  delay(WAIT);
sound(5000);
  delay(WAIT);
nosound();
}
(A #define egy állandó(konstans) értéket 
definiál fordítási időben.)
Ha csak 'csipogtatni' akarsz, küldj ki egy 'a' -
t 
a képernyőre!
#include<dos.h>
#include<stdio.h>
void main(void)
{
printf("a");
}
Próbálkozz vele egy kicsit, nagyon jó dallamokat 
lehet vele kihozni.
Megjegyzés: Lehet, hogy a hangszóró nem tud túl alacsony hangokat
(általában 10Hz alatt) megszólaltatni.
Hát mostanra ennyi!
A következő alkalommal a billentyűzetkezeléssel fogok foglalkozni.
			
PET



2000. május 29., hétfő 00:00


címlap zóna archívum




© 1999-2007, Internet Sopron Egyesület