本篇博文最后修改时间:2017年08月20日 23:00。
一、简介
本文以STM8S103F3P6编程为例,介绍STM8S103F3P6外部中断
二、实验平台
电脑平台:Windows7 64位旗舰
编译软件:IAR
硬件平台:STM8S103F3P6
三、版权声明
博主:_懵懂
声明:此博客仅供参考不做任何商业用途,最终解释权归原博主所有。
原文地址:http://blog.csdn.NET/qq_18842031
懵懂之MCU交流群:136384801
四、实验前提
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
{
//自己编写内容
}
//不用清除标志位
}