buzzerled.c File Reference

Generic library to handle buzzers and leds. More...

#include "buzzerled.h"
#include "timer.h"

Go to the source code of this file.


Functions

void bld_init (void)
 Include hw.h.
void bld_beep (enum BLD_DEVICE device, uint16_t duration)
 Enable a device for a certain interval of time.
void bld_beep_and_wait (enum BLD_DEVICE device, uint16_t duration)
 Enable a device for a certain interval of time and wait.

Detailed Description

Generic library to handle buzzers and leds.

This library is divided into three different layers:

  • The topmost portable layer is buzzerled.[ch] which exposes a common API enable/disable the devices. Basically, it handles the asynchronism to implement bld_beep and bld_repeat.
  • The middle layer is CPU-specific and exposes a single main function which turns on/off each device.
  • The lower layer is board-specific and communicates with the middle layer with any required API. The idea is that devices can be tied to the CPU in many different ways (many different pins), so this part should describe which devices are present, and how they are connected.

Version:
Id
buzzerled.c 841 2007-10-08 17:35:23Z marco

Author:
Giovanni Bajo <rasky@develer.com>

Definition in file buzzerled.c.


Function Documentation

void bld_beep ( enum BLD_DEVICE  device,
uint16_t  duration 
)

Enable a device for a certain interval of time.

Parameters:
device Device to be enabled
duration Number of milliseconds the device must be enabled
Note:
This function is non-blocking, so it will return immediately.

Definition at line 106 of file buzzerled.c.

void bld_beep_and_wait ( enum BLD_DEVICE  device,
uint16_t  duration 
)

Enable a device for a certain interval of time and wait.

Parameters:
device Device to be enabled
duration Number of milliseconds the device must be enabled
Note:
This function is blocking, so it will return after the specified period of time.

Definition at line 117 of file buzzerled.c.

void bld_init ( void   ) 

Include hw.h.

We expect hw.h to define enum BLD_DEVICE, which must contain an enumarator for each device, plus a special symbol NUM_BLDS containing the number of devices. Initialize the buzzerled library.

Note:
This function must be called before any other function in the library.

Definition at line 101 of file buzzerled.c.