buzzer.c File Reference

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


Functions

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


Detailed Description

Author:
IB
Date:
07/2007

Function Documentation

enum BUZZER_mode BUZZER_GetMode ( void   ) 

Get the current buzzer mode.

Returns:
Current buzzer mode.

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> := <char>+ ; 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] melody New melody to play on buzzer.

void BUZZER_SetMode ( enum BUZZER_mode  mode  ) 

Set new buzzer mode

Parameters:
[in] mode New buzzer mode.