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

《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分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版