强风吹拂~ 2022-04-04 14:06 采纳率: 91.9%
浏览 58
已结题

不同引脚产生的外部中断如何区分?

不同引脚产生的外部中断如何区分?
不同引脚产生的外部中断如何区分?
不同引脚产生的外部中断如何区分?

  • 写回答

2条回答 默认 最新

  • 卡尔曼的BD SLAMer 计算机视觉领域新星创作者 2022-04-04 14:41
    关注

    不能判断电平,会产生误导;如上升沿,下降沿边触发,是瞬态产生,可能在没有来得及判断时,中断就已经进行了;
    举个例子,在PC口有的PC0和PC1两个信号都要求能够中断。而STM8S 对应PC口只有一个 中断向量,我要怎么才能够知道具体是有PC0引起的中断呢?还是PC1引起的中断呢?
    我也看了坛子里面的一些相关的帖子,大致有这么一种方法,进入中断后读取IO口的电平状态 以判断是哪个IO口引起的中断。 但是我有个疑问,假定设置为下降沿触发中断。PC0先出现下降沿,系统进入中断,如果在这个时间段,PC1也出现下降沿,在中断里面再读PC0和PC1电平状态,仍然不能够判别是由PC0引起的中断,还是由PC1触发的中断啊!!
    不建议这样用 最好一个PC,一个PD,每个口只开放一个中断;
    那这样,一个PORT, 每个独立的中断口就没有意义了?
    STM8S有5组IO端口,每组端口分别有若干引脚可以作为外部中断触发输入,分别为:
    端口A: PA[6:2];端口B: PB[7:0];端口C: PC[7:0];端口D: PD[6:0];端口E: PE[7:0]。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月12日
  • 已采纳回答 4月4日
  • 创建了问题 4月4日

悬赏问题

  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分