侵权投诉

处理器电源管理主要实现方式是什么?

2020-06-09 15:27 次阅读

电源管理组件

嵌入式系统低功耗管理的目的在于满足用户对性能需求的前提下,尽可能降低系统能耗以延长设备待机时间。高性能与有限的电池能量在嵌入式系统中矛盾最为突出,硬件低功耗设计与软件低功耗管理的联合应用成为解决矛盾的有效手段。现在的各种MCU都或多或少的在低功耗方面提供了管理接口。比如对主控时钟频率的调整、工作电压的改变、总线频率的调整甚至关闭、外围设备工作时钟的关闭等。有了硬件上的支持,合理的软件设计就成为节能的关键,一般可以把低功耗管理分为三个类别:

处理器电源管理主要实现方式:对CPU频率的动态管理,以及系统空闲时对工作模式的调整。

设备电源管理主要实现方式:关闭个别闲置设备

系统平台电源管理主要实现方式:针对特定系统平台的非常见设备具体定制。

随着物联网(IoT)的兴起,产品对功耗的需求越来越强烈。作为数据采集传感器节点通常需要在电池供电时长期工作,而作为联网的SOC也需要有快速的响应功能和较低的功耗。

在产品开发的起始阶段,首先考虑是尽快完成产品的功能开发。在产品功能逐步完善之后,就需要加入电源管理(PowerManagement,以下简称PM)功能。为了适应IoT的这种需求,RT-Thread提供了电源管理组件。电源管理组件的理念是尽量透明,使得产品加入低功耗功能更加轻松。

PM组件介绍

RT-Thread的PM组件采用分层设计思想,分离架构和芯片相关的部分,提取公共部分作为核心。在对上层提供通用的接口同时,也让底层驱动对组件的适配变得更加简单。

处理器电源管理主要实现方式是什么?

主要特点

RT-ThreadPM组件主要特点如下所示:

基于模式来管理功耗,空闲时动态调整工作模式,支持多个等级的休眠。

对应用透明,组件在底层自动完成电源管理。

支持运行模式下动态变频,根据模式自动更新设备的频率配置,确保在不同的运行模式都可以正常工作。

支持设备电源管理,根据模式自动管理设备的挂起和恢复,确保在不同的休眠模式下可以正确的挂起和恢复。

支持可选的休眠时间补偿,让依赖OSTick的应用可以透明使用。

向上层提供设备接口,如果打开了devfs组件,那么也可以通过文件系统接口访问。

工作原理

低功耗的本质是系统空闲时CPU停止工作,中断或事件唤醒后继续工作。在RTOS中,通常包含一个IDLE任务,该任务的优先级最低且一直保持就绪状态,当高优先级任务未就绪时,OS执行IDLE任务。一般地,未进行低功耗处理时,CPU在IDLE任务中循环执行空指令。RT-Thread的电源管理组件在IDLE任务中,通过对CPU、时钟和设备等进行管理,从而有效降低系统的功耗。

处理器电源管理主要实现方式是什么?

在上图所示,当高优先级任务运行结束或被挂起时,系统将进入IDLE任务中。在IDLE任务执行后,它将判断系统是否可以进入到休眠状态(以节省功耗)。如果可以进入休眠,将根据芯片情况关闭部分硬件模块,OSTick也非常有可能进入暂停状态。此时电源管理框架会根据系统定时器情况,计算出下一个超时时间点,并设置低功耗定时器,让设备能够在这个时刻点唤醒,并进行后续的工作。当系统被(低功耗定时器中断或其他唤醒中断源)唤醒后,系统也需要知道睡眠时间长度是多少,并对OSTick进行补偿,让系统的OStick值调整为一个正确的值。

低功耗状态和模式

RT-ThreadPM组件将系统划分为两种状态:运行状态(RUN)和休眠状态(Sleep)。运行状态控制CPU的频率,适用于变频场景;休眠状态根据SOC特性实现休眠CPU,以降低功耗。两种状态分别使用不同的API接口,独立控制。

休眠状态休眠状态也就是通常意义上的低功耗状态,通过关闭外设、执行SOC电源管理接口,降低系统功耗。休眠状态又分为六个模式,呈现为金字塔的形式。随着模式增加,功耗逐级递减的特点。下面是休眠状态下模式的定义,开发者可根据具体的SOC实现相应的模式,但需要遵循功耗逐级降低的特点。

处理器电源管理主要实现方式是什么?

运行状态运行状态通常用于改变CPU的运行频率,独立于休眠模式。当前运行状态划分了四个等级:高速、正常、中速、低速,如下:

处理器电源管理主要实现方式是什么?

PM组件的实现接口

在RT-ThradPM组件中,外设或应用通过投票机制对所需的功耗模式进行投票,当系统空闲时,根据投票数决策出合适的功耗模式,调用抽象接口,控制芯片进入低功耗状态,从而降低系统功耗。当未进行进行任何投票时,会以默认模式进入(通常为空闲模式)。

pm组件的控制块:

staticstructrt_pm_pm;

API接口:

请求休眠模式

voidrt_pm_request(uint8_tsleep_mode);

sleep_mode取以下枚举值:

enum{/*sleepmodes*/PM_SLEEP_MODE_NONE=0,/*活跃状态*/PM_SLEEP_MODE_IDLE,/*空闲模式(默认)*/PM_SLEEP_MODE_LIGHT,/*轻度睡眠模式*/PM_SLEEP_MODE_DEEP,/*深度睡眠模式*/PM_SLEEP_MODE_STANDBY,/*待机模式*/PM_SLEEP_MODE_SHUTDOWN,/*关断模式*/PM_SLEEP_MODE_MAX,};

调用该函数会将对应的模式计数加1,并锁住该模式。此时如果请求更低级别的功耗模式,将无法进入,只有释放(解锁)先前请求的模式后,系统才能进入更低的模式;向更高的功耗模式请求则不受此影响。该函数需要和rt_pm_release配合使用,用于对某一阶段或过程进行保护。下面是具体代码实现:

