Paparazzi UAS v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
Loading...
Searching...
No Matches
light_scheduler.c
Go to the documentation of this file.
1/*
2 * Copyright (C) 2019 Xavier Paris
3 *
4 * This file is part of paparazzi.
5 *
6 * paparazzi is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2, or (at your option)
9 * any later version.
10 *
11 * paparazzi is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with paparazzi; see the file COPYING. If not, see
18 * <http://www.gnu.org/licenses/>.
19 *
20 */
21
32
33static uint32_t s = 0;
34
39
41{
42 uint32_t n, s0;
43 for (n = 0; n < WS2812_NB_LEDS; n++) {
44 if (WS2812_NB_LEDS == 32) {
45 if (n<=7) light_ws2812_arch_set(n, 0,255,0); // LEFT = GREEN
46 else if (n<=15)
47 light_ws2812_arch_set(n, 0,0,255); // BACK = BLUE
48 else if (n<=23)
49 light_ws2812_arch_set(n, 255,0,0); // RIGHT = RED
50 else
51 light_ws2812_arch_set(n, 255,255,255); // FRONT = WHITE
52 } else {
53 s0 = s + 10 * n;
54 light_ws2812_arch_set(n, s0 % 255, (s0 + 85) % 255, (s0 + 170) % 255);
55 }
56 }
57 s += 10;
58}
59
static uint32_t s
void light_scheduler_init(void)
void light_scheduler_periodic(void)
basic LED scheduler based on WS2812 RGB led driver
void light_ws2812_arch_set(uint32_t led_number, uint8_t r, uint8_t g, uint8_t b)
set color RGB color of one led
void light_ws2812_arch_init(void)
ws2812 driver based on ChibiOS
#define WS2812_NB_LEDS
Number of LEDs.
uint16_t foo
Definition main_demo5.c:58
unsigned int uint32_t
Typedef defining 32 bit unsigned int type.