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