
硬件:STM32G030F6P6 软件环境:STM32CubeIDE 实现功能:RCR定数量PWM输出 正常配置硬件,TIM1_CHANNEL2,ONE_Pulse Mode 主程序主动开启时钟、中断: (过去一直这么用!!!) HAL_TIM_Base_Start(&htim1); //这句有的说放在开启中断后,有的说在前,测试发现应该防止前面,否则输出脉冲数少了。 HAL_TIM_PWM_Start_IT(&htim1, TIM_CHANNEL_2); 怎么都进不了下面的中断,但同样的程序,改成TIM3就可以 void HAL_TIM_PWM_PulseFinishedCallback(TIM_HandleTypeDef *htim) 做了各种排列组合,结果发现需要同时(!!!!!?????)启用下列函数,才能正确进入中服务(重点是以前从来没这么用过!!!) __HAL_TIM_ENABLE_IT(&htim1, TIM_IT_UPDATE); HAL_TIM_PWM_Start_IT(&htim1, TIM_CHANNEL_2); 也许这就是研发——从一个又一个的坑里趴出来,外人看上去以为你在走平路。 另外发现一个好用的功能,给大家分享以下: 固定个数的脉冲输出,可以采用PWM 的 ONE_Pulse Mode 方式, 通过: TIM1->RCR = pulse 根据需要修改脉冲数量 TIM1->ARR = 1/f 修改频率 TIM1->CCR1 = du 修改脉宽 非常方便,也好记。 |
STM32的低功耗模式
基于STM32的锂动力电池检测装置的设计
哪里能下载ST官方展示的NUCLEO-G071RB配合X-NUCLEO-GFX01M1运行TouchGFX案例的源程序?
STM32的上电启动过程
STM32中如何实现数据加密
简单聊聊STM32的SPI外设
STM32的I2S外设
stm32cubeide新用户无法注册
STM32G0B1CC单片机多个从板使用CAN链接,CAN接收帧和发送帧丢失的问题。
关于stm32g030f6p6 adc3个值问题 temp vrefint vbat
会不会是定时器1和定时器0一般是高级定时器,需要这样呢