Toggle navigation
Documentation
The friendly Operating System for the Internet of Things
led.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2016 Freie Universität Berlin
3
*
4
* This file is subject to the terms and conditions of the GNU Lesser
5
* General Public License v2.1. See the file LICENSE in the top level
6
* directory for more details.
7
*/
8
9
#pragma once
10
34
#include "board.h"
35
36
#ifdef __cplusplus
37
extern
"C"
{
38
#endif
39
44
#ifndef LED0_ON
45
#define LED0_ON
46
#define LED0_OFF
47
#define LED0_TOGGLE
48
#else
49
#define LED0_IS_PRESENT
50
#endif
51
52
#ifndef LED1_ON
53
#define LED1_ON
54
#define LED1_OFF
55
#define LED1_TOGGLE
56
#else
57
#define LED1_IS_PRESENT
58
#endif
59
60
#ifndef LED2_ON
61
#define LED2_ON
62
#define LED2_OFF
63
#define LED2_TOGGLE
64
#else
65
#define LED2_IS_PRESENT
66
#endif
67
68
#ifndef LED3_ON
69
#define LED3_ON
70
#define LED3_OFF
71
#define LED3_TOGGLE
72
#else
73
#define LED3_IS_PRESENT
74
#endif
75
76
#ifndef LED4_ON
77
#define LED4_ON
78
#define LED4_OFF
79
#define LED4_TOGGLE
80
#else
81
#define LED4_IS_PRESENT
82
#endif
83
84
#ifndef LED5_ON
85
#define LED5_ON
86
#define LED5_OFF
87
#define LED5_TOGGLE
88
#else
89
#define LED5_IS_PRESENT
90
#endif
91
92
#ifndef LED6_ON
93
#define LED6_ON
94
#define LED6_OFF
95
#define LED6_TOGGLE
96
#else
97
#define LED6_IS_PRESENT
98
#endif
99
100
#ifndef LED7_ON
101
#define LED7_ON
102
#define LED7_OFF
103
#define LED7_TOGGLE
104
#else
105
#define LED7_IS_PRESENT
106
#endif
107
111
#if defined(LED7_IS_PRESENT)
112
#define LED_NUMOF 8
113
#elif defined(LED6_IS_PRESENT)
114
#define LED_NUMOF 7
115
#elif defined(LED5_IS_PRESENT)
116
#define LED_NUMOF 6
117
#elif defined(LED4_IS_PRESENT)
118
#define LED_NUMOF 5
119
#elif defined(LED3_IS_PRESENT)
120
#define LED_NUMOF 4
121
#elif defined(LED2_IS_PRESENT)
122
#define LED_NUMOF 3
123
#elif defined(LED1_IS_PRESENT)
124
#define LED_NUMOF 2
125
#elif defined(LED0_IS_PRESENT)
126
#define LED_NUMOF 1
127
#else
128
#define LED_NUMOF 0
129
#endif
130
137
#define LED_ON(id) LED ## id ##_ON
138
#define LED_OFF(id) LED ## id ## _OFF
139
#define LED_TOGGLE(id) LED ## id ##_TOGGLE
148
static
inline
void
led_on
(
unsigned
id
)
149
{
150
switch
(
id
) {
151
case
0:
LED0_ON
;
break
;
152
case
1:
LED1_ON
;
break
;
153
case
2:
LED2_ON
;
break
;
154
case
3:
LED3_ON
;
break
;
155
case
4:
LED4_ON
;
break
;
156
case
5:
LED5_ON
;
break
;
157
case
6:
LED6_ON
;
break
;
158
case
7:
LED7_ON
;
break
;
159
}
160
}
161
169
static
inline
void
led_off
(
unsigned
id
)
170
{
171
switch
(
id
) {
172
case
0:
LED0_OFF
;
break
;
173
case
1:
LED1_OFF
;
break
;
174
case
2:
LED2_OFF
;
break
;
175
case
3:
LED3_OFF
;
break
;
176
case
4:
LED4_OFF
;
break
;
177
case
5:
LED5_OFF
;
break
;
178
case
6:
LED6_OFF
;
break
;
179
case
7:
LED7_OFF
;
break
;
180
}
181
}
182
190
static
inline
void
led_toggle
(
unsigned
id
)
191
{
192
switch
(
id
) {
193
case
0:
LED0_TOGGLE
;
break
;
194
case
1:
LED1_TOGGLE
;
break
;
195
case
2:
LED2_TOGGLE
;
break
;
196
case
3:
LED3_TOGGLE
;
break
;
197
case
4:
LED4_TOGGLE
;
break
;
198
case
5:
LED5_TOGGLE
;
break
;
199
case
6:
LED6_TOGGLE
;
break
;
200
case
7:
LED7_TOGGLE
;
break
;
201
}
202
}
203
206
#ifdef __cplusplus
207
}
208
#endif
209
LED3_TOGGLE
#define LED3_TOGGLE
defined empty
Definition:
led.h:71
LED3_OFF
#define LED3_OFF
defined empty
Definition:
led.h:70
LED4_ON
#define LED4_ON
defined empty
Definition:
led.h:77
led_on
static void led_on(unsigned id)
Turn on an LED.
Definition:
led.h:148
LED0_ON
#define LED0_ON
defined empty
Definition:
led.h:45
LED1_TOGGLE
#define LED1_TOGGLE
defined empty
Definition:
led.h:55
LED7_TOGGLE
#define LED7_TOGGLE
defined empty
Definition:
led.h:103
LED1_OFF
#define LED1_OFF
defined empty
Definition:
led.h:54
LED7_OFF
#define LED7_OFF
defined empty
Definition:
led.h:102
LED4_OFF
#define LED4_OFF
defined empty
Definition:
led.h:78
LED5_TOGGLE
#define LED5_TOGGLE
defined empty
Definition:
led.h:87
LED6_OFF
#define LED6_OFF
defined empty
Definition:
led.h:94
LED6_ON
#define LED6_ON
defined empty
Definition:
led.h:93
LED4_TOGGLE
#define LED4_TOGGLE
defined empty
Definition:
led.h:79
led_off
static void led_off(unsigned id)
Turn off an LED.
Definition:
led.h:169
LED5_OFF
#define LED5_OFF
defined empty
Definition:
led.h:86
LED1_ON
#define LED1_ON
defined empty
Definition:
led.h:53
LED2_ON
#define LED2_ON
defined empty
Definition:
led.h:61
LED2_OFF
#define LED2_OFF
defined empty
Definition:
led.h:62
LED3_ON
#define LED3_ON
defined empty
Definition:
led.h:69
LED2_TOGGLE
#define LED2_TOGGLE
defined empty
Definition:
led.h:63
LED7_ON
#define LED7_ON
defined empty
Definition:
led.h:101
LED0_TOGGLE
#define LED0_TOGGLE
defined empty
Definition:
led.h:47
led_toggle
static void led_toggle(unsigned id)
Toggle an LED.
Definition:
led.h:190
LED0_OFF
#define LED0_OFF
defined empty
Definition:
led.h:46
LED5_ON
#define LED5_ON
defined empty
Definition:
led.h:85
LED6_TOGGLE
#define LED6_TOGGLE
defined empty
Definition:
led.h:95
Generated on Mon Jun 30 2025 18:46:45 by
1.9.1