3 * @author Shinichiro Nakamura
4 * @brief LEDタスクの実装(task_led)
6 * LEDタスクはLEDの点灯を制御するタスクである。
7 * 点灯は各タスクから次のマクロのみで指示することができる。
8 * LEDMSG(target, control);
15 #include "kernel_cfg.h"
19 #define MSG_CONTROL(n) (((n) & 0x0080) ? 1 : 0)
20 #define MSG_TARGET(n) ((n) & 0x000F)
22 void task_led(intptr_t exinf)
28 if (rcv_dtq(DTQ_LED, (intptr_t *)&msg) == E_OK) {
29 switch (MSG_TARGET(msg)) {
31 led_debug_write(0, MSG_CONTROL(msg));
34 led_debug_write(1, MSG_CONTROL(msg));
37 led_debug_write(2, MSG_CONTROL(msg));
40 led_debug_write(3, MSG_CONTROL(msg));
43 led_switch_write(0, MSG_CONTROL(msg));
46 led_switch_write(1, MSG_CONTROL(msg));
49 led_switch_write(2, MSG_CONTROL(msg));
52 led_switch_write(3, MSG_CONTROL(msg));