开FPU后功耗降不下来

来源:互联网 发布:苏州关键词优化 编辑:程序博客网 时间:2024/04/28 03:30

FPU:(Float Point Unit,浮点运算单元)FPU是专用于浮点运算的处理器



开启FPU,程序中执行浮点运算后,功耗就降不下来了,需要添加下面代码


#define FPU_EXCEPTION_MASK 0x0000009F

void power_manage(void)

{

    /* Clear exceptions and PendingIRQ from the FPU unit */

    __set_FPSCR(__get_FPSCR()  & ~(FPU_EXCEPTION_MASK));

    (void) __get_FPSCR();

    NVIC_ClearPendingIRQ(FPU_IRQn);

    uint32_t err_code = sd_app_evt_wait();

    APP_ERROR_CHECK(err_code);

}