#include "
STM32f10x.h"
void EX
ti3_IRQ_IRQHandler(无效)
{
如果(EXTI->PR & EXTI_PR_PR3)
{
EXTI->PR |= EXTI_PR_PR3;
GPIOA-> BRR |= GPIO_BRR_BS1;
}
}
int 主要(无效)
{
RCC ->APB2ENR |= RCC_APB2ENR_IOPAEN; //LED(输出引脚)(PA1)
GPIOA->CRL &= ~(GPIO_CRL_CNF1);
GPIOA->CRL |= GPIO_CRL_MODE1_0;
GPIOA->CRL &= ~(GPIO_CRL_MODE1_1);
RCC ->APB2ENR |= RCC_APB2ENR_IOPBEN;//按钮(输入引脚)(PB3)
GPIOB->CRL |= GPIO_CRL_CNF3_0;
GPIOB->CRL &= ~(GPIO_CRL_CNF3_1);
GPIOB->CRL &= ~(GPIO_CRL_MODE3);
RCC ->APB2ENR |= RCC_APB2ENR_AFIOEN;//用于替代功能
EXTI->IMR |= EXTI_IMR_MR3;//中断屏蔽寄存器(0:屏蔽,1:非屏蔽)
EXTI->RTSR |= EXTI_RTSR_TR3; // 上升沿触发中断
AFIO->EXTICR[0] = AFIO_EXTICR1_EXTI3_PB;
NVIC_EnableIRQ(EXTI3_IRQn);
NVIC_SetPriority(EXTI3_IRQn,0);
而(1)
{
GPIOA->BSRR |= GPIO_BSRR_BR1;
}
}