blob: 87e2fc9730ae7f1c6776a563756a004d67485be4 [file] [log] [blame]
Christina Quast53b21052014-12-09 15:34:35 +01001/* ----------------------------------------------------------------------------
2 * ATMEL Microcontroller Software Support
3 * ----------------------------------------------------------------------------
4 * Copyright (c) 2008, Atmel Corporation
5 *
6 * All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions are met:
10 *
11 * - Redistributions of source code must retain the above copyright notice,
12 * this list of conditions and the disclaimer below.
13 *
14 * Atmel's name may not be used to endorse or promote products derived from
15 * this software without specific prior written permission.
16 *
17 * DISCLAIMER: THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR
18 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
19 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
20 * DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT, INDIRECT,
21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
23 * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
24 * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
25 * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
26 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 * ----------------------------------------------------------------------------
28 */
29
30/**
31 * \file
32 *
33 * \section Purpose
34 *
35 * Small set of functions for simple and portable LED usage.
36 *
37 * \section Usage
38 *
39 * -# Configure one or more LEDs using LED_Configure and
40 * LED_ConfigureAll.
41 * -# Set, clear and toggle LEDs using LED_Set, LED_Clear and
42 * LED_Toggle.
43 *
44 * LEDs are numbered starting from 0; the number of LEDs depend on the
45 * board being used. All the functions defined here will compile properly
46 * regardless of whether the LED is defined or not; they will simply
47 * return 0 when a LED which does not exist is given as an argument.
48 * Also, these functions take into account how each LED is connected on to
49 * board; thus, \ref LED_Set might change the level on the corresponding pin
50 * to 0 or 1, but it will always light the LED on; same thing for the other
51 * methods.
52 */
53
54#ifndef _LED_
55#define _LED_
56
57#include <stdint.h>
58
59//------------------------------------------------------------------------------
60// Global Functions
61//------------------------------------------------------------------------------
62
63extern uint32_t LED_Configure( uint32_t dwLed ) ;
64
65extern uint32_t LED_Set( uint32_t dwLed ) ;
66
67extern uint32_t LED_Clear( uint32_t dwLed ) ;
68
69extern uint32_t LED_Toggle( uint32_t dwLed ) ;
70
71#endif /* #ifndef LED_H */
72