打印

中断标志问题

[复制链接]
1858|18
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jiaxw|  楼主 | 2011-9-22 19:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
shimx| | 2011-9-22 19:04 | 只看该作者
代码呢

使用特权

评论回复
板凳
jiaxw|  楼主 | 2011-9-22 19:05 | 只看该作者
正要发呢,#pragma vector=PORT2_VECTOR

__interrupt void P2__ISR(void)

{

        if ( P2IFG & BIT3 )

        {

                asm("NOP");

        }

        if ( P2IFG & BIT5 )

        {

                asm("NOP");

        }

        P2IFG = 0;

}

void main(void)

{

    WDTCTL = WDTPW + WDTHOLD;                 // Stop Watchdog Timer

        BCSCTL1 = CALBC1_1MHZ;                    // Set DCO to 16MHz

        DCOCTL = CALDCO_1MHZ;



        P2DIR |= BIT0 + BIT4;        //执行该语句时P2IFG会变为0x10,即P2IFG4=1;

        //由于F2272IO口方向默认为输入,所以这里省掉了配置中断时的方向设置

        P2IES |= BIT3 + BIT5;        //下降沿触发

        P2IE |= BIT3 + BIT5;

    _EINT();     //开总中断



        while(1)

        {

               

        }

}

使用特权

评论回复
地板
jiaxw|  楼主 | 2011-9-22 19:06 | 只看该作者
P2DIR |= BIT0 + BIT4;
//执行该语句时P2IFG会变为0x10,即P2IFG4=1;
感觉问题很奇怪,虽然不影响我现在的程序,但是希望搞清楚原因。

使用特权

评论回复
5
五谷道场| | 2011-9-22 19:08 | 只看该作者
不应该呀,如果是这样的话,bit0的IFG也应该置位吧

使用特权

评论回复
6
午夜粪车| | 2011-9-22 19:09 | 只看该作者
P2IN在P2DIR为输入态设置时,是一个状态。在 P2DIR设为输出态时,P2IN与外界的联系断了,又变为另一个状态,这触发了中断标志。

使用特权

评论回复
7
zhaoxqi| | 2011-9-22 19:10 | 只看该作者
当P2.4为输入态时,引脚电平是否为低?

使用特权

评论回复
8
jiaxw|  楼主 | 2011-9-22 19:12 | 只看该作者
谢谢楼上,我检查一下。

使用特权

评论回复
9
jiaxw|  楼主 | 2011-9-22 19:13 | 只看该作者
我有看了下,得到了一下结论

1、若P2IN.x = 0, P2OUT.x = 1, P2REN.x = 1, P2DIR.x = 1, P2IES.x = 0(上升沿); 修改P2REN.x = 1 则 P2IN.x = 1, P2IFG.x = 1.
2、若P2IN.x = 1, P2OUT.x = 1, P2REN.x = 0, P2DIR.x = 1, P2IES.x = 1(下降沿); 修改P2OUT.x = 0 则 P2IN.x = 0, P2IFG.x = 1.

使用特权

评论回复
10
午夜粪车| | 2011-9-22 19:14 | 只看该作者
P2IN产生跳变就会是中断标志位置位,P2IN的跳变可能由于改变P2OUT或者P2DIR或者P2REN而产生。

使用特权

评论回复
11
jiaxw|  楼主 | 2011-9-22 19:17 | 只看该作者
是啊,我得把IO口中断的使用好好总结下

使用特权

评论回复
12
huangchui| | 2011-9-22 19:25 | 只看该作者
我记得430的IO口设置为输出也会产生中断标志位的。

使用特权

评论回复
13
jiajs| | 2011-9-22 19:26 | 只看该作者
看datesheet,设置out和sel寄存器都会导致IFG未知

使用特权

评论回复
14
jiaxw|  楼主 | 2011-9-22 19:28 | 只看该作者
OK,结贴了,多谢大家

使用特权

评论回复
15
tuzihog| | 2011-9-22 23:02 | 只看该作者
留名明天仔细研究

使用特权

评论回复
16
teet| | 2011-9-23 21:31 | 只看该作者
嗯嗯原来如此呀

使用特权

评论回复
17
teet| | 2011-9-23 21:32 | 只看该作者
:victory:

使用特权

评论回复
18
lilihua0721| | 2011-9-27 21:32 | 只看该作者
看下datesheet就清楚了,设置out和sel寄存器都会导致IFG未知

使用特权

评论回复
19
jiahy| | 2011-9-27 21:50 | 只看该作者
老帖子了,还翻出来。。。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

825

主题

9762

帖子

4

粉丝