From 08f19873a4a31b79da6f5438a936568b0c6c5b48 Mon Sep 17 00:00:00 2001
From: zhangbo <zhangbo@qq.com>
Date: 星期二, 11 三月 2025 17:31:14 +0800
Subject: [PATCH] 蓝牙转发添加进去,测试正常,现在的逻辑是3s唤醒一次测距

---
 keil/include/drivers/mk_efuse.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/keil/include/drivers/mk_efuse.c b/keil/include/drivers/mk_efuse.c
index 3c4c20a..146cc2f 100644
--- a/keil/include/drivers/mk_efuse.c
+++ b/keil/include/drivers/mk_efuse.c
@@ -107,11 +107,11 @@
 
 void efuse_read_block(uint16_t byte_addr_start, uint16_t byte_len, uint8_t *buf)
 {
-    ASSERT(byte_addr_start + byte_len < 128, "The operation address is over range");
+    ASSERT(byte_addr_start + byte_len <= 128, "The operation address is over range");
     ASSERT(buf != NULL, "The read buffer pointer is null");
 
     EFUSE_CTRL->ADDR = EFUSE_ADDR_BYTE_ADDR(byte_addr_start);
-    EFUSE_CTRL->LENGTH = byte_len;
+    EFUSE_CTRL->LENGTH = byte_len - 1;
     EFUSE_CTRL->CTRL = EFUSE_CTRL_ACCESS_EN_MSK | EFUSE_CTRL_ACCESS_MODE(EFUSE_LOAD_BLOCK);
     while (EFUSE_CTRL->SEQUENCE_CNT & EFUSE_SEQUENCE_CNT_BUSY_MSK)
     {
@@ -181,7 +181,7 @@
         uint8_t val = REG_READ_BYTE(EFUSE_SHADOW_BASE | byte_addr);
         REG_WRITE_BYTE(EFUSE_SHADOW_BASE | byte_addr, (uint8_t)(val | (1 << (bit_offset & 0x7))));
         EFUSE_CTRL->ADDR = EFUSE_ADDR_BYTE_ADDR(byte_addr) | EFUSE_ADDR_BIT_OFFSET(bit_offset);
-        EFUSE_CTRL->LENGTH = 1;
+        EFUSE_CTRL->LENGTH = 0;
         EFUSE_CTRL->CTRL = EFUSE_CTRL_ACCESS_EN_MSK | EFUSE_CTRL_ACCESS_MODE(EFUSE_PROGRAM_BLOCK);
     }
     while (EFUSE_CTRL->SEQUENCE_CNT & EFUSE_SEQUENCE_CNT_BUSY_MSK)

--
Gitblit v1.9.3