模板在这个帖子
全球首发 全世界第一个protues 仿真stm32f103 之 实现中断
说明:
1.用code中 的代码替换模板中的代码 就可以生成 hex
2.使用前加载hex
3.按箭头的按钮会触发stm32中断,喇叭会响
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
关键代码:
- ********************************************************************/
- #include"stm32f10x.h"
- void EXTI_Configuration(void)
- {
-
- EXTI_InitTypeDef EXTI_InitStructure;
- GPIO_InitTypeDef GPIO_InitStructure;
- /* =======================开启时钟================*/
- RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB , ENABLE); // 使能APB2外设GPIOC时钟
- RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
- GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6; //配置PB6为外部中断
- GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
- GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //上拉输入
- GPIO_Init(GPIOB,&GPIO_InitStructure);
- GPIO_EXTILineConfig(GPIO_PortSourceGPIOB,GPIO_PinSource6); //EXTI6
- EXTI_DeInit(); //将EXIT寄存器重设置为缺省值
- EXTI_InitStructure.EXTI_Line = EXTI_Line6 ; //中断线
- EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt ; //中断模式
- EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising_Falling; //双边沿
- EXTI_InitStructure.EXTI_LineCmd = ENABLE; //使能
- EXTI_Init(&EXTI_InitStructure); //初始化
- EXTI_ClearITPendingBit(EXTI_Line6);
- }
复制代码
全部资料51hei下载地址:
protues 仿真stm32f103 之 实现中断.zip
(34.81 KB, 下载次数: 190)
|