鞍山市城乡建设局网站,网站建设手机软件,用服务器ip可以做网站吗,网站平均停留时间HAL STM32主从定时器联级使用 具体介绍参考STM32参考手册 #x1f33f;主从定时器联级#xff1a;使用一个定时器作为另一个定时器的预分频器。 #x1f341;时钟关系#xff1a; #x1f33f;TIM1 和TIM8 控制寄存器 2(TIMx_CR2)相关位#xff1a; #x1f516;主… HAL STM32主从定时器联级使用 具体介绍参考STM32参考手册 主从定时器联级使用一个定时器作为另一个定时器的预分频器。 时钟关系 TIM1 和TIM8 控制寄存器 2(TIMx_CR2)相关位 主定时器需要使能TRGO.从定时器的输入触发源选择ITRx. 从模式控制寄存器(TIMx_SMCR)
STM32CubeMX配置方法
主定时器配置。使能TRGO选项 从定时器配置 以上配置实现的是定时器1更新中断6次后从定时器触发一次。 业务代码
main函数
int main(void)
{/* USER CODE BEGIN 1 *//* USER CODE END 1 *//* MCU Configuration--------------------------------------------------------*//* Reset of all peripherals, Initializes the Flash interface and the Systick. */HAL_Init();/* USER CODE BEGIN Init *//* USER CODE END Init *//* Configure the system clock */SystemClock_Config();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();MX_TIM1_Init();MX_TIM2_Init();MX_USART1_UART_Init();/* USER CODE BEGIN 2 */__HAL_TIM_CLEAR_IT(htim1, TIM_IT_UPDATE);__HAL_TIM_ENABLE_IT(htim1, TIM_IT_UPDATE); //开启TIM3的更新中断HAL_TIM_Base_Start_IT(htim1); //启动定时器__HAL_TIM_CLEAR_IT(htim2, TIM_IT_UPDATE);__HAL_TIM_ENABLE_IT(htim2, TIM_IT_UPDATE); //开启TIM3的更新中断HAL_TIM_Base_Start_IT(htim2); //启动定时器/* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while(1) {/* USER CODE END WHILE *//* USER CODE BEGIN 3 */}/* USER CODE END 3 */
}中断回调函数
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{if(htim-Instance TIM1) {if(__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_UPDATE) ! RESET) {HAL_GPIO_TogglePin(LED1_GPIO_Port, LED1_Pin);__HAL_TIM_CLEAR_IT(htim, TIM_IT_UPDATE);}}if(htim-Instance TIM2) {if(__HAL_TIM_GET_IT_SOURCE(htim, TIM_IT_UPDATE) ! RESET) {HAL_GPIO_TogglePin(LED2_GPIO_Port, LED2_Pin);__HAL_TIM_CLEAR_IT(htim, TIM_IT_UPDATE);}}}测试工程
链接https://pan.baidu.com/s/1m-ZbaD-LQuQIu26hSKdlXg?pwdqm3b
提取码qm3b