NXC dźwięki: Różnice pomiędzy wersjami
Linia 59: | Linia 59: | ||
</pre> | </pre> | ||
− | Poniżej częstotliwości i odpowiadające im dźwięki | + | Poniżej częstotliwości (frequency) i odpowiadające im dźwięki |
<pre> | <pre> | ||
Linia 77: | Linia 77: | ||
</pre> | </pre> | ||
− | + | Można też użyć rozszerzonej wersji, czyli <code>PlayToneEx(frequency, duration, volume, loop)</code> | |
+ | |||
+ | Głośność (volume) ma zakres 0-4 | ||
+ | |||
+ | Pętla (loop) przyjmuje wartości logiczne true albo false) | ||
+ | |||
+ | <pre> | ||
+ | task main() | ||
+ | { | ||
+ | PlayToneEx(262,400,3,FALSE); Wait(500); | ||
+ | PlayToneEx(294,400,3,FALSE); Wait(500); | ||
+ | PlayToneEx(330,400,3,FALSE); Wait(500); | ||
+ | PlayToneEx(294,400,3,FALSE); Wait(500); | ||
+ | PlayToneEx(262,1600,3,FALSE); Wait(2000); | ||
+ | } | ||
+ | </pre> | ||
[[Category:Lego Mindstorms]] | [[Category:Lego Mindstorms]] |
Wersja z 12:31, 5 lut 2014
Opisując wcześniej NXC instrukcje warunkowe i pętle użyliśmy poleceń odnoszących się do dźwięków, teraz zostanie to dokładniej wyjaśnione.
Odgrywanie dźwięków
W temacie NXC instrukcje warunkowe i pętle użyliśmy polecenia PlaySound(acode);
przykładowo PlaySound(SOUND_DOUBLE_BEEP);
Poniżej lista aCode
aCode Resulting Sound cyfrowo SOUND_CLICK key click sound 0 SOUND_DOUBLE_BEEP double beep 1 SOUND_DOWN sweep down 2 SOUND_UP sweep up 3 SOUND_LOW_BEEP error sound 4 SOUND_FAST_UP fast sweep up 5
Można też posłużyć się cyframi od 0 do 5, np. PlaySound(1);
Przykłady zastosowania PlaySound(acode);
są w zlinkowanym wyżej temacie, więc nie będę się powtarzać
Odtwarzanie z pliku
Służy do tego polecenie PlayFile("Nazwa_pliku.rso")
task main() { PlayFile("Woops.rso"); Wait(3000); }
Oczywiście trzeba wcześniej wgrać plik .rso do pamięci.
Można też użyć polecenia PlayFileEx("Nazwa_pliku.rso", głośność 0-4, pętla TRUE FALSE);
task main() { PlayFileEx("startup.rso", 3, true); Wait(3000); }
Odgrywanie tonów
Najpierw posłużymy się poleceniem PlayTone(frequency, duration)
task main() { PlayTone(440, 400); Wait(500); PlayTone(294, 400); Wait(500); }
Poniżej częstotliwości (frequency) i odpowiadające im dźwięki
dźwięk 3 4 5 6 7 8 9 B 247 494 988 1976 3951 7902 A# 233 466 932 1865 3729 7458 A 220 440 880 1760 3520 7040 14080 G# 415 831 1661 3322 6644 13288 G 392 784 1568 3136 6272 12544 F# 370 740 1480 2960 5920 11840 F 349 698 1397 2794 5588 11176 E 330 659 1319 2637 5274 10548 D# 311 622 1245 2489 4978 9956 D 294 587 1175 2349 4699 9398 C# 277 554 1109 2217 4435 8870 C 262 523 1047 2093 4186 8372
Można też użyć rozszerzonej wersji, czyli PlayToneEx(frequency, duration, volume, loop)
Głośność (volume) ma zakres 0-4
Pętla (loop) przyjmuje wartości logiczne true albo false)
task main() { PlayToneEx(262,400,3,FALSE); Wait(500); PlayToneEx(294,400,3,FALSE); Wait(500); PlayToneEx(330,400,3,FALSE); Wait(500); PlayToneEx(294,400,3,FALSE); Wait(500); PlayToneEx(262,1600,3,FALSE); Wait(2000); }