实验题目
使用基本定时器TIM6定时5s后蜂鸣器响,按按键3会中断使蜂鸣器关闭,按下按键3后,TIM7开始定时6s后蜂鸣器响,按键4会中断使蜂鸣器关闭
类似订一个闹铃,到一定时间,闹铃响,按键关闭,过几秒闹铃再次响起,按另外一个键关闭;
复习前面
一、GPIO配置(按键控制)
a、使能时钟
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF,ENABLE);
b、初始化 GPIO_Init();
二、外部中断配置(GPIO->SYSCFG->EXTI->NVIC)
1、使能时钟
2、GPIO:设置输入模式(0-15) ->见GPIO配置
3、SYSCFG:设置EXTI和IO映射关系(0-15)
SYSCFG_EXTILineConfig(EXTI_PortSourceGPIOx, EXTI_PinSourcex);
4、EXTI:边沿检测(0-22) EXTI_Init();
5、NVIC:中断优先级,分组,使能 NVIC_Init();
6、设置中断服务函数
(1)在startup文件里面找到对应的中断函数
(2)判断是否有中断
不同函数的判断条件不一样,但基本都是 xxx_GetITStatus();
(3)清除中断标志位
清除中断标志位的函数,否则CPU将陷在中断函数