voidrt_pm_request(rt_uint8_tmode){rt_base_tlevel;structrt_pm*pm;if(_pm_init_flag==0)return;if(mode》(PM_SLEEP_MODE_MAX-1))return;level=rt_hw_interrupt_disable();pm=&_pm;if(pm-》modes[mode]《255)pm-》modes[mode]++;//将对应的模式计数加1rt_hw_interrupt_enable(level);}

释放休眠模式

voidrt_pm_release(uint8_tsleep_mode);

调用该函数会将对应的模式计数减1,配合rt_pm_request使用,释放先前请求的模式。下面是具体代码实现:

voidrt_pm_release(rt_uint8_tmode){rt_ubase_tlevel;structrt_pm*pm;if(_pm_init_flag==0)return;if(mode》(PM_SLEEP_MODE_MAX-1))return;level=rt_hw_interrupt_disable();pm=&_pm;if(pm-》modes[mode]》0)pm-》modes[mode]--;//将对应的模式计数减1rt_hw_interrupt_enable(level);}

特殊情况下,比如某个阶段并不允许系统进入更低的功耗模式,此时可以通过rt_pm_request和rt_pm_release对该过程进行保护。如I2C读取数据期间,不允许进入深度睡眠模式(可能会导致外设停止工作),因此可以做如下处理:

/*请求轻度睡眠模式(I2C外设该模式下正常工作)*/rt_pm_request(PM_SLEEP_MODE_LIGHT);/*读取数据过程*//*释放该模式*/rt_pm_release(PM_SLEEP_MODE_LIGHT);

设置运行模式

intrt_pm_run_enter(uint8_trun_mode);

run_mode可以取以下枚举值:

enum{/*runmodes*/PM_RUN_MODE_HIGH_SPEED=0,/*高速*/PM_RUN_MODE_NORMAL_SPEED,/*正常(默认)*/PM_RUN_MODE_MEDIUM_SPEED,/*中速*/PM_RUN_MODE_LOW_SPEED,/*低速*/PM_RUN_MODE_MAX,};

调用该函数改变CPU的运行频率,从而降低运行时的功耗。此函数只提供级别,具体的CPU频率应在移植阶段视实际情况而定。

下面是具体代码实现:

intrt_pm_run_enter(rt_uint8_tmode){rt_base_tlevel;structrt_pm*pm;if(_pm_init_flag==0)return-RT_EIO;if(mode》PM_RUN_MODE_MAX)return-RT_EINVAL;level=rt_hw_interrupt_disable();pm=&_pm;if(mode《pm-》run_mode){/*changesystemruningmode*/pm-》ops-》run(pm,mode);/*changerdevicefrequency*/_pm_device_frequency_change(mode);}else{pm-》flags|=RT_PM_FREQUENCY_PENDING;}pm-》run_mode=mode;rt_hw_interrupt_enable(level);returnRT_EOK;}

设置进入/退出休眠模式的回调通知

voidrt_pm_notify_set(void(*notify)(uint8_tevent,uint8_tmode,void*data),void*data);

event为以下两个枚举值,分别标识进入/退出休眠模式。

enum{RT_PM_ENTER_SLEEP=0,/*进入休眠模式*/RT_PM_EXIT_SLEEP,/*退出休眠模式*/};

在应用进入/退出休眠模式会触发回调通知。下面是具体代码实现:

voidrt_pm_notify_set(void(*notify)(rt_uint8_tevent,rt_uint8_tmode,void*data),void*data){_pm_notify.notify=notify;_pm_notify.data=data;}

注册PM设备

voidrt_pm_device_register(structrt_device*device,conststructrt_device_pm_ops*ops)

与应用不同,某些外设可能在进入低功耗状态时执行特定操作,退出低功耗时采取措施恢复,此时可以通过注册PM设备来实现。通过注册PM设备,在进入低功耗状态之前,会触发注册设备的suspend回调,开发者可在回调里执行自己的操作;类似地,从低功耗状态退出时,也会触发resume回调。运行模式下的频率改变同样会触发设备的frequency_change回调。下面是具体代码实现:

voidrt_pm_device_register(structrt_device*device,conststructrt_device_pm_ops*ops){rt_base_tlevel;structrt_device_pm*device_pm;RT_DEBUG_NOT_IN_INTERRUPT;level=rt_hw_interrupt_disable();device_pm=(structrt_device_pm*)RT_KERNEL_REALLOC(_pm.device_pm,(_pm.device_pm_number+1)*sizeof(structrt_device_pm));if(device_pm!=RT_NULL){_pm.device_pm=device_pm;_pm.device_pm[_pm.device_pm_number].device=device;_pm.device_pm[_pm.device_pm_number].ops=ops;_pm.device_pm_number+=1;}rt_hw_interrupt_enable(level);}

设置进入/退出休眠模式的回调通知和注册为设备的回调通知流程:

处理器电源管理主要实现方式是什么?

首先应用设置进出休眠状态的回调函数,然后调用rt_pm_request请求休眠模式,触发休眠操作;PM组件在系统空闲时检查休眠模式计数,根据投票数给出推荐的模式;接着PM组件调用notfiy通知应用,告知即将进入休眠模式;然后对注册的PM设备执行挂起操作,返回OK后执行SOC实现的的休眠模式,系统进入休眠状态(如果使能时间补偿,休眠之前会先启动低功耗定时器)。此时CPU停止工作,等待事件或者中断唤醒。当系统被唤醒后,由于全局中断为关闭状态,系统继续从该处执行,获取睡眠时间补偿系统的心跳,依次唤醒设备,通知应用从休眠模式退出。如此一个周期执行完毕,退出,等待系统下次空闲。模式的切换代码实现:当任务进入到空闲线程,最终是调用此函数进入低功耗和唤醒的

staticvoid_pm_change_sleep_mode(structrt_pm*pm,rt_uint8_tmode){rt_tick_ttimeout_tick,delta_tick;rt_base_tlevel;intret=RT_EOK;if(mode==PM_SLEEP_MODE_NONE){pm-》sleep_mode=mode;pm-》ops-》sleep(pm,PM_SLEEP_MODE_NONE);}else{level=rt_pm_enter_critical(mode);/*Notifyappwillentersleepmode*/if(_pm_notify.notify)_pm_notify.notify(RT_PM_ENTER_SLEEP,mode,_pm_notify.data);/*Suspendallperipheraldevice*/ret=_pm_device_suspend(mode);if(ret!=RT_EOK){_pm_device_resume(mode);if(_pm_notify.notify)_pm_notify.notify(RT_PM_EXIT_SLEEP,mode,_pm_notify.data);rt_pm_exit_critical(level,mode);return;}/*Tickless*/if(pm-》timer_mask&(0x01《《mode)){timeout_tick=rt_timer_next_timeout_tick();if(timeout_tick==RT_TICK_MAX){if(pm-》ops-》timer_start){pm-》ops-》timer_start(pm,RT_TICK_MAX);}}else{timeout_tick=timeout_tick-rt_tick_get();if(timeout_tick《RT_PM_TICKLESS_THRESH){mode=PM_SLEEP_MODE_IDLE;}else{pm-》ops-》timer_start(pm,timeout_tick);}}}/*enterlowerpowerstate*/pm-》ops-》sleep(pm,mode);/*wakeupfromlowerpowerstate*/if(pm-》timer_mask&(0x01《《mode)){delta_tick=pm-》ops-》timer_get_tick(pm);pm-》ops-》timer_stop(pm);if(delta_tick){rt_tick_set(rt_tick_get()+delta_tick);rt_timer_check();}}/*resumealldevice*/_pm_device_resume(pm-》sleep_mode);if(_pm_notify.notify)_pm_notify.notify(RT_PM_EXIT_SLEEP,mode,_pm_notify.data);rt_pm_exit_critical(level,mode);}}

移植的实现原理

RT-Thread低功耗管理系统从设计上分离运行模式和休眠模式,独立管理,运行模式用于变频和变电压,休眠调用芯片的休眠特性。对于多数芯片和开发来说,可能并不需要考虑变频和变电压,仅需关注休眠模式。底层功能的实现已经有Sunwancn大神对STM32做了全系列的适配,以下是底层实现原理,用户也可以自行根据自身情况对底层进行裁剪或增强。(注意:驱动可能有更新,移植请到gitee下载最新pm驱动。地址在pm-ports-stm32-new分支:https://gitee.com/sunwancn/rt-thread/tree/pm-ports-stm32-new)

PM组件的底层功能都是通过structrt_pm_ops结构体里的函数完成:

/***lowpowermodeoperations*/structrt_pm_ops{void(*sleep)(structrt_pm*pm,uint8_tmode);void(*run)(structrt_pm*pm,uint8_tmode);void(*timer_start)(structrt_pm*pm,rt_uint32_ttimeout);void(*timer_stop)(structrt_pm*pm);rt_tick_t(*timer_get_tick)(structrt_pm*pm);};

移植休眠模式移植休眠模式仅需关注sleep接口,下面是具体的实现:

voidstm32_sleep(structrt_pm*pm,rt_uint8_tmode){switch(mode){casePM_SLEEP_MODE_NONE:break;casePM_SLEEP_MODE_IDLE:if(pm-》run_mode==PM_RUN_MODE_LOW_SPEED){/*EnterLPSLEEPMode,Enablelow-powerregulator*/HAL_PWR_EnterSLEEPMode(PWR_LOWPOWERREGULATOR_ON,PWR_SLEEPENTRY_WFI);}else{/*EnterSLEEPMode,MainregulatorisON*/HAL_PWR_EnterSLEEPMode(PWR_MAINREGULATOR_ON,PWR_SLEEPENTRY_WFI);}break;casePM_SLEEP_MODE_LIGHT:if(pm-》run_mode==PM_RUN_MODE_LOW_SPEED){__HAL_FLASH_SLEEP_POWERDOWN_ENABLE();/*EnterLPSLEEPMode,Enablelow-powerregulator*/HAL_PWR_EnterSLEEPMode(PWR_LOWPOWERREGULATOR_ON,PWR_SLEEPENTRY_WFI);__HAL_FLASH_SLEEP_POWERDOWN_DISABLE();}else{/*EnterSLEEPMode,MainregulatorisON*/HAL_PWR_EnterSLEEPMode(PWR_MAINREGULATOR_ON,PWR_SLEEPENTRY_WFI);}break;casePM_SLEEP_MODE_DEEP:/*DisableSysTickinterrupt*/CLEAR_BIT(SysTick-》CTRL,(rt_uint32_t)SysTick_CTRL_TICKINT_Msk);if(pm-》run_mode==PM_RUN_MODE_LOW_SPEED){/*ClearLPRbittobackthenormalrunmode*/CLEAR_BIT(PWR-》CR1,PWR_CR1_LPR);/*EnterSTOP2mode*/HAL_PWREx_EnterSTOP2Mode(PWR_STOPENTRY_WFI);/*SetRegulatorparametertolowpowerrunmode*/SET_BIT(PWR-》CR1,PWR_CR1_LPR);}else{/*EnterSTOP2mode*/HAL_PWREx_EnterSTOP2Mode(PWR_STOPENTRY_WFI);}/*EnableSysTickinterrupt*/SET_BIT(SysTick-》CTRL,(rt_uint32_t)SysTick_CTRL_TICKINT_Msk);/*Re-configurethesystemclock*/systemclock_reconfig(pm-》run_mode);break;casePM_SLEEP_MODE_STANDBY:__HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU);/*EnterSTANDBYmode*/HAL_PWR_EnterSTANDBYMode();break;casePM_SLEEP_MODE_SHUTDOWN:__HAL_PWR_CLEAR_FLAG(PWR_FLAG_WU);/*EnterSHUTDOWNNmode*/HAL_PWREx_EnterSHUTDOWNMode();break;default:RT_ASSERT(0);break;}}

移植时间补偿接口某些情况下,我们可能需要系统在空闲时进入Stop模式,以达到更低的降功耗效果。根据手册可知,Stop2模式会关闭系统时钟,当前的OSTick基于内核的Systick定时器。那么在系统时钟停止后,OSTick也会停止,对于某些依赖OSTick的应用,在进入Stop2模式,又被中断唤醒后,就会出现问题,因此需要在系统唤醒后,对OSTick进行补偿。Stop2模式下,绝大多数外设都停止工作,仅低功耗定时器1(LP_TIM1)和RTC,选择LSI作为时钟源后,仍然能正常运行,所以可以选择LP_TIM1或者RTC作为Stop2模式的时间补偿定时器。

休眠的时间补偿需要实现三个接口,分别用于启动低功耗定时器、停止定时器、唤醒后获取休眠的Tick,下面是具体的实现:

staticvoidstm32_pm_timer_start(structrt_pm*pm,rt_uint32_ttimeout){RT_ASSERT(pm!=RT_NULL);RT_ASSERT(timeout》0);if(timeout!=RT_TICK_MAX){/*ConvertOSTicktoPMtimertimeoutvalue*/timeout=stm32_pm_tick_from_os_tick(timeout);if(timeout》stm32_pmtim_get_tick_max()){timeout=stm32_pmtim_get_tick_max();}/*EnterPM_TIMER_MODE*/stm32_pmtim_start(timeout);}}

staticvoidstm32_pm_timer_stop(structrt_pm*pm){RT_ASSERT(pm!=RT_NULL);/*ResetPMtimerstatus*/stm32_pmtim_stop();}

staticrt_tick_tstm32_pm_timer_get_tick(structrt_pm*pm){rt_uint32_ttimer_tick;RT_ASSERT(pm!=RT_NULL);timer_tick=stm32_pmtim_get_current_tick();returnstm32_os_tick_from_pm_tick(timer_tick);}

休眠时间补偿的移植相对并不复杂,根据Tick配置低功耗定时器超时,唤醒后获取实际休眠时间并转换为OSTick,告知PM组件即可。

移植运行模式移植休眠模式仅需关注run接口,下面是具体的实现:

voidstm32_run(structrt_pm*pm,rt_uint8_tmode){staticrt_uint32_tlast_mode;staticchar*run_str[]=PM_RUN_MODE_NAMES;structrcc_conf_structsconf=_rcc_conf[mode];if(mode==last_mode)return;if(stm32_run_freq[mode][0]!=stm32_run_freq[last_mode][0]){if(_rcc_conf[last_mode].low_pow_run_en&&!sconf.low_pow_run_en){/*DisabletheLow-powerRunmode*/HAL_PWREx_DisableLowPowerRunMode();}systemclock_msi_on(last_mode);if(mode《last_mode){/*Frequencyincrease*/HAL_PWREx_ControlVoltageScaling(sconf.volt_scale);_set_sysclock[mode]();}else{/*Frequencyreduce*/_set_sysclock[mode]();HAL_PWREx_ControlVoltageScaling(sconf.volt_scale);}if(sconf.volt_scale==PWR_REGULATOR_VOLTAGE_SCALE2||_osc_conf.osc_type==RCC_OSCILLATORTYPE_MSI){/*ConfigurethewakeupfromstopclocktoMSI*/__HAL_RCC_WAKEUPSTOP_CLK_CONFIG(RCC_STOP_WAKEUPCLOCK_MSI);}else{/*ConfigurethewakeupfromstopclocktoHSI*/__HAL_RCC_WAKEUPSTOP_CLK_CONFIG(RCC_STOP_WAKEUPCLOCK_HSI);}if(sconf.low_pow_run_en){/*EnabletheLow-powerRunmode*/HAL_PWREx_EnableLowPowerRunMode();}systemclock_msi_off(mode);#ifdefined(RT_USING_SERIAL)/*Re-ConfiguretheUARTs*/uart_console_reconfig();#endif/*Re-ConfiguretheSysticktime*/HAL_SYSTICK_Config(HAL_RCC_GetHCLKFreq()/RT_TICK_PER_SECOND);/*Re-ConfiguretheSystick*/HAL_SYSTICK_CLKSourceConfig(SYSTICK_CLKSOURCE_HCLK);}last_mode=mode;rt_kprintf(“switchto%smode,frequency=%d%sHz”,run_str[mode],stm32_run_freq[mode][0],(stm32_run_freq[mode][1]==1)?“M”:“K”);if((stm32_run_freq[mode][0]/stm32_run_freq[mode][1])》OSC_CONF_SYS_FREQ_MAX)rt_kprintf(“warning:Thefrequencyhasoverthan%dMHz”,OSC_CONF_SYS_FREQ_MAX);}

自定义运行级别时钟树配置函数PM组件驱动在给定运行频率时,已经尽量自动最优化配置时钟树,但有时外设时钟还是没有达到自己想要的频率,这时可以自己配置时钟树,在board.c添加以下单个或所有函数,代码可参考SystemClock_Config()函数:

rt_uint16_tstm32_run_freq[PM_RUN_MODE_MAX][2]={/*Theactualfrequencyis1/divisorMHz,divisor={1,1000}*//*{sysclkfrequency,divisor}*/{/*配置高频运行时的时钟*/,/*分频系数*/},/*Highspeed*/{/*配置普通运行时的时钟*/,/*分频系数*/},/*Normalspeed*/{/*配置中低运行时的时钟*/,/*分频系数*/},/*Mediumspeed*/{/*配置低频运行时的时钟*/,/*分频系数*/},/*Lowspeed,MSIclock2.0MHz*/};voidstm32_systemclock_high(void){/*添加代码,配置高频运行时的时钟树*/}voidstm32_systemclock_normal(void){/*添加代码,配置普通速度运行时的时钟树*/}voidstm32_systemclock_medium(void){/*添加代码,配置中低频运行时的时钟树*/}voidstm32_systemclock_low(void){/*添加代码,配置低频运行时的时钟树*/}

当低速的频率小于2MHz时,要注意以下2点:

串口波特率如果设置过高,将不能正常通信

在时钟频率很低时,要适当减小RT_TICK_PER_SECOND值,不然由于OS_tick过短,某些线程将不能完成任务,从而不能进入低功耗模式

初始化PM组件注意:休眠模式的时间补偿需要在初始化阶段通过设置timer_mask的对应模式的bit控制开启。例如需要开启DeepSleep模式下的时间补偿,在实现timer相关的ops接口后,初始化时设置相应的bit:

intdrv_pm_hw_init(void){staticconststructrt_pm_ops_ops={stm32_sleep,stm32_run,stm32_pm_timer_start,stm32_pm_timer_stop,stm32_pm_timer_get_tick};rt_uint8_ttimer_mask=0;/*EnablePowerClock*/__HAL_RCC_PWR_CLK_ENABLE();/*initializetimermask*/timer_mask=1UL《《PM_SLEEP_MODE_DEEP;/*initializesystempmmodule*/rt_system_pm_init(&_ops,timer_mask,RT_NULL);return0;}INIT_BOARD_EXPORT(drv_pm_hw_init);

voidrt_system_pm_init(conststructrt_pm_ops*ops,rt_uint8_ttimer_mask,void*user_data){structrt_device*device;structrt_pm*pm;pm=&_pm;device=&(_pm.parent);device-》type=RT_Device_Class_PM;device-》rx_indicate=RT_NULL;device-》tx_complete=RT_NULL;#ifdefRT_USING_DEVICE_OPSdevice-》ops=&pm_ops;#elsedevice-》init=RT_NULL;device-》open=RT_NULL;device-》close=RT_NULL;device-》read=_rt_pm_device_read;device-》write=_rt_pm_device_write;device-》control=_rt_pm_device_control;#endifdevice-》user_data=user_data;/*registerPMdevicetothesystem*/rt_device_register(device,“pm”,RT_DEVICE_FLAG_RDWR);rt_memset(pm-》modes,0,sizeof(pm-》modes));pm-》sleep_mode=_pm_default_sleep;pm-》run_mode=RT_PM_DEFAULT_RUN_MODE;pm-》timer_mask=timer_mask;pm-》ops=ops;pm-》device_pm=RT_NULL;pm-》device_pm_number=0;_pm_init_flag=1;}

STM32L4移植PM

STM32L4的低功耗模式简介:

STM32L4系列是ST公司推出的一款超低功耗的Crotex-M4内核的MCU,支持多个电源管理模式,其中最低功耗Shutdown模式下,待机电流仅30nA。ST公司把L4系列的电管管理分为很多种,但各个模式的并非功耗逐级递减的特点,下面是各个模式之间的状态转换图:

处理器电源管理主要实现方式是什么?

尽管STM32L4系列的低功耗模式很多,但本质上并不复杂,理解它的原理有助于我们移植驱动,同时更好的在产品中选择合适的模式。最终决定STM32L4系列系统功耗的主要是三个因素:稳压器(voltageregulator)、CPU工作频率、芯片自身低功耗的处理,下面分别对三个因素进行阐述。

稳压器L4使用两个嵌入式线性稳压器为所有数字电路、待机电路以及备份时钟域供电,分别是主稳压器(mainregulator,下文简称MR)和低功耗稳压器(low-powerregulator,下文简称LPR)。稳压器在复位后处于使能状态,根据应用模式,选择不同的稳压器对Vcore域供电。其中,MR的输出电压可以由软件配置为不同的范围(Range1和Rnage2)。稳压器应用场合

稳压器应用场合

MR(Range1)Vcore=1.2V,用于运行模式、睡眠模式和停止模式0,MR未Vcore域提供全功率

MR(Range2)Vcore=1.0V,使用的场景同上

LPR用于低功耗运行模式、低功耗休眠模式、停止模式1、停止模式2

OFFStandby和Shutdown模式下,MR和LPR都被关闭

CPU工作频率通过降低CPU的主频达到降低功耗的目的:MR工作在Range1正常模式时,SYSCLK最高可以工作在80M;MR工作在Range2时,SYSCLK最高不能超过26M;低功耗运行模式和低功耗休眠模式,即Vcore域由LPR供电,SYSCLK必须小于2M。

芯片本身的低功耗处理芯片本身定义了一系列的休眠模式,如Sleeep、Stop、Standby和Shutdown,前面的四种模式功耗逐渐降低,实质是芯片内部通过关闭外设和时钟来实现。

配置工程

配置PM组件:

配置内核选项:使用PM组件需要更大的IDLE线程的栈,这里使用了1024字节

在空闲线程中会调用rt_system_power_manager接口来进入低功耗模式:

/***Thisfunctionwillentercorrespondingpowermode.*/voidrt_system_power_manager(void){rt_uint8_tmode;if(_pm_init_flag==0)return;/*CPUfrequencyscalingaccordingtotheruningmodesettings*/_pm_frequency_scaling(&_pm);/*LowPowerModeProcessing*/mode=_pm_select_sleep_mode(&_pm);_pm_change_sleep_mode(&_pm,mode);}

保存后,可以看到pm.c已经被添加到了工程:

处理器电源管理主要实现方式是什么?

然后添加PM组件的设备驱动,驱动的最新地址:pm-ports-stm32-new分支:https://gitee.com/sunwancn/rt-thread/tree/pm-ports-stm32-new注意:目前所使用的驱动不是最新版本,移植请到gitee下载最新pm驱动。

从t-threadspstm32librariesHAL_Drivers,拷贝如下四个文件到工程的drivers文件夹下:

本项目选择的是使用RTC作为STOP后的时间补偿,所以需要打开rtc设备和所使用的宏:

处理器电源管理主要实现方式是什么?

注:如果没有使用RTT的自身的RTC函数的话,前面2个宏可以不要。
责任编辑:pj

收藏 人收藏
分享:

评论

相关推荐

关于新型加固型电源的性能与能应用的领域

2021年3月5日消息,Components Bureau增加了Powerbox的新型加固型电源,专....
的头像 beanxyy 发表于 03-07 09:54 20次 阅读
关于新型加固型电源的性能与能应用的领域

Redmi K40详细规格配置参数一览

上个月,Redmi K40系列正式发布,起售价1999元,在同档位极具竞争力。
的头像 lhl545545 发表于 03-07 09:52 75次 阅读
Redmi K40详细规格配置参数一览

OPPO Reno5 K全渠道开售 获得泰尔实验室五级抗老化认证

3月6日消息,今日,OPPO官方通过微博表示,OPPO Reno5系列全新配色“恋恋清风”正式开售,....
的头像 lhl545545 发表于 03-07 09:44 86次 阅读
OPPO Reno5 K全渠道开售 获得泰尔实验室五级抗老化认证

联动台的电源安全常识

连接带钥匙用于从AC 50HZ或60HZ工作电压传输到220V和AC电压到380V控制电路。
的头像 Les 发表于 03-07 09:25 79次 阅读
联动台的电源安全常识

华为P50或将首发搭载索尼1英寸IMX800

按照华为产品线更新传统,每年上半年的重头戏就是主打颜值和拍照的华为P系列。
的头像 lhl545545 发表于 03-07 08:58 115次 阅读
华为P50或将首发搭载索尼1英寸IMX800

国产组件已实现进口替代,大尺寸组件将成为市场主流产品

光伏组件是生产光伏发电系统和光伏应用产品的重要一环。经过多年发展,当前我国光伏组件已经实现了进口替代....
的头像 牵手一起梦 发表于 03-06 10:10 201次 阅读
国产组件已实现进口替代,大尺寸组件将成为市场主流产品

适用于RTX 3060显卡的电源推荐

2月25日,NVIDIA发布了全新产品——RTX 3060。虽说NVIDIA推荐系统电源功率仅550....
发表于 03-05 17:16 579次 阅读
适用于RTX 3060显卡的电源推荐

智能手机企业迎战缺“芯”涨价潮

相较2020年开年疫情爆发给手机电子行业带来重挫的黑色一季度,今年,各家厂商在5G换机即将爆发的风口....
的头像 我快闭嘴 发表于 03-05 17:03 255次 阅读
智能手机企业迎战缺“芯”涨价潮

2021年2月Android手机好评排行榜公布

据了解,华为Mate 40在1月份的安兔兔好评榜中,就已经从第六名冲到第二名,近一个月来,华为Mat....
的头像 我快闭嘴 发表于 03-05 16:35 223次 阅读
2021年2月Android手机好评排行榜公布

华为:3亿台设备即将升级鸿蒙系统

自2017年起,华为麒麟处理器逐渐获得消费者认可,手机业务也进入快速发展期。2017年,华为共卖出1....
的头像 我快闭嘴 发表于 03-05 16:24 501次 阅读
华为:3亿台设备即将升级鸿蒙系统

传台积电或在今年下半年风险试产3nm制造工艺

2020年下半年,5nm芯片刚刚成为手机处理器市场主流时,台积电和三星就已经开始针对3nm工艺展开角....
的头像 我快闭嘴 发表于 03-05 15:57 254次 阅读
传台积电或在今年下半年风险试产3nm制造工艺

恩智浦简即将推出i.MX9系列处理器

恩智浦日前预告了其带有NPU的“ i.MX9”平台,并发布了低功耗,基于Cortex-A35的i.M....
的头像 我快闭嘴 发表于 03-05 15:10 241次 阅读
恩智浦简即将推出i.MX9系列处理器

重合闸断路器的有误安裝包括什么

重合闸断路器的有误安裝包括什么?根据我所把握,重要包括下述两个方面: 1、重合闸断路器的安裝位置不当....
发表于 03-05 14:34 44次 阅读
重合闸断路器的有误安裝包括什么

最新4K智能电视芯片MT9638带来哪些改变?

伴随着智能电视的到来,越来越多的用户从原本不太观看电视的情况下,进行了转变。尽管,智能手机和电脑都还....
的头像 lhl545545 发表于 03-05 14:30 831次 阅读
最新4K智能电视芯片MT9638带来哪些改变?

Redmi Note 10系列首发搭载骁龙732G处理器

3月4日,Redmi Note 10系列正式在印度发布。Redmi Note 10、Redmi No....
的头像 lhl545545 发表于 03-05 13:47 346次 阅读
Redmi Note 10系列首发搭载骁龙732G处理器

一加Nord 2部分配置规格参数曝光

在去年8月,一加发布了Nord产品线,探索一加在新价位市场中的竞争力,目前已经取得很好的市场反馈,所....
的头像 lhl545545 发表于 03-05 11:54 133次 阅读
一加Nord 2部分配置规格参数曝光

Redmi K40系列创下“5分钟销量突破30万台”大关

Redmi K40系列近日已在国内开售,并创下“5分钟销量突破30万台”的首销成绩。这款热门新机也将....
的头像 lhl545545 发表于 03-05 11:29 175次 阅读
Redmi K40系列创下“5分钟销量突破30万台”大关

Arm Cortex-R52+ 增强时间关键型汽车设计

Arm近日发布了Arm® Cortex®-R系列的最新产品Cortex-R52+,可支持汽车电子设计....
发表于 03-05 11:17 524次 阅读
Arm Cortex-R52+ 增强时间关键型汽车设计

采用智能型集成MOSFET驱动器增加数字电源控制器的性能可靠性

在电源系统中,MOSFET驱动器一般仅用于将PWM控制IC的输出信号转换为高速的大电流信号,以便以最....
的头像 电子设计 发表于 03-05 10:56 328次 阅读
采用智能型集成MOSFET驱动器增加数字电源控制器的性能可靠性

ST智慧电源管理的解决方案降低待机期间的能耗

现今,私人家中和办公室使用的电气产品的数目正在以极快的速度增加。这些产品中的大多数,例如音频/视频产....
的头像 电子设计 发表于 03-05 10:45 389次 阅读
ST智慧电源管理的解决方案降低待机期间的能耗

专用控制芯片AT2005B的性能特点及在ATX电源中的设计方案

一提到ATX电源,就使人联想起脉宽调制芯片TL494与电压比较器LM339两块“经典“IC来。而新型....
的头像 电子设计 发表于 03-05 10:33 302次 阅读
专用控制芯片AT2005B的性能特点及在ATX电源中的设计方案

华为P50系列新品亮点前瞻

每年的三月份,华为都会发布最新的P系列旗舰手机,然而在芯片断供的情况下,今年华为还能如期发布P50系....
的头像 如意 发表于 03-05 10:19 352次 阅读
华为P50系列新品亮点前瞻

魅族18系列重磅上线新版魅族浏览器

3月5日消息,博主@布鲁卡晒出了魅族18系列上的新版魅族浏览器,主界面没有任何推广和广告。
的头像 lhl545545 发表于 03-05 10:18 388次 阅读
魅族18系列重磅上线新版魅族浏览器

魅族18系列5G双旗舰发布

今日,以“端云协同,与众不同”为主题的好望云服务发布会在深圳成功举办。在此次发布会上,华为数据存储与....
的头像 我快闭嘴 发表于 03-05 10:14 258次 阅读
魅族18系列5G双旗舰发布

OPPO Find X3 Lite渲染图疑似曝光

OPPO近日已经宣布,将于3月11日正式召开新品发布会,推出Find X3系列旗舰手机。
的头像 lhl545545 发表于 03-05 09:51 131次 阅读
OPPO Find X3 Lite渲染图疑似曝光

RISC-V杀入手机移动处理器领域

1月底,有个新闻刷爆了笔者的朋友圈。文章的内容主要谈的是平头哥完成了安卓10对RISC-V芯片的支持....
的头像 如意 发表于 03-05 09:46 163次 阅读
RISC-V杀入手机移动处理器领域

联想ThinkPad X1系列笔记本深度评测

联想在今年CES 2021上发布的ThinkPad X1系列旗舰笔记本已经在北美开卖了,相较于202....
的头像 lhl545545 发表于 03-05 09:39 344次 阅读
联想ThinkPad X1系列笔记本深度评测

华为MatePad Pro详细规格参数曝光

每年的三月份,华为都会发布最新的P系列旗舰手机,然而在芯片断供的情况下,今年华为还能如期发布P50系....
的头像 lhl545545 发表于 03-05 09:29 457次 阅读
华为MatePad Pro详细规格参数曝光

OPPO Reno5 K新款正式上架京东开售

今天,OPPO宣布OPPO Reno5 K新配色恋恋青风将于3月6日正式发售,售价2699元(8GB....
的头像 lhl545545 发表于 03-05 09:08 422次 阅读
OPPO Reno5 K新款正式上架京东开售

霄龙7002系列对比线程撕裂者PRO系列性能区别

如果你是一位只追求极致性能、钱不钱的不当回事儿的超级发烧友,如果说AMD的锐龙线程撕裂者系列还不能满....
的头像 lhl545545 发表于 03-05 09:01 237次 阅读
霄龙7002系列对比线程撕裂者PRO系列性能区别

如何实现锂离子电池充电器自动重启解决方案

那个大神能介绍一款简单的锂离子电池充电器自动重启的实现方案,急!...
发表于 03-05 08:19 0次 阅读
如何实现锂离子电池充电器自动重启解决方案

开关稳压器的保护功能和可编程功能有什么作用?

有些保护功能可以由用户调整阈值等支持各种条件,但是对在功能方面了解不多,有人可以简单介绍开关稳压器代表性保护功能和可编程...
发表于 03-05 08:03 0次 阅读
开关稳压器的保护功能和可编程功能有什么作用?

开关电源的辐射骚扰怎么抑制?

开关电源向外的骚扰发射问题,特别是辐射骚扰发射的问题很烦人,         我们知道,当传输线或...
发表于 03-05 07:42 0次 阅读
开关电源的辐射骚扰怎么抑制?

电机调速指标都是什么

调速通常指控制某一物体速度的改变,那么怎么控制物体速度的改变呢?电机调速指标都是什么? ...
发表于 03-05 07:32 0次 阅读
电机调速指标都是什么

电源模块怎么提高DAQ性能?分立电源解决方案的优势在哪里?

分立电源解决方案怎么样?电源模块帮助提高DAQ性能的一些方法有什么呀? ...
发表于 03-05 06:02 0次 阅读
电源模块怎么提高DAQ性能?分立电源解决方案的优势在哪里?

MIT研发新昆虫无人机,重量仅6克形似小磁带盒

由于接近昆虫大小的无人机与大型无人机构造截然不同,Yufeng Chen及其团队已多年探索如何解决微....
发表于 03-04 17:17 530次 阅读
MIT研发新昆虫无人机,重量仅6克形似小磁带盒

红米Note9:搭载天玑800U处理器

随着5G建设进度的加快,全球智能手机市场中面世的5G手机种类越来越多。而各大手机厂商也开始挖掘中低端....
的头像 我快闭嘴 发表于 03-04 17:06 774次 阅读
红米Note9:搭载天玑800U处理器

iPhone12 mini销量为何不佳?

iPhone12mini自上市起,相比另外三款新机,销量和口碑都存在着巨大差距。这也导致苹果在全球芯....
的头像 我快闭嘴 发表于 03-04 16:58 336次 阅读
iPhone12 mini销量为何不佳?

半导体行业电源管理芯片的投资指南

行业特点 与其他更新换代快的高科技领域不同,模拟芯片的产品寿命比较长,最长的可达20年。这因为电源管....
的头像 璟琰乀 发表于 03-04 16:33 163次 阅读
半导体行业电源管理芯片的投资指南

三星Galaxy A82 5G跑分曝光

一个多月前,关于三星 Galaxy A80 继任者三星 Galaxy A82 5G 的信息在网上流出....
的头像 我快闭嘴 发表于 03-04 16:26 226次 阅读
三星Galaxy A82 5G跑分曝光

2025年将实现固态电池和锂电池价格相同

所谓的固态电池,顾名思义就是使用固体材料作为电解质。相比于传统的锂离子电池来讲,全固态电池优势明显,....
发表于 03-04 16:23 701次 阅读
2025年将实现固态电池和锂电池价格相同

Redmi Note 10系列手机在印度发布

今天下午(3月4日),Redmi Note 10系列手机在印度发布。系列包括Note 10、Note....
的头像 我快闭嘴 发表于 03-04 16:21 297次 阅读
Redmi Note 10系列手机在印度发布

AMD RX 6700 XT显卡亮相,售价479美元

隔壁英伟达早在2月就已经推出2000元价位的RTX 3060,而这边AMD最便宜的RX 6800都要....
的头像 我快闭嘴 发表于 03-04 16:14 365次 阅读
AMD RX 6700 XT显卡亮相,售价479美元

如何掌握“所有”的程序语言?

它的宗教性之强,以至于我在批评和调侃某些语言(比如 Go 语言)的时候,有些人会本能地以为我是另外一....
的头像 嵌入式ARM 发表于 03-04 16:10 71次 阅读
如何掌握“所有”的程序语言?

绝缘靴手套是理想的绝缘靴预防性工频耐压试验设备

绝缘靴手套耐压试验装置 绝缘靴手套耐压试验装置有两个型号,一个是TKJYX绝缘靴手套耐压试验装置,一....
发表于 03-04 15:55 65次 阅读
绝缘靴手套是理想的绝缘靴预防性工频耐压试验设备

RISC-V成为手机SoC领域的“救世主”?

日前,RISV-V International的首席技术官Mark Himelstein在接受媒体采....
的头像 我快闭嘴 发表于 03-04 15:45 288次 阅读
RISC-V成为手机SoC领域的“救世主”?

iQOO官宣揭晓新机处理器等核心配置

热闹的三月又迎来了一名新成员。3月4日,iQOO官方发微博宣布,新机iQOO Neo5正式定档3月1....
的头像 lhl545545 发表于 03-04 15:28 257次 阅读
iQOO官宣揭晓新机处理器等核心配置

全球芯片短缺危机或将蔓延至PC行业

据报道,计算机制造商Acer和关键技术供应商警告说,尽管需求旺盛,但全球电子元器件短缺正在加剧,这有....
的头像 我快闭嘴 发表于 03-04 15:13 264次 阅读
全球芯片短缺危机或将蔓延至PC行业

AMD SAM显存智取技术可涨处理器性能16%

今天凌晨,AMD RX 6700 XT显卡发布,这是目前最便宜的RDNA2架构光追卡,建议零售479....
的头像 如意 发表于 03-04 14:42 243次 阅读
AMD SAM显存智取技术可涨处理器性能16%

三星或将计划在2021年推出一款小屏平板产品

平板电脑市场在2020年迎来了新的增长,主要的原因就是全球范围的疫情,居家办公和网课的需求激增。近日....
的头像 lhl545545 发表于 03-04 14:31 367次 阅读
三星或将计划在2021年推出一款小屏平板产品

Redmi K40系列将于3月8日开启第二轮发售

3月4日0点,全能硬核旗舰Redmi K40和Redmi K40 Pro开启首销,两款产品一经发布便....
的头像 我快闭嘴 发表于 03-04 13:44 1011次 阅读
Redmi K40系列将于3月8日开启第二轮发售

UC28700如何实现恒流和恒压控制呢

输出平均电压应与原边峰值电流和开关频率成正比。 那调频和调幅模式应该怎样理解呢? UC28700又如何实现恒流和恒压控制呢?...
发表于 03-04 13:36 80次 阅读
UC28700如何实现恒流和恒压控制呢

消息称台积电将于今年下半年提前投产3nm工艺

近日,有消息称,台积电将于今年下半年提前投产3nm工艺,并可能于明年进行量产,这对于芯片行业有重要意....
的头像 璟琰乀 发表于 03-04 12:01 343次 阅读
消息称台积电将于今年下半年提前投产3nm工艺

RedmiBook Pro 14全渠道开售 售价4499元起

上个月,Redmi红米品牌举办新品发布会,正式发布了RedmiBook Pro 15和RedmiBo....
的头像 lhl545545 发表于 03-04 11:27 750次 阅读
RedmiBook Pro 14全渠道开售 售价4499元起

一个排除汽车电路故障的思路

一般来说,如果系统中只有一个部件不工作,就应从这一部件着手诊断。这个建议必须建立在逻辑的基础上。例如....
的头像 汽车电子电路研究中心 发表于 03-04 11:16 133次 阅读
一个排除汽车电路故障的思路

【精品推荐】电源基础知识总结——电子书

我们常提到的“电源”概念,指的是把其他形式的能量,如机械能、化学能、风能、热能、太阳能等直接转换成电能的装置,例如水力、...
发表于 03-04 10:11 202次 阅读
【精品推荐】电源基础知识总结——电子书

电源的基本原理和元器件知识

拆开电源看电路!“一目了然”学知识
发表于 03-04 08:00 0次 阅读
电源的基本原理和元器件知识

DC24V电源输入口(热插拔和防反接设计)

学习了DC电源的热插拔和防反接,自己设计一个小图,请路过的大拿帮我审一下 ...
发表于 03-03 22:51 26次 阅读
DC24V电源输入口(热插拔和防反接设计)

电解电容的电参数

电容的作用 应用于信号电路,主要完成耦合、振荡/同步及时间常数的作用 电容的选择 电容的分类 多层陶瓷电容 电解电容的电参...
发表于 03-03 07:10 0次 阅读
电解电容的电参数

TN6050-12PI STMicroe lectronics标准晶闸管

统给定环境是简易栅极驱动或电源电压时,STMicroelectronics标准晶闸管非常宝贵。该器件涵盖跨接器保护、电机控制、电源网络开关和各种能量脉冲输送系统。ST的SCR器件的峰值电压高达1200V,最大电流高达50A,栅极触发电流为5至80mA。它们可采用DPAK、IPAK、TO220AB、TO220 FP、D2PAK、TO220AB Ins.、RD91、TOP-3和TO247封装。 特性 峰值电压高达1200V 最大电流高达50A 栅极触发电流为5至80mA 可采用DPAK、IPAK、TO220AB、TO220 FP、D2PAK、TO220AB Ins.、RD91、TOP-3和TO247封装。 应用 太阳能/风能可再生能源逆变器和整流器 固态继电器 (SSR) 不间断电源 (UPS) 工业SMPS 旁路 交流/直流浪涌电流限制器(ICL) 电池充电器 交流/直流电压控制整流器 工业焊接系统 非车载电池充电器 软...
发表于 10-29 14:06 42次 阅读
TN6050-12PI STMicroe lectronics标准晶闸管

MAXM15068AMB+ MaximIntegrated MAXM15068稳压器IC和电源模块

Integrated MAXM15068稳压器IC和电源模块 实现散热更好、尺寸更小且更加简单的电源解决方案。MAXM15068是具有集成控制器的高效率、同步降压直流-直流模块。它还集成了MOSFET、补偿元件和电感器(可以在宽输入电压范围内工作)。该模块在7.5V至60V输入范围内工作,可提供高达200mA输出电流。它具有5V至12V可编程输出范围。该模块大大降低了设计复杂度、制造风险,并提供了真正的即插即用式电源解决方案,缩短了产品的上市时间。 特性 简单易用 宽输入范围:7.5V至60V 可调输出电压范围:5V至12V 反馈精度:±1.44% 输出电流高达200mA 内部补偿 全陶瓷电容器 高效率 可选PWM或PFM工作模式 关断电流:低至2.2μA(典型值) 灵活的设计 内部软启动和预偏置启动 开漏电源良好输出(RESET引脚) 可编程EN/UV...
发表于 10-29 12:44 30次 阅读
MAXM15068AMB+ MaximIntegrated MAXM15068稳压器IC和电源模块

STM32L552CCT6 STMicroelectronics STM32L5超低功耗微控制器

oelectronics STM32 L5超低功耗MCU设计用于需要高安全性和低功耗的嵌入式应用。这些MCU基于Arm树皮-M33处理器及其TrustZone,用于Armv8-M与ST安全实施结合。STM32 L5 MCU具有512KB闪存和256KB SRAM。借助全新内核和ST ART Acccelerator™, STM32 L5 MCU的性能进一步升级。这些STM32 L5 MCU采用7种形式封装,提供大型产品组合,支持高达125°C的环境温度。 特性 超低功耗,灵活功率控制: 电源范围:1.71V至3.6V 温度范围:-40°C至+85/+125°C 批量采集模式(BAM) VBAT模式下187nA:为RTC和32x32位储备寄存器供电 关断模式下,17nA(5个唤醒引脚) 待机模式下,108nA(5个唤醒引脚) 待机模式下,配备RTC,222nA 3.16μA停止2,带RTC 106μA/MHz运行模式(LDO模式) 62μA/MHz 运行模式(3V时)(SMPS降压转换器模式) ...
发表于 10-28 15:01 73次 阅读
STM32L552CCT6 STMicroelectronics STM32L5超低功耗微控制器

MAX25014ATG/V+ MaximIntegrated MAX25014汽车级4通道背光驱动器

Integrated MAX25014汽车级4通道背光驱动器具有IC控制的脉宽调制 (PWM) 调光和混合调光功能,非常适合用于汽车仪表板和信息娱乐显示屏。集成电流驱动,每路可支持高达150mA LED灌电流。该器件采用2.5V至36.0V的宽输入电压范围,并能承受汽车负载突降事件。 内部电流模式直流-直流开关控制器可配置为升压或SEPIC拓扑,工作频率范围为400kHz至2.2MHz。集成的扩频有助于降低EMI。该器件采用自适应输出电压调节机制,可最大限度地降低LED电流驱动通路的功耗。 包含用于外部nMOSFET系列开关的控制,以降低背光关闭时的静态电流,并在发生故障时断开升压转换器。 MAX25014符合AEC-Q100标准,采用24引脚TQFN封装,设计用于在-40°C至+125°C温度范围内工作。 特性 宽电压范围运行 启动后工作电源电压低至2.5V 承受高达40V的负载突降 高度集成 完整的4通道解决方案,包括升压控制器 I2C控制,可最大限度地减少元件数量 ...
发表于 10-28 14:55 24次 阅读
MAX25014ATG/V+ MaximIntegrated MAX25014汽车级4通道背光驱动器

LDO40LPU50RY STMicroelectronics LDO40L 低压差稳压器

oelectronics LDO40L低压差稳压器是一款400mA、38V LDO,非常适合用于严苛的汽车环境。LDO40L稳压器的静态电流低至45uA,因此适合用于永久连接电池电源的应用。当点火开关关闭时且电子模块保持活动模式时,此特性尤其重要。 LDO40L具有各种嵌入式保护功能,包括电流限制和热关断。另外,LDO40L还具有-0.3V至40V输入电压范围、低压差以及低静态电流等特性,因此适合用于低功耗工业和消费类应用。 LDO40L低压差稳压器符合汽车应用类AEC-Q100标准,采用带可湿性侧翼的紧凑型DFN-6 (3x3) 封装。 特性 符合AEC-Q100标准(1级) 低静态电流:45µA(无负载时的典型值) 高达38V的宽输入工作电压范围 低启动电压:3.5V 输出电流:高达400mA 输出电压选项: 可调电压:最低2.5V 固定电压:3.0V、3.3V、5.0V、8.5V 输出电压精度: ±1%(25°C时的典型值) ±3%(包括线路...
发表于 10-28 09:50 43次 阅读
LDO40LPU50RY STMicroelectronics LDO40L 低压差稳压器

M95M04-DRMN6TP STMicroelectronics M95M04 4MB 串行EEPROM

oelectronics M95M04 4MB串行EEPROM组织为524288 x8位,通过SPI总线访问。这些EEPROM的电源电压范围为1.8V至5.5V,保证工作温度范围为-40°C至85°C。这些串行EEPROM具有512字节识别页面,用于存储敏感的应用参数,这些参数可永久锁定在只读模式下。 特性 兼容SPI总线 存储器阵列: 4mbeeprom 512字节页面大小 额外识别页面 增强ESD保护 封装: SO8n(m95m04-drmn6tp) tssop8(m95m04-drdw6tp) 规范 写入时间: 5ms内字节写入 5ms内页面写入 最高时钟频率:10MHz 单电源电压:1.8V至5.5V 工作温度范围:-40°C至85°C 超过4百万次写入循环 数据保留超过40年 功...
发表于 10-28 09:37 36次 阅读
M95M04-DRMN6TP STMicroelectronics M95M04 4MB 串行EEPROM

MAX20087ATPA/VY+ Maxim Integrated MAX2008x相机电源保护IC

Integrated MAX2008x相机电源保护IC是双路/四路相机保护器IC,可为四个输出通道中的每一个提供高达600mA负载电流。这些IC采用3V至5.5V电源供电,相机电源电压范围为3V至15V,在300mA时输入至输出电压降为110mA(典型值)。MAX2008x IC具有使能输入和IC接口,用于读取器件的诊断状态。该IC设有板载ADC,可通过每个开关读取电流。MAX2008x相机电源IC包括分别在每个输出通道上的过热关断和过流限制。该电源保护IC的理想应用是雷达和相机模块同轴电缆供电。 特性 小尺寸解决方案: 多达四个600mA保护开关 输入电源:3V至15V 3V至5.5V服务电源 26V电池短路隔离 可调电流限制:100mA至600mA 可选I2C地址 小型 (4mm x 4mm) 20引脚SWTQFN封装 精度: 电流限制精度:±8% 0.5ms软启动 0.25ms软关断 关断电流:0.3μA 压降:110m...
发表于 10-21 10:50 51次 阅读
MAX20087ATPA/VY+ Maxim Integrated MAX2008x相机电源保护IC

MAXM17635AMG+ Maxim Integrated MAXM17633、MAXM17634、MAXM17635电源模块

Integrated MAXM17633、MAXM17634和MAXM17635电源模块是一系列稳压器IC和电源模块。这些器件实现散热更好、尺寸更小且更加简单的电源解决方案。MAXM17633、MAXM17634和MAXM17635具有集成控制器、MOSFET、补偿元件和电感器,可在宽输入电压范围内工作。该模块在4.5V至36V输入范围内工作,可提供高达2A输出电流。 特性 简单易用 宽输入范围:4.5V至36V 0.9V至12V可调输出 (MAXM17635) 3.3V和5V固定输出电压版本 (MAXM17633和MAXM17634) 400kHz至2.2MHz可调频率,可实现与外部时钟同步 反馈精度:±1.2% 输出电流:高达2A 内部补偿 陶瓷电容器 高效率 可选的PWM、PFM或DCM工作模式 关断电流:低至2.8μA(典型值) 灵活的设计 可编程软启动和预偏置启动 ...
发表于 10-21 10:20 103次 阅读
MAXM17635AMG+ Maxim Integrated MAXM17633、MAXM17634、MAXM17635电源模块

MAXM17630AME+ Maxim Integrated MAXM17630 MAXM17631和MAXM17632电源模块

Integrated MAXM17630、MAXM17631和MAXM17632喜马拉雅uSLIC™降压电源模块可用来设计散热更好、尺寸更小、更加简单的电源解决方案。MAXM17630和MAXM17631是高效同步降压型DC-DC模块,具有集成控制器、MOSFET、补偿元件和电感器,可在宽输入电压范围内运行。 该电源模块的工作电压范围为4.5V至36V,可提供高达1A的输出电流。MAXM17630和MAXM17631模块分别具有3.3V和5V固定输出电压。MAXM17632模块具有可调输出电压(0.9V至12V)。该器件提供真正的即插即用电源解决方案,大大降低了设计复杂性和制造风险,缩短了上市时间。内部补偿覆盖整个输出电压范围,因此无需外部补偿元件。 MAXM17630/MAXM17631/MAXM17632电源模块采用峰值电流模式控制架构,可在脉宽调制 (PWM) 、脉频调制 (PFM) 或断续导通模式 (DCM) 下工作,从而在轻负载条件下实现高效率。该模块系列在-40°C至+125°C范围内的反馈电压调节精度为±1.2%。 MAXM17630/MAXM17631/MAXM17632电源模块采用紧凑的薄型16引脚3mmx3mmx1.75mm uSLIC封装,且可提供仿真模...
发表于 10-21 09:59 54次 阅读
MAXM17630AME+ Maxim Integrated MAXM17630 MAXM17631和MAXM17632电源模块

NCV8165 LDO稳压器 500 mA 低压差 超低Iq 超高PSRR 超低噪声

5是一款LDO(低压降稳压器),能够提供500 mA输出电流。 NCV8165器件旨在满足RF和模拟电路的要求,具有低噪声,高PSRR,低静态电流和非常好的负载/线路瞬态。该器件设计用于1μF输入和1μF输出陶瓷电容。提供DFNW8 0.65P,3 mm x 3 mm x 0.9 mm封装。 类似产品: NCV8160 NCV8161 NCV8163 NCV8165 输出电流(A) 0.25 0.45 0.25 0.50 PSRR f = 1 kHz(dB) 98 98 92 85 噪音(μV RMS ) 10 10 6.5 8.5 特性 优势 超高PSRR在1 kHz时为85dB,在100 kHz时为63dB 非常适用于Wi-Fi模块等功耗敏感设备 超低输出噪声8.5μV RMS 非常好适用于噪声敏感应用 超低静态电流12μA 在轻载条件下提高效率 工作输入电压范围1.9V至5.5V 适用于电池供电设备 极低压差200mV,500mA 满载时的低功耗 应用 终端产品 A / D和D / A转换器电源 音频编解码器 电池供电设备 相机模块 RF模块 WiGig电源 LP5907或LP5912升级 汽车设备点负载调节 信息娱乐,车身控制和导航 远...
发表于 07-29 22:02 263次 阅读
NCV8165 LDO稳压器 500 mA 低压差 超低Iq 超高PSRR 超低噪声

NCP139 LDO稳压器 1 A 超低压降 带偏置轨

是1 A LDO,配有NMOS passtransistor和独立的偏置电源电压(VBIAS)。该器件提供非常稳定,精确的输出电压和低噪声,适用于空间受限,噪声敏感的应用。为了优化电池供电的便携式应用的性能,NCP139具有低IQ消耗。 WLCSP6 1.2 mm x 0.8 mmpackage经过优化,适用于空间受限的应用。 类似产品: NCP13x系列 NCP130 NCP133 NCP134 NCP135 NCP137 NCP139 输出电流(A) 0.3 0.5 0.5 0.5 0.7 PSRR f = 1kHz(dB) 70 70 td> 60 压差电压(V) 0.060 0.090 0.090 0.053 0.060 0.060 特性 优势 超低压降典型的。 40mV 允许节省功率并以非常低的Vin-Vout电压工作。 可调电压版本 低压Vcore应用的最佳选择 在1 A负载下典型的50 mV压降。 最大限度地减少调节器的功率损失 保证输出电流从0到1 非常好的选择用于高电流应用 0.5%典型输出电压精度 非常适合POL应用 输出超过1 A的电流 输出有效可用的放电选项 应用 终端产品 电池供电和便携式设备 智能手机,...
发表于 07-29 22:02 327次 阅读
NCP139 LDO稳压器 1 A 超低压降 带偏置轨

NCP161 LDO稳压器 450 mA 超高PSRR 超低噪声

是一款线性稳压器,能够提供450 mA输出电流。 NCP161器件旨在满足RF和模拟电路的要求,可提供低噪声,高PSRR,低静态电流和非常好的负载/线路瞬态。该器件设计用于1μF输入和1μF输出陶瓷电容。它有两种厚度的超小0.35P,0.65 mm x 0.65 mm芯片级封装(CSP),XDFN-4 0.65P,1 mm x 1 mm和TSOP5封装。 类似产品:
发表于 07-29 21:02 253次 阅读
NCP161 LDO稳压器 450 mA 超高PSRR 超低噪声

LV5768V-A 降压稳压器 开关 1通道

V-A是一个1通道降压型开关稳压器。 特性 优势 不受负载影响的软启动电路。 电源电路稳定运行。 频率FOLD BACK为负时下垂。 过流保护 内置逐脉冲OCP电路。通过使用外部MOS的导通电阻来检测。 过流保护 开启/关闭功能(启用控制) 可在外部启用控制 同步整流的1通道降压型开关稳压控制器方法 电路图、引脚图和封装图
发表于 07-29 21:02 354次 阅读
LV5768V-A 降压稳压器 开关 1通道

NCP81274 具有省电模式和PWM VID接口的多相同步降压控制器

74是一款多相同步控制器,针对新一代计算和图形处理器进行了优化。该器件能够驱动多达8个相位,并集成差分电压和相电流检测,自适应电压定位和PWM_VID接口,为计算机或图形控制器提供精确调节的电源。集成的省电接口(PSI)允许处理器将控制器设置为三种模式之一,即所有相位接通,动态相位脱落或固定低相位计数模式,以在轻载条件下获得高效率。双边沿PWM多相架构可确保快速瞬态响应和良好的动态电流平衡。 应用 终端产品 GPU和CPU电源 图形卡的电源管理 台式电脑 笔记本电脑 电路图、引脚图和封装图...
发表于 07-29 20:02 191次 阅读
NCP81274 具有省电模式和PWM VID接口的多相同步降压控制器

NCP81276 具有省电模式和PWM VID接口的多相同步降压控制器

76是一款多相同步控制器,针对新一代计算和图形处理器进行了优化。该器件能够驱动多达4个相位,并集成差分电压和相电流检测,自适应电压定位和PWM_VID接口,为计算机或图形控制器提供精确调节的电源。集成的省电接口(PSI)允许处理器将控制器设置为三种模式之一,即所有相位开启,动态相位脱落或固定低相位计数模式,以在轻载条件下获得高效率。双边沿PWM多相架构可确保快速瞬态响应和良好的动态电流平衡。 应用 终端产品 GPU和CPU电源 图形卡电源管理 台式电脑 笔记本电脑 电路图、引脚图和封装图...
发表于 07-29 20:02 210次 阅读
NCP81276 具有省电模式和PWM VID接口的多相同步降压控制器

LV5725JA 降压转换器 DC-DC 1通道

JA是一个降压电压开关稳压器。 特性 优势 宽输入动态范围:4.5V至50V 可在任何地方使用 内置过流逐脉冲保护电路,通过外部MOSFET的导通电阻检测,以及HICCUP方法的过流保护 烧伤保护 热关闭 热保护 负载独立软启动电路 控制冲击电流 外部信号的同步操作 它可以改善发生两个稳压器IC之间的振荡器时钟节拍 电源正常功能 稳定性操作 外部电压为输出电压高时可用 应用 降压方式开关稳压器 电路图、引脚图和封装图...
发表于 07-29 19:02 258次 阅读
LV5725JA 降压转换器 DC-DC 1通道

NCP81038 具有自动省电模式和内置LDO的同步降压控制器

38是一款双同步降压控制器,经过优化,可将电池电压或适配器电压转换为台式机和笔记本电脑系统所需的多个电源轨。 NCP81038包括两个降压开关控制器,通道2上固定5.0 V输出,通道1上3.3 V,两个板载LDO,三个输出:5 V / 60 mA和3.3 V或12 V / 10 mA。 NCP81038支持高效率,快速瞬态响应并提供电力信号。安森美半导体专有的自适应纹波可控制器从CCM到DCM的无缝过渡,其中转换器运行时降低了开关频率,在轻载时具有更高的效率。该器件的工作电源电压范围为5.5 V至28 V 电路图、引脚图和封装图...
发表于 07-29 18:02 323次 阅读
NCP81038 具有自动省电模式和内置LDO的同步降压控制器

NCP81148 具有自动省电模式和内置LDO的同步降压控制器

48是一款双同步降压控制器,经过优化,可将电池电压或适配器电压转换为台式机和笔记本电脑系统所需的多个电源轨。 NCP81148由两个降压开关控制器组成,通道2上固定5.0 V输出,通道1上为3.3 V,两个板载LDO具有三个输出:5 V / 60 mA和3.3 V或12 V / 10 mA。 NCP81148支持高效率,快速瞬态响应并提供电力商品信号。安森美半导体专有的自适应纹波可控制器从CCM到DCM的无缝过渡,其中转换器运行时降低了开关频率,在轻载时具有更高的效率。该器件的工作电源电压范围为5.5 V至28 V. 电路图、引脚图和封装图...
发表于 07-29 18:02 98次 阅读
NCP81148 具有自动省电模式和内置LDO的同步降压控制器

NCP4200 具有I2C接口的多相同步降压转换器

0是一款集成电源控制IC,具有I 2 C接口。它结合了高效,多相,同步降压开关稳压控制器和I 2 C接口,可实现关键系统参数的数字编程。 特性 优势 I 2 C 启用关键系统参数的数字化编程 快速增强型PWM弹性模式架构 出色的负载瞬态性能 应用 终端产品 CPU Vcor​​e 游戏,桌面,服务器 电路图、引脚图和封装图
发表于 07-29 18:02 191次 阅读
NCP4200 具有I2C接口的多相同步降压转换器

NCP4208 同步降压转换器 8相 VR11.1可编程 带I2C接口

8是一款集成电源控制IC,具有I 2 C接口。 NCP4208是一款高效,多相,同步降压开关稳压控制器,可帮助设计高效率和高密度解决方案。 NCP4208可编程为1,2,3,4,5,6,7或8相操作,允许构建多达8个互补降压开关级。 特性 优势 快速增强PWM 出色的负载转换性能 应用 终端产品 CPU Vcor​​e 台式电脑,服务器 电路图、引脚图和封装图
发表于 07-29 17:02 149次 阅读
NCP4208 同步降压转换器 8相 VR11.1可编程 带I2C接口