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

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

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

4

主题

5

回帖

120

积分

注册会员

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

使用道具 举报 送花

  • 打卡等级:偶尔看看III
  • 打卡总天数:57
  • 最近打卡:2025-05-04 08:52:05

718

主题

1万

回帖

1万

积分

管理员

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

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:425
  • 最近打卡:2025-05-04 00:16:27
已绑定手机

19

主题

3191

回帖

4930

积分

论坛元老

积分
4930
发表于 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
  • 打卡总天数:418
  • 最近打卡:2025-05-04 00:25:16
已绑定手机

34

主题

2096

回帖

2210

积分

荣誉版主

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

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:215
  • 最近打卡:2025-05-03 00:37:12
已绑定手机

36

主题

561

回帖

1942

积分

荣誉版主

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

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

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:215
  • 最近打卡:2025-05-03 00:37:12
已绑定手机

36

主题

561

回帖

1942

积分

荣誉版主

积分
1942
发表于 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-5-4 10:26 , Processed in 0.140450 second(s), 87 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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