⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 io_init.c

📁 io口 io口 io口 io口 io口
💻 C
字号:
//MSP430F14-IO口中断演示程序
/*************************************************************************/
//以下是结合MC430F14开发板来实现的按键检处理程序实验.
//设置P2.0为中断口,通过对IO的下边沿触发,使其中断,并将板上的D2 LED取反.
//应用目标板:www.Microcontrol.cn MC430F14开发板
/*************************************************************************/
#include <msp430x14x.h>

void main(void)
{
  WDTCTL = WDTPW + WDTHOLD;             // 停止看门狗
  P1DIR |= BIT1;                        // 设P1.1为输出

  P2IE |= BIT0;                         // P2.0中断使能
  P2IES |= BIT0;                        // P2.0 IO口边沿中断触发模式,下边沿有效
  P2IFG &= ~BIT0;                       // P2.0 清IO中断标志位
  
  _EINT();				//开总中断允许
  LPM4;             			//进入低功耗模式4,此时单片机功耗最低.
}

//*************************************************************************
// P2口中断服务程序
#pragma vector=PORT2_VECTOR
__interrupt void Port_2(void)
{
  P1OUT ^= BIT1;                        // P1.1取反
  P2IFG &= ~0x01;                       // P2.0清除相应中断标志位
}
//*************************************************************************
//使IO中断时新手们要了解以下几点:
//1- MSP430的IO中,只有P1,P2才有IO中断功能.

//2- P1,P2每组IO是多源中断源,P1IG0-P1IG7或P2IG0-P2IG7是共一个中断源的,用户可以
//通过查房方式来得到是那个IO产生了中断.

//3- 改变P1IES或P2IES中的位可能会引起相应中断标志位置位,与引脚电平有关.
//  PxIES.x    PxIN.x   PxIFG.x
//  0->1        0        不变
//  0->1        1        可能置位
//  1->0        0        可能置位
//  1->0        1        不变
//所以,改变P1IES或P2IES后,根据需要清除相关的PxIG.x位.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -