我在红色代码上写代码,中断正常工作,但是在下面写运行HAL_TIM_Base_Start_IT就会宕机
void TIM2_IRQHandler(void)
{
/* USER CODE BEGIN TIM2_IRQn 0 */
int i=0,sum,j,temp;
HAL_UART_Transmit(&huart6,uart_send_data,17,1000);
/* USER CODE END TIM2_IRQn 0 */
HAL_TIM_IRQHandler(&htim2);
/* USER CODE BEGIN TIM2_IRQn 1 */
我在红色代码上写代码,中断正常工作,但是在下面写运行HAL_TIM_Base_Start_IT就会宕机
void TIM2_IRQHandler(void)
{
/* USER CODE BEGIN TIM2_IRQn 0 */
int i=0,sum,j,temp;
HAL_UART_Transmit(&huart6,uart_send_data,17,1000);
/* USER CODE END TIM2_IRQn 0 */
HAL_TIM_IRQHandler(&htim2);
/* USER CODE BEGIN TIM2_IRQn 1 */
我在红色代码上写代码,中断正常工作,但是在下面写运行HAL_TIM_Base_Start_IT就会宕机
void TIM2_IRQHandler(void)
{
/* USER CODE BEGIN TIM2_IRQn 0 */
int i=0,sum,j,temp;
HAL_UART_Transmit(&huart6,uart_send_data,17,1000);
/* USER CODE END TIM2_IRQn 0 */
HAL_TIM_IRQHandler(&htim2);
/* USER CODE BEGIN TIM2_IRQn 1 */
/* USER CODE END TIM2_IRQn 1 */
}
void TIM2_IRQHandler(void)
{
/* USER CODE BEGIN TIM2_IRQn 0 */
int i=0,sum,j,temp;
HAL_UART_Transmit(&huart6,uart_send_data,17,1000);
/* USER CODE END TIM2_IRQn 0 */
HAL_TIM_IRQHandler(&htim2);
/* USER CODE BEGIN TIM2_IRQn 1 */
/* USER CODE END TIM2_IRQn 1 */
}
HAL中断有自己的机制,你只要写好回调就行了。
好的 多谢大神orz
不一定是定时器,其它任何的中断,只要中断的间隔太短,或中断中处理的时间过长,不死都难。
那它死后,执行的是什么代码呢?中断里面的还是主程序或者跑飞。自己中断把自己打死?