问答

汇集网友智慧,解决技术难题

21ic问答首页 - GD32L233低功耗模式下功耗1.8mA

GD 低功耗

GD32L233低功耗模式下功耗1.8mA

Alenfun2022-01-17
#if 1
void lowpower_test(void)
{
    uint8_t count=0;
    gpio_mode_set(GPIOA,GPIO_MODE_ANALOG,GPIO_PUPD_NONE,GPIO_PIN_ALL);
    gpio_mode_set(GPIOB,GPIO_MODE_ANALOG,GPIO_PUPD_NONE,GPIO_PIN_ALL);
    gpio_mode_set(GPIOC,GPIO_MODE_ANALOG,GPIO_PUPD_NONE,GPIO_PIN_ALL);
    gpio_mode_set(GPIOD,GPIO_MODE_ANALOG,GPIO_PUPD_NONE,GPIO_PIN_ALL);
    gpio_mode_set(GPIOF,GPIO_MODE_ANALOG,GPIO_PUPD_NONE,GPIO_PIN_ALL);

    #if 0
    rcu_periph_clock_enable(RCU_GPIOC);
    gpio_mode_set(GPIOC, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE, GPIO_PIN_7);

    gpio_mode_set(GPIOA, GPIO_MODE_INPUT, GPIO_PUPD_PULLUP, GPIO_PIN_0);
    // gpio_mode_set(GPIOA, GPIO_MODE_INPUT, GPIO_PUPD_NONE, GPIO_PIN_0);
    nvic_irq_enable(EXTI0_IRQn, 2U);
    syscfg_exti_line_config(EXTI_SOURCE_GPIOA, EXTI_SOURCE_PIN0);
    exti_init(EXTI_0, EXTI_INTERRUPT, EXTI_TRIG_FALLING);
    exti_interrupt_flag_clear(EXTI_0);
    #endif

    while(1)
    {
        /* code */
        // delay_1ms(500);
        delay(2000000);
        // gpio_bit_set(GPIOC, GPIO_PIN_7);
        // delay_1ms(500);
        delay(2000000);
        // gpio_bit_reset(GPIOC, GPIO_PIN_7);
        if(++count == 5){
            count = 0;
            // systick_enable(0);
            pmu_to_deepsleepmode(PMU_LDNPDSP_LOWDRIVE, WFI_CMD, PMU_DEEPSLEEP2);
            // systick_enable(1);
        }
    }
}
#endif

/*!
    \brief      main function
    \param[in]  none
    \param[out] none
    \retval     none
*/
int main(void)
{
    // systick_config();

    #if 1
    lowpower_test();
    #endif
}



供电3.3V,芯片外围IO引脚全部断开,所有的IO设置为模拟模式,实测电流1.8mA
回答 +关注 20
6977人浏览 17人回答问题 分享 举报
17 个回答
12下一页

您需要登录后才可以回复 登录 | 注册