你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F103CBT6 外部中断无法触发

[复制链接]
salfe 提问时间:2015-5-14 16:16 /
阅读主题, 点击返回1楼
收藏 评论39 发布时间:2015-5-14 16:16
39个回答
回答时间:2015-5-19 10:13:34
下面代码测试没问题。另外楼主,我看你SPI里面写的是PB12的中断,你不是说的是PB2吗?

void Exit_Ini(void)
{         
  EXTI_InitTypeDef EXTI_InitStructure;
  GPIO_InitTypeDef GPIO_InitStructure;     
   
  /* Configure PB9 as input floating (EXTI Line9) */
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
  GPIO_Init(GPIOB, &GPIO_InitStructure);
  /* Connect EXTI Line9 to PB.09 */
  GPIO_EXTILineConfig(GPIO_PortSourceGPIOB, GPIO_PinSource2);
  /* Configure EXTI Line9 to generate an interrupt on falling edge */  
  EXTI_InitStructure.EXTI_Line = EXTI_Line2;
  EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
  EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;
  EXTI_InitStructure.EXTI_LineCmd = ENABLE;
  EXTI_Init(&EXTI_InitStructure);
}

/*******************************************************************************
* Function Name  : NVIC_Configuration
* Description    : Configure the nested vectored interrupt controller.
* Input          : None
* Output         : None
* Return         : None
*******************************************************************************/
void NVIC_Con(void)
{
  NVIC_InitTypeDef NVIC_InitStructure;               
  /* Configure one bit for preemption priority */
  NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
  /* Enable the EXTI15_10 Interrupt */
  NVIC_InitStructure.NVIC_IRQChannel = EXTI2_IRQn;
  NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
  NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
  NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
  NVIC_Init(&NVIC_InitStructure);
}
回答时间:2015-5-19 10:33:17
我仔细看了一楼,楼主到底是用PB4还是PB2还是PB12?
如果是PB4需要将GPIO_Remap_SWJ_NoJTRST这个功能关闭了。调用GPIO重映射功能。
salfe 回答时间:2015-5-19 11:35:04
安 发表于 2015-5-19 10:33
我仔细看了一楼,楼主到底是用PB4还是PB2还是PB12?
如果是PB4需要将GPIO_Remap_SWJ_NoJTRST这个功能关闭了 ...

哈哈  
这个无所谓呀 其实是我的板子定义的是PB0,因为没办法触发 才一直在换其他的IO去试的。。
回答时间:2015-5-19 11:38:43
我测试几个都是可以的,但是PB4需要关闭SWD的功能。
salfe 回答时间:2015-5-19 11:39:17
salfe 发表于 2015-5-19 11:35
哈哈  
这个无所谓呀 其实是我的板子定义的是PB0,因为没办法触发 才一直在换其他的IO去试的。。 ...

版主方不方便提供下QQ or 其他的联系方式呢。。
salfe 回答时间:2015-5-19 11:51:27
安 发表于 2015-5-19 11:38
我测试几个都是可以的,但是PB4需要关闭SWD的功能。

请问SPI1也有初始化嘛?
回答时间:2015-5-19 14:53:14
没有初始化SPI。
salfe 回答时间:2015-5-19 17:09:13
安 发表于 2015-5-19 14:53
没有初始化SPI。

嗯 ,如果没有初始化SPI1,我这边也是能被触发的。
版主是不是可以帮忙试下,把SPI1初始化加进去 看看啊。谢谢
回答时间:2015-5-20 09:56:33
好的。我测试一下。
回答时间:2015-5-20 10:34:17
我直接调用你的SPI初始化,中断改为PB2测试没有问题。

所属标签

相似问题

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版