STM8S103之外部中断

版权声明:喝水不忘挖井人,转载请注明出处,[email protected]。 https://blog.csdn.net/qq_18842031/article/details/77566002

本篇博文最后修改时间:2017年08月20日 23:00。

一、简介

本文以STM8S103F3P6编程为例,介绍STM8S103F3P6外部中断

二、实验平台

电脑平台:Windows7 64位旗舰

编译软件:IAR

硬件平台:STM8S103F3P6

三、版权声明

博主:_懵懂

声明:此博客仅供参考不做任何商业用途,最终解释权归原博主所有。

原文地址:http://blog.csdn.NET/qq_18842031

懵懂之MCU交流群:136384801

单片机软件/硬件交流:127034610

四、实验前提

1、在进行本文步骤前,请先安装IAR  EWSTM8-EV-1311版本;准备好STM8S103F3P6硬件平台。

         

五、基础知识

暂无

六、源码地址

暂无

七、关联文章

暂无

八、实验内容

1.初始化PD4为外部中断输入

void Init_External(void)
{
  GPIO_Init(GPIOD,GPIO_PIN_4,GPIO_MODE_IN_PU_IT);           //PD4设置为外部上拉中断
  EXTI_DeInit();                                            //恢复所有外部中断寄存器
  EXTI_SetExtIntSensitivity(EXTI_PORT_GPIOD,EXTI_SENSITIVITY_FALL_ONLY);    //端口D设置为中断  只有下降沿中断
}

2.编写主函数

void main(void)
{
Init_External();
 enableInterrupts();
  while(1);
}

3.编写服务函数

INTERRUPT_HANDLER(EXTI_PORTD_IRQHandler, 6)
{
  if ((GPIO_ReadInputPin(GPIOD, GPIO_PIN_4)) != RESET)  //SET or RESET
  {
          //自己编写内容
  }
    //不用清除标志位
}

猜你喜欢

转载自blog.csdn.net/qq_18842031/article/details/77566002