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

STM32的外部事件应该何如使用

[复制链接]
怎样共勉 提问时间:2024-7-1 21:43 / 未解决

知道外部事件是产生中断标志,但是不产生中断请求。但是在主函数中应该怎么检测这个中断标志,或者说应该怎么配置。在cubemx中,将io口配置为事件模式之后。相对应的中断线也不高亮了,想问一下大佬们,应该怎么使用这个

收藏 评论1 发布时间:2024-7-1 21:43

举报

1个回答
xmshao 回答时间:前天 15:08
这个地方你可以自己基于寄存器写下代码。


这里给个比较省事的办法供参考,先按外部中断配置,生成代码后,


手动将相关中断使能的代码屏蔽掉,或者禁用掉,这样CPU是不会做中断响应的。


我以手头板上的PC13为例。


HAL_NVIC_DisableIRQ(EXTI15_10_IRQn);


然后你在其它地方查询该事件的标志位。


EXTI_HandleTypeDef  hexti13;


  hexti13.Line = EXTI_LINE_13;
   
   hexti13.PendingCallback = userexticallback;


while(HAL_EXTI_GetPending(&hexti13,  1))


{
     __HAL_GPIO_EXTI_CLEAR_FLAG(GPIO_PIN_13) ; //请标志位
                        //其它用户处理
}
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版