电子发烧友网 > 控制/MCU > 正文

基于MSP430G2553的IO外部中断配置说明

2018年11月08日 16:46 次阅读
这一篇文章将说明MSP430G2553的IO中断配置,整个P1的IO都可以配置IO中断,但中断处理函数只有一个,MSP430和大多数MCU一样提供上升沿、下降沿选择。 在Launchpad上有按键S2,接在P1.3口,当按下后P1.3将接入高电平,从而触发中断。 在实例代码中,配置了P1.3和P1.6的LED灯,当按下P1.3的按键产生中断,LED灯将切换点亮 基于MSP430G2553的IO外部中断配置说明 1.按键的中断配置 要配置按键中断,需要先设置P1.3口为输入,并且设置上拉电阻以保障稳定性, P1DIR &= ~BIT3;//设置P1.3为输入 P1REN |= BIT3;//启用P1.3电阻 在启用电阻后,由P1OUT来配置下拉还是上拉 P1OUT |= BIT3;//设置上拉电阻 通过P1IES寄存器设置上升沿,0为下降沿 P1IES |= BIT3;//P1.3中断边缘选择 需要对P1的中断进行使能,除了这里还有总中断需要使能(在main函数中) P1IE |= BIT3;//P1.3中断使能 ===================================================================== 2.中断处理函数 在中断处理函数中处理LED程序 编译器指示 #pragma vector=PORT1_VECTOR __interrupt void PORT1_ISR(void) { delay(100);//约100ms P1OUT ^= (1《《6);//反向P1.0和P1.6 P1OUT ^= (1《《0); P1IFG = 0;//清除中断标识 } ===================================================================== 源代码: //P1.0---------Red Led //P1.3---------Button //P1.6---------Green Led #include “msp430g2553.h” //名称:delay(int time) //功能:延时程序 void delay(int TIme) { staTIc int i,j; for(i=0;i for(j=0;j《100;j++) { } } //名称:InitLed() //功能:初始化LED void InitLed() { P1DIR |= BIT0+BIT6;//设置BIT0和BIT6为输出 P1OUT &= ~0x01; //设置BIT0和BIT6低电平 P1OUT |= 0x40; //设置BIT0和BIT6低电平 } //名称:IniTIOInterrupt() //功能:初始化P1的按键中断配置 void IniTIOInterrupt() { P1DIR &= ~BIT3;//设置P1.3为输入 P1REN |= BIT3;//启用P1.3电阻 P1OUT |= BIT3;//设置上拉电阻 P1IES |= BIT3;//P1.3中断边缘选择 P1IE |= BIT3;//P1.3中断使能 P1IFG = 0x00;//清除中断标识 } //名称:PORT1_ISR(void) //功能:按键中断的处理函数 #pragma vector=PORT1_VECTOR __interrupt void PORT1_ISR(void) { delay(100);//约100ms P1OUT ^= (1《《6); P1OUT ^= (1《《0); P1IFG = 0;//清除中断标识 } int main( void ) { WDTCTL = WDTPW + WDTHOLD; InitLed();//初始化LED端口 InitIOInterrupt();//初始化IO中断 _EINT();//开总中断 while(1); return 0; }

技术专区

下载发烧友APP
打造属于您的人脉电子圈
关注电子发烧友微信
有趣有料的资讯及技术干货
关注发烧友课堂
锁定最新课程活动及技术直播
收藏 人收藏
分享:

评论

相关推荐

基于MSP430系统时钟低功耗模式的设置

如何将系统时钟设置到外部高频晶体振荡器,430的MCLK默认的是DCO的,如何安全的从DCO切换到外...
发表于 2018-11-05 15:55 60次阅读
基于MSP430系统时钟低功耗模式的设置

基于MSP430F5系列的硬件I2C的使用分享

【I2C地址设定】一般情况下I2C的7位地址被写成了8位长度,最低位无效。例如AT24C02的I2C...
发表于 2018-10-31 16:38 71次阅读
基于MSP430F5系列的硬件I2C的使用分享

基于MSP430F2274单片机对智能小车的应用...

该系统主要由MSP430控制器,超声波避障模块,电机驱动,测速,语音模块,温度模块,小车的机械运动部...
发表于 2018-10-23 15:43 78次阅读
基于MSP430F2274单片机对智能小车的应用...

浅谈单片机上电复位后端口的状态问题

在MSP430单片机的手册中,对于端口复位后的状态,是这样描述的:复位后,所有端口处于输入状态。就这...
发表于 2018-10-06 09:52 388次阅读
浅谈单片机上电复位后端口的状态问题

外部中断程式无任何反应

发表于 2018-09-04 17:02 166次阅读
外部中断程式无任何反应

请问一个zigbee模块最多可以支持多少个外部中断

发表于 2018-08-18 06:54 82次阅读
请问一个zigbee模块最多可以支持多少个外部中断

以MSP430低功耗单片机为CPU的太阳能警报器...

太阳能防空防灾电声警报器为各自独立的功能部件用积木形式集成安装在可移动的防水机箱内外,形成独立完整的...
发表于 2018-08-07 15:57 126次阅读
以MSP430低功耗单片机为CPU的太阳能警报器...

以MSP430单片机为核心的智能无功补偿控制器设...

