MSP430中断标志问题

[复制链接]
2868|14
手机看帖
扫描二维码
随时随地手机跟帖
heweibig| | 2011-6-15 15:24 | 显示全部楼层
代码呢

使用特权

评论回复
lizye|  楼主 | 2011-6-15 15:25 | 显示全部楼层
正要发呢,#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)

        {

               

        }

}

使用特权

评论回复
liuzaiy| | 2011-6-15 15:27 | 显示全部楼层
P2DIR |= BIT0 + BIT4;
//执行该语句时P2IFG会变为0x10,即P2IFG4=1;
感觉问题很奇怪,虽然不影响我现在的程序,但是希望搞清楚原因。

使用特权

评论回复
午夜粪车| | 2011-6-15 15:30 | 显示全部楼层
不应该呀,如果是这样的话,bit0的IFG也应该置位吧

使用特权

评论回复
shimx| | 2011-6-15 15:34 | 显示全部楼层
P2IN在P2DIR为输入态设置时,是一个状态。在 P2DIR设为输出态时,P2IN与外界的联系断了,又变为另一个状态,这触发了中断标志。

使用特权

评论回复
dengdc| | 2011-6-15 15:45 | 显示全部楼层
当P2.4为输入态时,引脚电平是否为低?

使用特权

评论回复
lizye|  楼主 | 2011-6-15 15:47 | 显示全部楼层
谢谢楼上,我检查一下。

使用特权

评论回复
lizye|  楼主 | 2011-6-15 16:02 | 显示全部楼层
我有看了下,得到了一下结论

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.

使用特权

评论回复
午夜粪车| | 2011-6-15 16:03 | 显示全部楼层
P2IN产生跳变就会是中断标志位置位,P2IN的跳变可能由于改变P2OUT或者P2DIR或者P2REN而产生。

使用特权

评论回复
lizye|  楼主 | 2011-6-15 16:13 | 显示全部楼层
是啊,我得把IO口中断的使用好好总结下

使用特权

评论回复
lizye|  楼主 | 2011-6-15 16:14 | 显示全部楼层
OK,结贴了,多谢大家

使用特权

评论回复
永远的不知| | 2011-6-16 11:10 | 显示全部楼层
我记得430的IO口设置为输出也会产生中断标志位的。

使用特权

评论回复
kardel| | 2011-6-20 13:10 | 显示全部楼层
看datesheet,设置out和sel寄存器都会导致IFG未知

使用特权

评论回复
kakio| | 2011-6-21 10:05 | 显示全部楼层
如楼上所说 看看是否会导致IFG未知

使用特权

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

本版积分规则

852

主题

9757

帖子

2

粉丝