First
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
#include "command_handler.h"
|
||||
#include "led.h"
|
||||
|
||||
#include <zephyr/logging/log.h>
|
||||
|
||||
LOG_MODULE_REGISTER(command_handler, LOG_LEVEL_INF);
|
||||
|
||||
int command_handler(struct command_message_t *msg) {
|
||||
if (msg == NULL) {
|
||||
LOG_ERR("Received NULL message pointer");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
LOG_DBG("Processing command: %d, length: %d", msg->command, msg->length);
|
||||
|
||||
switch (msg->command) {
|
||||
case LED_TOGGLE: {
|
||||
// Toggle LED
|
||||
int led = msg->data[0];
|
||||
|
||||
if (!led) {
|
||||
led0_toggle();
|
||||
}
|
||||
else {
|
||||
led1_toggle();
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
case LED_SET: {
|
||||
// Set LED
|
||||
int led = msg->data[0];
|
||||
int state = msg->data[1];
|
||||
|
||||
led_set(led, state);
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
default: {
|
||||
LOG_WRN("Unknown command received: %d", msg->command);
|
||||
return -EINVAL;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user