This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

急!请支持:MSP430G2453的P1/ P2/ P3都能支持IO中断吗?谢谢!

Other Parts Discussed in Thread: MSP430G2453

请支持:MSP430G2453的P1/ P2/ P3都能支持IO中断吗?谢谢!

  • 你好!

    P1 P2 IO支持中断功能,P3不支持。示例代码参考MSP430ware 里对应器件的代码。

  • 只有P1、P2可以中断:

    Up to three 8-bit I/O ports are implemented:
    • All individual I/O bits are independently programmable.
    • Any combination of input, output, and interrupt condition (port P1 and port P2 only) is possible.
    • Edge-selectable interrupt input capability for all bits of port P1 and port P2 (if available).

    下面是一个简单的例子:


    #include <msp430.h>

    int main(void)
    {
    WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer
    P1DIR |= 0x01; // Set P1.0 to output direction
    P1IE |= 0x10; // P1.4 interrupt enabled
    P1IES |= 0x10; // P1.4 Hi/lo edge
    P1IFG &= ~0x10; // P1.4 IFG cleared

    _BIS_SR(LPM4_bits + GIE); // Enter LPM4 w/interrupt
    }

    // Port 1 interrupt service routine
    #pragma vector=PORT1_VECTOR
    __interrupt void Port_1(void)
    {
    P1OUT ^= 0x01; // P1.0 = toggle
    P1IFG &= ~0x10; // P1.4 IFG cleared
    }

  • 所有430都是P1/P2支持I/O中断