你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

《STM32U3线上课程》学习笔记+04 LPTIM输出PWM

[复制链接]
EPTmachine 发布时间:2025-12-18 21:14

在STOP3模式下可以使用LPTIM生成PWM波来驱动指示灯表示系统的运行状态。

1、CubeMX设置

选择LPTIM1设置其模式为Counts internal clock events,使能其Ch1为输出,对应的引脚为PC1。设置计数器重载值为327,channel1输出通道为比较模式,比较值为164,实现一个占空比50%的PWM输出。

LPTIM_Settings.png

LPTIM1的时钟源设置为外部LSE。

LPTIME_Clock_Src.png

完成设置并输出代码。

2、功能实现

在初始化函数中添加以下代码,系统设置SMPS供电,初始化外设并启动LPTIM1后,进入STOP3模式,不对MCU进行唤醒。编译并下载程序到开发板。


/* USER CODE BEGIN SysInit */
if(HAL_PWREx_ConfigSupply(PWR_SMPS_SUPPLY) != HAL_OK)
{
Error_Handler();
}

/* USER CODE END SysInit */

/* Initialize all configured peripherals */
MX_GPIO_Init();
MX_LPTIM1_Init();
MX_RTC_Init();
/* USER CODE BEGIN 2 */
/* Enable the SMPS regulator to improve power efficiency */
/*Flash in power down mode during Stop mode - by default after reset */
HAL_PWREx_DisableFlashFastWakeUp();


/*Reduce SRAM2 retention in Stop mode to 8 kB*/
HAL_PWREx_DisableRAMsContentStopRetention(PWR_SRAM2_PAGE2_STOP_RETENTION); // reduction -600nA
HAL_PWREx_DisableRAMsContentStopRetention(PWR_SRAM2_PAGE3_STOP_RETENTION);
HAL_PWREx_DisableRAMsContentStopRetention(PWR_FDCAN_USB_STOP_RETENTION);
HAL_PWREx_DisableRAMsContentStopRetention(PWR_PKA_STOP_RETENTION);

/*Put full SRAM1 in power down mode*/
HAL_PWREx_EnableRAMsPowerDown(PWR_SRAM1_POWERDOWN); // reduction - 500nA
/* Run PWM signal on PC1 pin*/
HAL_LPTIM_PWM_Start(&hlptim1, LPTIM_CHANNEL_1);

/* Enter STOP 2 mode */
HAL_PWR_EnterSTOPMode(PWR_LOWPOWERMODE_STOP2, PWR_STOPENTRY_WFI);

从原理图上可知PA5为LED2的控制引脚,使用杜邦线连接PC1和PA5,开发板上电后可以看到LED灯被点亮,说明LPTIM1在STOP模式下,正常输出。

U3_schematic.png

收藏 评论0 发布时间:2025-12-18 21:14

举报

0个回答

所属标签

ST中文论坛活动

即日起开启活动话题入口,之后的活动统一都放在此处,欢迎大家的加入!


最新内容

相似分享

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版