From e4d167a7d5e73b58a7d4adbc8b91499dc1e2d4c4 Mon Sep 17 00:00:00 2001 From: zhangbo <zhangbo@qq.com> Date: 星期二, 01 四月 2025 11:08:41 +0800 Subject: [PATCH] 低功耗,逻辑正确,现在室外40ma,室内20ma电流 --- keil/include/drivers/mk_misc.c | 27 ++++++++++++++++++++++----- 1 files changed, 22 insertions(+), 5 deletions(-) diff --git a/keil/include/drivers/mk_misc.c b/keil/include/drivers/mk_misc.c index 5fbbdb2..e9893d9 100644 --- a/keil/include/drivers/mk_misc.c +++ b/keil/include/drivers/mk_misc.c @@ -382,14 +382,31 @@ void sys_reset(uint32_t error) { - LOG_INFO(TRACE_MODULE_DRIVER, "system reboot%x", error); + //LOG_INFO(TRACE_MODULE_DRIVER, "system reboot%x", error); delay_us(10000); // reboot reset_module(RESET_MODULE_REBOOT); } - +void delay_US(uint32_t nTimer) +{ + uint32_t i=0; + for(i=0;i<nTimer;i++){ + __NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP(); + __NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP(); + __NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP(); + __NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP(); + __NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP(); + __NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP();__NOP(); + __NOP();__NOP();__NOP();__NOP(); + } +} +void delay_ms(uint32_t nTimer) +{ + uint32_t i=1000*nTimer; + delay_US(i); +} void delay_us(uint32_t cnt) { #define SYSTEM_CLOCK_MHZ 62.4 @@ -425,9 +442,9 @@ "bhi loop%=\n" "pop {r4,r5}\n" "exit%=:\n" - : - : [mult_hi] "i"(SYSTEM_CLOCK_MULT_HI), [mult_lo] "i"(SYSTEM_CLOCK_MULT_LO), [shift] "i"(SYSTEM_CLOCK_LSLS_BITS), [adjust] "i"(AAPCS_PREP_CYCLES), - [decr] "i"(DELAY_LOOP_CYCLES)); + : + : [mult_hi] "i"(SYSTEM_CLOCK_MULT_HI), [mult_lo] "i"(SYSTEM_CLOCK_MULT_LO), [shift] "i"(SYSTEM_CLOCK_LSLS_BITS), [adjust] "i"(AAPCS_PREP_CYCLES), + [decr] "i"(DELAY_LOOP_CYCLES)); #if defined(__GNUC__) && !defined(__ARMCC_VERSION) __asm volatile(".syntax divided\n"); -- Gitblit v1.9.3