MSP430F5529的IO口管脚的中断学习笔记

发布者:EternalSunset最新更新时间:2019-10-18 来源: eefocus关键字:MSP430F5529  IO口管脚  中断 手机看文章 扫描二维码
随时随地手机看文章

非常简单的一个程序,在F5529的开发板上用按键的IO中断控制LED的亮灭:

#include  


int main(void)

{

    WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer


    P1DIR |= BIT0; //将LED1对应的IO口P1.0设置为输出

    P1OUT &= ~BIT0; //初始化该灯设置为灭


    P1DIR &= ~BIT7; //将按键1对应的IO口P1.7设置为输入

    P1IFG &= ~BIT7; //初始化清空中断标志位

    P1IE |= BIT7; //P1.7中断使能

    P1IES |= BIT7; //下降沿产生中断


    P1OUT |= BIT7; //P1.7设置为上拉电阻:OUT = 1; REN = 1;

    P1REN |= BIT7;


    __enable_interrupt();


    while(1);

}


#pragma vector = PORT1_VECTOR     //固定格式,声明中断向量地址,不能变

__interrupt void LED(void) //函数名,可以任意定义

{

int i;

switch(__even_in_range(P1IV,18))

{

case 0x10:

for (i = 0; i < 12000; i++);

if ((P1IN & BIT7) == 0) //注意位运算的优先级!!!非常重要

P1OUT ^= BIT0;

break;

default:

break;

}

}

经验总结:

1.  按键需要延时消抖


2.  标志位需要手动清零               (此处不完全正确,还有问题需要考虑)


3.  中断程序格式:


         #pragma vector = PORT2_VECTOR                      //固定格式,声明中断向量地址,不能变


__interrupt void fuck430(void)                  //函数名,可以任意定义


{


         switch(__even_in_range(P2IV,18))


         {


         case 0x06:


                   …


break;


         default:


                   break;


         }


}


4.  主程序中要开总中断,然后有循环


5.  位运算的优先级很低,注意加括号


6.  按键的上拉电阻,OUT、REN、IES



一上午终于把IO中断弄懂了。吸取位运算优先级的教训。


关键字:MSP430F5529  IO口管脚  中断 引用地址:MSP430F5529的IO口管脚的中断学习笔记

上一篇:MSP430F5438时钟系统
下一篇:浅谈msp430f5529入门(1)——时钟模块DCO

推荐阅读最新更新时间:2024-11-17 10:36

