OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3416|回复: 1

STM32 PB4.5的外部中断配置的对么?

[复制链接]

48

主题

208

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1371
金钱
1371
注册时间
2015-3-24
在线时间
190 小时
发表于 2015-4-8 21:58:17 | 显示全部楼层 |阅读模式
5金钱
 GPIO_InitTypeDef GPIO_InitStructure;
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB  , ENABLE);  
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPD;
  GPIO_Init(GPIOB, &GPIO_InitStructure);
  GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource4);
  EXTI_InitTypeDef EXTI_InitStructure;
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE); 
  EXTI_ClearITPendingBit(EXTI_Line4);
  EXTI_InitStructure.EXTI_Line = EXTI_Line4;              //外部中断通道4
  EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;      //外部中断模式
  EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Rising; //下降沿触发
  EXTI_InitStructure.EXTI_LineCmd = ENABLE;                  //使能
  EXTI_Init(&EXTI_InitStructure);
  
  NVIC_InitTypeDef NVIC_InitStructure; 
  NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);           //抢占式优先级别设置为无抢占优先级
  NVIC_InitStructure.NVIC_IRQChannel = EXTI4_IRQChannel;    //指定中断源
  NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1; //指定响应优先级别1
  NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;            //使能外部中断通道
  NVIC_Init(&NVIC_InitStructure);
//********************************************************************************
       GPIO_InitStructure.GPIO_Pin= GPIO_Pin_5; //选择引脚2 5
       GPIO_InitStructure.GPIO_Mode= GPIO_Mode_IPD; 
       GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;          //输出频率最大50MHz
       GPIO_Init(GPIOB,&GPIO_InitStructure);                               

  
       GPIO_EXTILineConfig(GPIO_PortSourceGPIOB,GPIO_PinSource5);
       EXTI_ClearITPendingBit(EXTI_Line5); //选择中断线路2 3 5
       EXTI_InitStructure.EXTI_Mode= EXTI_Mode_Interrupt; //设置为中断请求,非事件请求
       EXTI_InitStructure.EXTI_Trigger= EXTI_Trigger_Rising; //设置中断触发方式为上下降沿触发
       EXTI_InitStructure.EXTI_LineCmd=ENABLE;                                          //外部中断使能
       EXTI_Init(&EXTI_InitStructure);
  
  
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);      
        NVIC_InitStructure.NVIC_IRQChannel= EXTI9_5_IRQChannel;  
        NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority= 2; 
        NVIC_InitStructure.NVIC_IRQChannelCmd=ENABLE;                                   
        NVIC_Init(&NVIC_InitStructure);

小时在工地上玩,捡了一个根木棒回家,麻麻问我捡这破玩意回来有什么用?我脑子一热,就说“你可以用它来打我啊!!”
于是,一根木棒伴随了我很多年。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

3

主题

2170

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
5782
金钱
5782
注册时间
2013-11-22
在线时间
1212 小时
发表于 2015-4-8 22:51:58 | 显示全部楼层
看配置PB5没多大问题,  B4默认用作 JTAG 的复位脚了  , 如要用此脚,先禁止掉 JTAG模式
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-24 06:54

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表