[STM8] 请问香版,C语言中STM8S判断PC某两位断口电平问题

[复制链接]
3072|6
 楼主| tieguanyin2008 发表于 2010-9-11 09:12 | 显示全部楼层 |阅读模式
请问香版,C语言中STM8S,PC0 PC1设置为输出,在中断程序中要判断PC0,PC1电平高低,之后再反转。我用if(GPIOC->ODR & 0x03)判断,很容易被其他中断打断导致错误,有没有好点的办法?

谢谢!
32446975 发表于 2010-9-11 10:36 | 显示全部楼层
在执行前关总中断,执行后开总中断.
香水城 发表于 2010-9-11 10:46 | 显示全部楼层
如果只看这句话:if(GPIOC->ODR & 0x03),它不会被其他中断打断,你肯定还有其它操作导致错误,请说详细一些。
 楼主| tieguanyin2008 发表于 2010-9-11 11:20 | 显示全部楼层
本帖最后由 tieguanyin2008 于 2010-9-11 11:23 编辑

定时中断程序里:

if(GPIOC->ODR & 0x03)
{
GPIOC->ODR &= ~0x03;
}
else
{
GPIOC->ODR |= 0x03;
}

PC0 PC1出来的结果不一样。
香水城 发表于 2010-9-11 11:34 | 显示全部楼层
如果你在其它地方没有对PC端口的操作,那么中断肯定不会对这段程序产生影响。
火箭球迷 发表于 2010-9-11 16:18 | 显示全部楼层
检查一下你它地方的程序
yybj 发表于 2010-9-11 16:31 | 显示全部楼层
2楼的方法似乎不太可行,还得找出问题的原因
您需要登录后才可以回帖 登录 | 注册

本版积分规则

15

主题

90

帖子

1

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