MSP430F5529 中断按键 的问题

2019-03-24 10:02发布

代码如下,开关S1能正常工作S2不能,而且有个问题,仿真的时候直接跳进了P1口的中断。
请大神看看,再次跪谢。


  1. #include "msp430f5529.h"
  2. #include <stdint.h>
  3. /*
  4. P1.7-->S1
  5. P2.2-->S2
  6. P8.1-->LED2
  7. P8.2-->LED3
  8. S1------LED2
  9. S2------LED3
  10. */
  11. void GPIO_init(void)
  12. {
  13.         P1DIR &= ~BIT7;
  14.         P2DIR &= ~BIT2;

  15.         P1REN |= BIT7;
  16.         P2REN |= BIT2;
  17.         P1OUT |= BIT7;
  18.         P2OUT |= BIT7;

  19.         P1IES &= (~BIT7);
  20.         P2IES &= (~BIT2);

  21.         P1IE |= BIT7;
  22.         P2IE |= BIT2;
  23.         /*  */
  24.         P8DIR |= BIT2+BIT1;
  25.         P8OUT = 0XFF;
  26. }

  27. #pragma vector=PORT1_VECTOR
  28. __interrupt void PORT1_ISR()
  29. {
  30.         P8OUT ^= BIT1;
  31.         while(!(P1IN & BIT7));
  32.         __delay_cycles(200000);
  33.         P1IFG &= (~BIT7);
  34. }

  35. #pragma vector=PORT2_VECTOR
  36. __interrupt void PORT2_ISR()
  37. {
  38.         P8OUT ^= BIT2;
  39.         while(!(P2IN & BIT2));
  40.         __delay_cycles(200000);
  41.         P2IFG &= (~BIT2);
  42. }

  43. void main(void)
  44. {
  45.         WDTCTL = WDTPW + WDTHOLD;
  46.         GPIO_init();
  47.         __bis_SR_register(LPM4_bits +GIE);
  48. }
复制代码


此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
7条回答
REMY
1楼-- · 2019-03-25 12:27
sunduoze 发表于 2015-7-20 12:36
换其他脚试一下,前边我的5529脚也烧了

板子没坏。qiushenghua小哥指出了我程序的bug,粗心了

一周热门 更多>

相关问题

    相关文章