为了记录每相电压、电流、有功功率、无功功率、功率因数,以及电容器的投、切时间,投、切次数等,系统扩展...
发表于 2018-08-07 15:48 469次阅读
以MSP430单片机为核心的智能无功补偿控制器设...

请问MSP430在CCS环境下,可以用UART来烧录程序吗?

发表于 2018-07-26 09:49 571次阅读
请问MSP430在CCS环境下,可以用UART来烧录程序吗?

板子内部的6个外部中断允许位通过CODE GENERATOR设置好后,请问中断应该在哪里写函数体呢?

发表于 2018-07-23 09:39 172次阅读
板子内部的6个外部中断允许位通过CODE GENERATOR设置好后,请问中断应该在哪里写函数体呢?

请问怎么开启外部中断?用户手册没看懂

发表于 2018-07-23 05:34 133次阅读
请问怎么开启外部中断?用户手册没看懂

请问瑞萨RX23T IO口可耐受5V电压吗?

发表于 2018-07-23 02:49 218次阅读
请问瑞萨RX23T IO口可耐受5V电压吗?

怎样设计一个以MSP430单片机为核心的称重式液...

液位测控仪是属于智能化仪器仪表的一种(指采用了微处理器的仪器仪表),其发展始于70年代。它是一种集测...
发表于 2018-07-20 09:47 91次阅读
怎样设计一个以MSP430单片机为核心的称重式液...

电桥平衡自调节的原理是什么?怎样设计一个基于MS...

若R2·R3-R1·R4=0,则电桥保持平衡。测量中电桥初始输出值一般不为零,这可能导致传感器在测量...
发表于 2018-07-19 09:26 161次阅读
电桥平衡自调节的原理是什么?怎样设计一个基于MS...

51单片机的外部中断介绍

发表于 2018-07-19 05:58 109次阅读
51单片机的外部中断介绍

51单片机捕获(外部中断)程序

发表于 2018-07-19 03:43 122次阅读
51单片机捕获(外部中断)程序

外部中断(IT0,IT1)触发方式介绍

发表于 2018-07-13 01:29 135次阅读
外部中断(IT0,IT1)触发方式介绍

51单片机按键外部中断的解决办法

发表于 2018-07-13 00:49 414次阅读
51单片机按键外部中断的解决办法

教程视频(外部中断)

lesson11-1
发表于 2018-07-10 00:07 151次阅读
教程视频(外部中断)

每一个GPIO如何配置成一个外部中断触发源

1STM32中断分组STM32 的每一个GPIO都能配置成一个外部中断触发源,这点也是 STM32 ...
发表于 2018-01-25 08:44 3545次阅读
每一个GPIO如何配置成一个外部中断触发源

温度测量系统设计,基于msp430单片机

本文介绍一种应用msp430单片机测量温度的方法,来代替传统教学中相对落后的热敏电阻结合电流表的实验...
发表于 2016-09-05 09:08 503次阅读
温度测量系统设计,基于msp430单片机

基于msp430单片机的温度测量系统设计

本文介绍一种应用msp430单片机测量温度的方法,温度是模拟量,要把被测的模拟量转换成数字量,以供单...
发表于 2016-09-01 16:58 1368次阅读
基于msp430单片机的温度测量系统设计

基于msp430f448单片机的交流电压测量

本文主要介绍了一个基于msp430单片机的交流电压测量系统,详细描述了利用单片机和简单模拟电路实现交...
发表于 2016-09-01 16:27 4091次阅读
基于msp430f448单片机的交流电压测量

基于MSP430的实时多任务操作系统

一般的观点认为,MSP430上使用RTOS是没有意义的这是可以理解的。因为MSP430的硬件资源有限...
发表于 2012-08-10 14:41 2495次阅读
基于MSP430的实时多任务操作系统

超声波接收电路图

超声波接收电路图如下图所示: 超声波在空气中传播时,能量会随着距离的增加而不断衰减。通过实验测得,当...
发表于 2012-07-05 13:45 4931次阅读
超声波接收电路图

DM642和CPLD外部中断的寄存器式键盘设计

介绍了一种采用DM642和CPLD相配合的扩展键盘方法。CPLD管理键盘电路中的芯片逻辑,DM642...
发表于 2011-08-19 16:21 1207次阅读
DM642和CPLD外部中断的寄存器式键盘设计

基于MSP430单片机的地下微水检测系统设计

微水试验法是一种瞬时向井中注入或抽取一定量的水,通过观测井水位变化情况,求得井附近含水层渗透系数的方...
发表于 2010-07-13 10:58 474次阅读
基于MSP430单片机的地下微水检测系统设计

MSP430单片机在电力系统中对开关电源控制的设...

1 引言 MSP430系列单片机是美国德州仪器(TI)1996年开始推向市场的一种16位超低功耗的...
发表于 2010-07-13 10:54 691次阅读
MSP430单片机在电力系统中对开关电源控制的设...

基于MSP430单片机实现ARINC429总线通...

ARINC429航空通讯总线是一种常用的惯导系统通讯总线。由于该总线的功能相对独立,航空电子系统逐步...
发表于 2010-06-14 06:48 591次阅读
基于MSP430单片机实现ARINC429总线通...