找回密码
 立即注册
查看: 763|回复: 6

STC8G,外部中断,如何判断上下边沿

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:5
  • 最近打卡:2024-07-26 13:53:00

4

主题

5

回帖

120

积分

注册会员

积分
120
发表于 2024-5-17 11:16:33 | 显示全部楼层 |阅读模式
外部中断0,有单下边沿方式,有上下边沿方式,选择上下边沿的话,如何确定触发的是上边沿还是下边沿呢?
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:100
  • 最近打卡:2025-06-17 08:13:13

734

主题

1万

回帖

1万

积分

管理员

积分
16692
发表于 2024-5-17 11:38:40 | 显示全部楼层
如是 边沿变化都中断,则进中断服务程序后,立即读对应I/O的状态,
读到高就认为是上升沿;读到低就认为是下降沿;

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:469
  • 最近打卡:2025-06-18 06:25:36
已绑定手机

19

主题

3232

回帖

5291

积分

论坛元老

积分
5291
发表于 2024-5-17 11:28:49 | 显示全部楼层
引脚上拉还是下拉
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:5
  • 最近打卡:2024-07-26 13:53:00

4

主题

5

回帖

120

积分

注册会员

积分
120
发表于 2024-5-17 11:29:41 | 显示全部楼层
so*** 发表于 2024-5-17 11:28
引脚上拉还是下拉

上下拉,不一样的吗?方便都讲讲吗?谢谢
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:461
  • 最近打卡:2025-06-18 01:15:53
已绑定手机

38

主题

2222

回帖

2671

积分

荣誉版主

积分
2671
发表于 2024-5-19 16:30:37 | 显示全部楼层
定一个全局变量,记录一下每次退出外部中断前的IO状态,然后进入边沿中断后对比IO状态和变量,如果不一致,那可以根据变化是从1到0还是从0到1判断边沿,如果一致,说明是个极窄的脉冲
睁开眼睛做场梦~~~
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:217
  • 最近打卡:2025-05-11 11:03:06
已绑定手机

36

主题

563

回帖

1972

积分

荣誉版主

积分
1972
发表于 2024-5-19 19:00:47 | 显示全部楼层
本帖最后由 Yim_Hom 于 2024-5-19 19:02 编辑

定义一个flag;
然后正常配置上升沿下降沿都触发;
在中断中读你的触发flag=。。。,
然后判断你的flag是1还是0。
不就知道是上升还是下降了吗?
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:217
  • 最近打卡:2025-05-11 11:03:06
已绑定手机

36

主题

563

回帖

1972

积分

荣誉版主

积分
1972
发表于 2024-5-20 12:17:56 | 显示全部楼层
手里有8H的开天斧,这样测试了一下:
P32对应INT0,设置为下降沿触发,初始化P32为准双向口且使能上拉电阻,确保初始电平为1,这样在按键没有按下的情况下读取P32的值,为1;当P32按下的时候,读取P32的值变为0;松开后继续变为1。
P33对应INT1,设置为上升下降沿触发,初始化P33为准双向口且失能上拉电阻,并且P33赋值为0,确保初始电平为0,这样P33在没有外接VCC的情况下读取的值为0;当外接VCC后,P33的值变为1;断开VCC后继续变为0。
这样就绝对验证了是上升沿还是下降沿触发,也从根儿上知道了究竟。

回复 支持 反对

使用道具 举报 送花

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

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-18 14:02 , Processed in 0.182894 second(s), 94 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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