OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [freertos-6.1.1/] [Demo/] [AVR32_UC3/] [BOARDS/] [EVK1101/] [led.h] - Blame information for rev 589

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 589 jeremybenn
/*This file is prepared for Doxygen automatic documentation generation.*/
2
/*! \file *********************************************************************
3
 *
4
 * \brief AT32UC3B EVK1101 board LEDs support package.
5
 *
6
 * This file contains definitions and services related to the LED features of
7
 * the EVK1101 board.
8
 *
9
 * - Compiler:           IAR EWAVR32 and GNU GCC for AVR32
10
 * - Supported devices:  All AVR32 AT32UC3B devices can be used.
11
 * - AppNote:
12
 *
13
 * \author               Atmel Corporation: http://www.atmel.com \n
14
 *                       Support and FAQ: http://support.atmel.no/
15
 *
16
 ******************************************************************************/
17
 
18
/* Copyright (c) 2007, Atmel Corporation All rights reserved.
19
 *
20
 * Redistribution and use in source and binary forms, with or without
21
 * modification, are permitted provided that the following conditions are met:
22
 *
23
 * 1. Redistributions of source code must retain the above copyright notice,
24
 * this list of conditions and the following disclaimer.
25
 *
26
 * 2. Redistributions in binary form must reproduce the above copyright notice,
27
 * this list of conditions and the following disclaimer in the documentation
28
 * and/or other materials provided with the distribution.
29
 *
30
 * 3. The name of ATMEL may not be used to endorse or promote products derived
31
 * from this software without specific prior written permission.
32
 *
33
 * THIS SOFTWARE IS PROVIDED BY ATMEL ``AS IS'' AND ANY EXPRESS OR IMPLIED
34
 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
35
 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE EXPRESSLY AND
36
 * SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR ANY DIRECT,
37
 * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
38
 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
39
 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
40
 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
41
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
42
 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
43
 */
44
 
45
 
46
#ifndef _LED_H_
47
#define _LED_H_
48
 
49
#include "compiler.h"
50
 
51
 
52
/*! \name Identifiers of LEDs to Use with LED Functions
53
 */
54
//! @{
55
#define LED0  0x01
56
#define LED1  0x02
57
#define LED2  0x04
58
#define LED3  0x08
59
//! @}
60
 
61
 
62
/*! \brief Gets the last state of all LEDs set through the LED API.
63
 *
64
 * \return State of all LEDs (1 bit per LED).
65
 *
66
 * \note The GPIO pin configuration of all LEDs is left unchanged.
67
 */
68
extern U32 LED_Read_Display(void);
69
 
70
/*! \brief Sets the state of all LEDs.
71
 *
72
 * \param leds New state of all LEDs (1 bit per LED).
73
 *
74
 * \note The pins of all LEDs are set to GPIO output mode.
75
 */
76
extern void LED_Display(U32 leds);
77
 
78
/*! \brief Gets the last state of the specified LEDs set through the LED API.
79
 *
80
 * \param mask LEDs of which to get the state (1 bit per LED).
81
 *
82
 * \return State of the specified LEDs (1 bit per LED).
83
 *
84
 * \note The GPIO pin configuration of all LEDs is left unchanged.
85
 */
86
extern U32 LED_Read_Display_Mask(U32 mask);
87
 
88
/*! \brief Sets the state of the specified LEDs.
89
 *
90
 * \param mask LEDs of which to set the state (1 bit per LED).
91
 *
92
 * \param leds New state of the specified LEDs (1 bit per LED).
93
 *
94
 * \note The pins of the specified LEDs are set to GPIO output mode.
95
 */
96
extern void LED_Display_Mask(U32 mask, U32 leds);
97
 
98
/*! \brief Tests the last state of the specified LEDs set through the LED API.
99
 *
100
 * \param leds LEDs of which to test the state (1 bit per LED).
101
 *
102
 * \return \c TRUE if at least one of the specified LEDs has a state on, else
103
 *         \c FALSE.
104
 *
105
 * \note The GPIO pin configuration of all LEDs is left unchanged.
106
 */
107
extern Bool LED_Test(U32 leds);
108
 
109
/*! \brief Turns off the specified LEDs.
110
 *
111
 * \param leds LEDs to turn off (1 bit per LED).
112
 *
113
 * \note The pins of the specified LEDs are set to GPIO output mode.
114
 */
115
extern void LED_Off(U32 leds);
116
 
117
/*! \brief Turns on the specified LEDs.
118
 *
119
 * \param leds LEDs to turn on (1 bit per LED).
120
 *
121
 * \note The pins of the specified LEDs are set to GPIO output mode.
122
 */
123
extern void LED_On(U32 leds);
124
 
125
/*! \brief Toggles the specified LEDs.
126
 *
127
 * \param leds LEDs to toggle (1 bit per LED).
128
 *
129
 * \note The pins of the specified LEDs are set to GPIO output mode.
130
 */
131
extern void LED_Toggle(U32 leds);
132
 
133
/*! \brief Gets as a bit-field the last state of the specified LEDs set through
134
 *         the LED API.
135
 *
136
 * \param field LEDs of which to get the state (1 bit per LED).
137
 *
138
 * \return State of the specified LEDs (1 bit per LED, beginning with the first
139
 *         specified LED).
140
 *
141
 * \note The GPIO pin configuration of all LEDs is left unchanged.
142
 */
143
extern U32 LED_Read_Display_Field(U32 field);
144
 
145
/*! \brief Sets as a bit-field the state of the specified LEDs.
146
 *
147
 * \param field LEDs of which to set the state (1 bit per LED).
148
 * \param leds New state of the specified LEDs (1 bit per LED, beginning with
149
 *             the first specified LED).
150
 *
151
 * \note The pins of the specified LEDs are set to GPIO output mode.
152
 */
153
extern void LED_Display_Field(U32 field, U32 leds);
154
 
155
/*! \brief Gets the intensity of the specified LED.
156
 *
157
 * \param led LED of which to get the intensity (1 bit per LED; only the least
158
 *            significant set bit is used).
159
 *
160
 * \return Intensity of the specified LED (0x00 to 0xFF).
161
 *
162
 * \warning The PWM channel of the specified LED is supposed to be used only by
163
 *          this module.
164
 *
165
 * \note The GPIO pin configuration of all LEDs is left unchanged.
166
 */
167
extern U8 LED_Get_Intensity(U32 led);
168
 
169
/*! \brief Sets the intensity of the specified LEDs.
170
 *
171
 * \param leds LEDs of which to set the intensity (1 bit per LED).
172
 * \param intensity New intensity of the specified LEDs (0x00 to 0xFF).
173
 *
174
 * \warning The PWM channels of the specified LEDs are supposed to be used only
175
 *          by this module.
176
 *
177
 * \note The pins of the specified LEDs are set to PWM output mode.
178
 */
179
extern void LED_Set_Intensity(U32 leds, U8 intensity);
180
 
181
 
182
#endif  // _LED_H_

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.