STM32单片机(2) 外部中断
学习资料 李想stm32视频教程49集 http://pan.baidu.com/s/1kTyt03P STM32的中断(上中下)外部中断(寄存器、库函数) STM32的函数说明(中文).pdf http://download.csdn.net/detail/leytton/7630851 中断管理函数.pdf http://wenku.baidu.com/view/b90e5b82360cba1aa811dad3.html 概念基础 STM32共76个中断,16个内核中断,60个外部中断,即可屏蔽中断 中断分5组:0-4,所有中断只能放在同一组里 ISER 、ISER 是32位的中断使能寄存器数组,ISER 的bi
[单片机]
STM32单片机(2) 外部<font color='red'>中断</font>
MSP432定时器异常进捕获中断的问题
问题描述: 使用msp432定时器捕获外接信号的上升沿,设断点调试时发现总是会进中断服务函数,但是并没有发生捕获事件,该程序如下: //TA0捕获中断 void TA0_N_IRQHandler(void){ //函数内执行的功能 update_times = 0; flag=1; //清除中断标志位 Timer_A_clearCaptureCompareInterrupt(TIMER_A0_BASE,TIMER_A_CAPTURECOMPARE_REGISTER_1); } 解决办法: 在清除中断标志位后加上一句 BITBAND_PERI(TIMER_A_CMSIS(TIMER_A0_BA
[单片机]
MSP432定时器异常进捕获<font color='red'>中断</font>的问题
【STM32】3—EXIT中断 & NVIC配置
0 实验预期效果 ① 上电复位时LED处于熄灭状态; ② 按下KEY1,LED点亮; ③ 按下KEY2,LED熄灭; 1 相关原理图 2 软件配置 配置PE3引脚和PE4引脚为外部中断触发引脚 配置触发中断种类 ① 开启下降沿触发中断:即在按下按键时电平由高变为低时触发; ② 开启上升沿触发中断:即在按下按键后松开时电平由低变为高时触发; ③ 开启下降沿上升沿都触发中断:即在按下时触发,松开时再次触发。 此处选择第一种:开启下降沿触发中断。 配置选择开启上拉电阻 配置NVIC设置中断优
[单片机]
【STM32】3—EXIT<font color='red'>中断</font> & NVIC配置
AVR的中断应用设计要点
AVR的中断源比较多,尤其是ATmega128,一共有35个外部以及内部中断源。通常情况下,Flash程序存储器空间的最低位置(0x0000-0x0045)定义为复位和中断向量空间。完整的中断向量见第二章表2-23。在中断向量表中,处于低地址的中断向量所对应的中断拥有高优先级,所以,系统复位RESET拥有最高优先级。 A.中断设计注意点: 1.具备Bootloader功能的AVR,其中断向量区可以在Flash程序存储器空间最低位置和Bootloader区的头部来回迁移,这主要用于配合Bootloader程序的应用。如果不使用Bootloader功能,一般不要中断向量区进行迁移。 2.Flash较小的AVR芯片,其一个中断向量占
[单片机]
英国电信CEO警告英政府:快速排除华为5G设备会致网络中断
据路透社报道,英国电信CEO Philip Jansen于当地时间周一敦促英国政府不要急于全面排除华为 5G 设备,他并警告称,此举可能会导致网络中断甚至安全问题。 据悉,Jansen对BBC广播表示,在理想情况下完全拆除华为设备至少需要5年的时间。当被问及如果电信运营商被告知在五年内采取行动将会产生何种风险时,Jansen表示:“如果事情发展得非常快,那么英国电信2400万移动用户的服务可能会出现中断问题。” 此前英国电信内部主管透露,华为在该公司的 4G 核心网络建置比重约达三分之二,剩余则为诺基亚。此外,该公司在撤换华为设备过程中,恐需花费一亿至数十亿不等金额。 另外有消息称,华为公司有意与英国首相鲍里斯·约翰逊会面
[手机便携]
51单片机的中断响应及撤销
中断响应 中断响应就是单片机CPU对中断源提出的中断请求的接受。中断请求被响应后,再经过一系列的操作,而后转向中断服务程序,完成中断所要求的处理任务。下面简要说明80c51的中断响应过程: 1.外中断采样和内中断置位 1.1外中断采样 要想知道外中断是否有请求发生,需要对外中断进行采样。 当通过软件将寄存器TCON的IT0(或IT1)位设置为0时,/INT0(或/INT1)为电平触发方式,CPU在每个机器周期的S5P2(第五个状态第2拍节)期间对/INT0(或/INT1)采样,一旦在P3.2(或P3.3)上检测到低电平时,则认为有外部中断申请,随即由硬件使TCON的IE0(或IE1)位置1,向CPU申请中断。在中断响应完
[单片机]
51单片机的<font color='red'>中断</font>响应及撤销
stm32 中断服务函数是如何进入的
今天在看stm32的中断,一时间不理解stm32主函数是如何进入中断函数的,按C编程的理解,会有个特定的入口之类的,但是看demo过程中没有发现入口。 以串口中断服务函数void USART1_IRQHandler(void) 为例,首先用到串口中断,需要先设定串口中断初始化以及串口初始化,另外void USART1_IRQHandler(void) 中断服务函数也应该写好。 发现在stm32的启动文件startup_stm32f10x_md.s中写到 DCD USART1_IRQHandler 其中DCD是一条数据定义伪指令,用于分配一片连续的字存储单元并用指定的数据初始化。 库里定义 #define USART1 ((
[单片机]
小广播
热门活动
换一批
更多
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved