CircleOS  1
Functions
buzzer.c File Reference

Common Buzzer functions with RTTTL format support. More...

Go to the source code of this file.

Functions

enum BUZZER_mode BUZZER_GetMode (void)
 
void BUZZER_PlayMusic (const u8 *melody)
 

Detailed Description

Author
IB
Date
07/2007
09/2008
Version
3.0 Add audio version for Primer 2
Date
10/2009
Version
4.0 Add Open4 Primer

Definition in file buzzer.c.

Function Documentation

enum BUZZER_mode BUZZER_GetMode ( void  )

Get the current buzzer mode.

Returns
Current buzzer mode.

Definition at line 269 of file buzzer.c.

void BUZZER_PlayMusic ( const u8 *  melody)

Plays the provided melody that follows the RTTTL Format.

Official Specification

<ringing-tones-text-transfer-language> :=
<name> <sep> [<defaults>] <sep> <note-command>+
<name> := <u8>+ ; maximum name length 10 characters
<sep> := ":"
<defaults> :=
<def-note-duration> |
<def-note-scale> |
<def-beats>
<def-note-duration> := "d=" <duration>
<def-note-scale> := "o=" <scale>
<def-beats> := "b=" <beats-per-minute>
<beats-per-minute> := 25,28,...,900 ; decimal value
; If not specified, defaults are
;
; 4 = duration
; 6 = scale
; 63 = beats-per-minute
<note-command> :=
[<duration>] <note> [<scale>] [<special-duration>] <delimiter>
<duration> :=
"1" | ; Full 1/1 note
"2" | ; 1/2 note
"4" | ; 1/4 note
"8" | ; 1/8 note
"16" | ; 1/16 note
"32" | ; 1/32 note
<note> :=
"P"  | ; pause
"C"  |
"C#" |
"D"  |
"D#" |
"E"  |
"F"  |
"F#" |
"G"  |
"G#" |
"A"  |
"A#" |
"B"
<scale> :=
"5" | ; Note A is 440Hz
"6" | ; Note A is 880Hz
"7" | ; Note A is 1.76 kHz
"8" ; Note A is 3.52 kHz
<special-duration> :=
"." ; Dotted note
<delimiter> := ","
Parameters
[in]melodyNew melody to play on buzzer.

Definition at line 340 of file buzzer.c.