3.外部中断

1、中断的认识

什么是中断?
当计算机在执行main函数中的代码时,如果中断条件满足,则保存当前的代码运行地址,跳转到另一个中断服务地址中,去执行相应的程序。
中断包括:内部中断和外部中断。其中内部中断是通过数时钟脉冲,外部中断是通过判断引脚电平边沿变化。上面对中断的认识是在51单片机上学习到的,因为51单片机中的中断只有相对重要且基础的几个,比如,定时器中断,计数器中断,还有串口中断(当发送寄存器中的数据被全部发送出去后,产生一个中断。当接受寄存器中的收满数据时,产生一个中断。在这里中断的意义可以类比两个人搬运货物,当一个人把货物送给另一个人后,才能进行接下来的搬运。那如何判断货物是否被送出去了,就需要中断是否被执行来判断)。后来学习dsp28335,发现基本上每个外设都有中断服务函数。

2、中断的配置

中断的满足条件
中断的使能
3.在main中添加中断服务对象

/**
  * @brief EXTI line detection callbacks
  * @param GPIO_Pin: Specifies the pins connected EXTI line
  * @retval None
  */
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
{
  if(GPIO_Pin == GPIO_PIN_13)
  {
    /* Toggle LED0 */
    HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_8);
  }
}

猜你喜欢

转载自blog.csdn.net/qq_34190043/article/details/93913760