From 6c1a5eb1a9891898552bb9320ba973349ca4bffa Mon Sep 17 00:00:00 2001
From: guowenxue <guowenxue@gmail.com>
Date: Wed, 08 Jul 2026 20:51:59 +0800
Subject: [PATCH] Update mdelay and gpio function

---
 ex1.ws2812b/Board/miscdev.c |   31 +++++++++++++++++++++++++++++--
 1 files changed, 29 insertions(+), 2 deletions(-)

diff --git a/ex1.ws2812b/Board/miscdev.c b/ex1.ws2812b/Board/miscdev.c
index e2cf754..986afbc 100644
--- a/ex1.ws2812b/Board/miscdev.c
+++ b/ex1.ws2812b/Board/miscdev.c
@@ -12,6 +12,33 @@
 
 /*
  *+----------------------+
+ *|    STM32 GPIO API    |
+ *+----------------------+
+ */
+
+void gpio_clk_enable(GPIO_TypeDef *port)
+{
+    if      (port == GPIOA) __HAL_RCC_GPIOA_CLK_ENABLE();
+    else if (port == GPIOB) __HAL_RCC_GPIOB_CLK_ENABLE();
+    else if (port == GPIOC) __HAL_RCC_GPIOC_CLK_ENABLE();
+    else if (port == GPIOD) __HAL_RCC_GPIOD_CLK_ENABLE();
+#ifdef GPIOE
+    else if (port == GPIOE) __HAL_RCC_GPIOE_CLK_ENABLE();
+#endif
+#ifdef GPIOF
+    else if (port == GPIOF) __HAL_RCC_GPIOF_CLK_ENABLE();
+#endif
+#ifdef GPIOG
+    else if (port == GPIOG) __HAL_RCC_GPIOG_CLK_ENABLE();
+#endif
+#ifdef GPIOH
+    else if (port == GPIOH) __HAL_RCC_GPIOH_CLK_ENABLE();
+#endif
+}
+
+
+/*
+ *+----------------------+
  *|  GPIO Led/Relay API  |
  *+----------------------+
  */
@@ -103,10 +130,10 @@
 void blink_led(int which, uint32_t interval)
 {
     turn_led(which, ON);
-    HAL_Delay(interval);
+    mdelay(interval);
 
     turn_led(which, OFF);
-    HAL_Delay(interval);
+    mdelay(interval);
 }
 
 /**

--
Gitblit v1.10.0