#include #include #include static const struct gpio_dt_spec led = GPIO_DT_SPEC_GET(DT_ALIAS(led0), gpios); #define STACKSIZE 1024 #define PRIORITY 7 void blink_thread(void *p1, void *p2, void *p3) { int ret; if (!gpio_is_ready_dt(&led)) { printk("Error: LED device %s is not ready\n", led.port->name); return; } ret = gpio_pin_configure_dt(&led, GPIO_OUTPUT_INACTIVE); if (ret < 0) { printk("Error %d: failed to configure LED pin\n", ret); return; } while (1) { printk("LED ON\n"); gpio_pin_set_dt(&led, 1); k_msleep(500); printk("LED OFF\n"); gpio_pin_set_dt(&led, 0); k_msleep(500); } } K_THREAD_DEFINE(blink_thread_id, STACKSIZE, blink_thread, NULL, NULL, NULL, PRIORITY, 0, 0); int main(void) { printk("Blinky starting (main thread)...\n"); return 0; }