在外部还没有加上中断信号时,会进入一次中断

[复制链接]
1596|22
 楼主| morrisk 发表于 2015-3-27 21:19 | 显示全部楼层 |阅读模式
P1.7使用上升沿触发中断。在仿真运行时,在外部还没有加上中断信号时,会进入一次中断。每次都是这样,是不是由于仿真过程中I/O管脚有上升电平造成的?
pengf 发表于 2015-3-27 21:20 | 显示全部楼层
你最好设置下降沿触发中断,因为一般上电的瞬间,管脚会是高电平的
zyf部长 发表于 2015-3-27 21:21 | 显示全部楼层
你的管脚设置下拉了没
pengf 发表于 2015-3-27 21:22 | 显示全部楼层
接上拉电阻和下拉电阻呢
 楼主| morrisk 发表于 2015-3-27 21:23 | 显示全部楼层
接上拉电阻和下拉电阻也不能解决问题
小小猫咪 发表于 2015-3-27 21:23 | 显示全部楼层
先清标志位?
pengf 发表于 2015-3-27 21:24 | 显示全部楼层
能产生中断,肯定是有上升电平,至于是什么原因造成的就不好说了,用示波器好好测试一下这个管脚
renyaq 发表于 2015-3-27 21:25 | 显示全部楼层
直接接地或者接高电平,看看还能进中断不?
kangzj 发表于 2015-3-27 21:26 | 显示全部楼层
通过1K电阻上拉,还能进去呀,怪了
zwll 发表于 2015-3-27 21:27 | 显示全部楼层
是不是程序出问题了
 楼主| morrisk 发表于 2015-3-27 21:28 | 显示全部楼层
由于有一句P1IFG |= 0x00引起的,修改为P1IFG = 0x00就可以了。
renyaq 发表于 2015-3-27 21:28 | 显示全部楼层
这么奇怪
 楼主| morrisk 发表于 2015-3-27 21:29 | 显示全部楼层
P1IFG |= 0x00与P1IFG = 0x00的区别是什么?
zyf部长 发表于 2015-3-27 21:29 | 显示全部楼层
P1IFG |= 0x0; 这一句什么用也没有啊,寄存器内容保持不变啊。
chuxh 发表于 2015-3-27 21:31 | 显示全部楼层
是啊,P1IFG =  0x0; 将寄存器清零。
zyf部长 发表于 2015-3-27 21:31 | 显示全部楼层
是有区别的
|=是读改写
=直接赋值,是不会有读操作的
 楼主| morrisk 发表于 2015-3-27 21:32 | 显示全部楼层
这些操作如果针对RAM是没有实际区别的
juventus9554 发表于 2015-3-27 21:33 | 显示全部楼层
对,但针对SFR可能就不一样了
司徒老鹰 发表于 2015-3-27 21:33 | 显示全部楼层

具体的取决于SFR说明
llljh 发表于 2015-3-27 21:34 | 显示全部楼层
有可能在上电时有高电平产生,而导致IO进入中断。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

701

主题

6879

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部