学习通用IO与外部中断

发布者:atech123最新更新时间:2015-10-14 来源: eefocus关键字:通用IO  外部中断 手机看文章 扫描二维码
随时随地手机看文章
MSP430f5438有12组通用IO分别是从1到J,能作为外部中断引脚的只有P1和P2两个引脚;对于控制寄存器有下列几种:

 

PxIN是输入寄存器,

PxOUT是输出寄存器

PxDIR是输入与输出方向配置寄存器

PxREn 是下拉下拉寄存器

PxDS 是驱动增强与减弱寄存器

PxSEL是功能选择寄存器

 

PxIES是中断触发方式寄存器

PxIE是中断允许寄存器

PxIFG是中断标志寄存器

中断配置如下:

 

//外部中断优先级没有软件配置。端口0最高,端口7最低

void out_interrupt()

{

   PortDIR  |=BIT0;  //设置端口方向

   PortIFG  &=0xfe; //中断标志

   PortIES  |=BIT0;  //中断触发方式

   PortIE   |=BIT0;  //中断开发

   PortREN |=BIT0;

   P2OUT |=BIT0;

}

//中断服务程序如下:

#include "msp430f5438.h"

#include "init.h"

void main( void )

{

  clk_init();

  out_interrupt();

  P5DIR |=BIT4;

  _EINT();//编译器内部开中断

  while(1);

}

#pragma vector=PORT2_VECTOR

__interrupt void Port2(void)

{

  __delay_cycles(1000);

  if((P2IN&0xff)!=0xff)

  {

        P5OUT ^=BIT4;   

  }

  PortIFG  &= ~BIT0; //中断标志

}

关键字:通用IO  外部中断 引用地址:学习通用IO与外部中断

上一篇:单片机的C语言中位操作用法
下一篇:最近做的智能垃圾桶程序代码

推荐阅读最新更新时间:2024-03-16 14:35

51单片机入门——定时器与外部中断
1. 定时器 1.1. 定时器的初步认识 在认识定时器之前我们先了解两个基本概念。 时钟周期:时钟周期 T 是时序中最小的时间单位,具体计算方法就是 1 / 时钟源频率,一般情况下单片机的晶振都是 11.0592 MHz 的,对于这个单片机系统来说时钟周期就是 1 / 11059200 秒。 机器周期:我们的单片机完成一个操作的最短的时间。机器周期主要针对于汇编语言,在汇编语言下程序的每一条语句所使用的时间都是机器语言的整数倍,而且语句占用的时间是可以计算出来的,而 C 语言一条语句所占用的时间是不确定的,受诸多因数的影响。51 单片机系列,在其标准架构下一个机器语言是 12 个时钟周期,也就是 12 / 11059200
[单片机]
51单片机入门——定时器与<font color='red'>外部中断</font>
STM8S_009_EXTI外部中断
Ⅰ、写在前面 STM8S的稳定性不如STM32,特别是在低功耗时,使用EXTI外部中断唤醒,很容易受到干扰信号而唤醒。因此,这种情况需在硬件电路上多加考虑抗干扰的电路。 其次,就是注意软件的上下拉配置,如果外部加了上拉或下拉电阻,不建议再配置成上拉或下拉;如果没有,建议加上。要使其软件稳定,还得深入EXTI的功能。 为方便大家阅读,本文内容已经整理成PDF文件: http://pan.baidu.com/s/1i5uWhJR 作者:strongerHuang 版权所有,未经允许,禁止用于其它商业用途!!! Ⅱ、EXTI基础知识 STM8S的EXTI外部中断归属于GPIO一类,只需要将其IO配置成外部中断、使能
[单片机]
STM32学习笔记整理之(2)——外部中断
学习STM32也快一年了,现在工作的内容跟用的是STM32平台的,趁着年前工作量比较小,总结一下STM32的基础知识,不出意外的话将会连续发布完整的笔记整理,学习的时候主要是跟着野火教程学的,然后在整理出适合自己的笔记。 2.1 NVIC配置 1、中断分组 在配置优先级的时候,NVIC 只可以配置 16 种中断向量的优先级,抢占优先级和响应优先级的数量由一个 4 位的数字来决定,把这个 4 位数字的位数分配成抢占优先级部分和响应优先级部分。 有 5 组分配方式: 第0组:所有4位用来配置响应优先级。 第1组:最高1位配抢占优先级,低3位配响应优先级。2^1=2 种抢占优先级(0,1),2^3=8 种响应优先级, 第2组:2位
[单片机]
STM32 EXTI外部中断
外部中断引脚配置初始化:以PA0为例说明 1、外设端口时钟打开 RCC- APB2ENR|=1 2; //使能PORTA时钟 2、端口设置为输入 GPIOA- CRL&=0XFFFFFFF0;//PA0设置成输入 GPIOA- CRL|=0X00000008; 3、端口选择上拉/下拉方式 GPIOA- ODR&=0xFFFFFFFE; //A0默认下拉 4、中断触发方式选择 Ex_NVIC_Config(GPIO_A,0,RTIR); //上升沿触发 5、嵌套向量中断控制(抢占优先级,响应优先级,组) MY_NVIC_Init(2,2,EXTI0_IRQChannel,2); //抢占2,子优先级2,组2
[单片机]
STM32单片机实现外部中断的步骤及方法
先从最简单的问题开始,用STM32外部中断的方法实现PB.0按键控制PA.0LED灯: 先总的说下实现中断的步骤: 1,配置NVIC寄存器(函数),设置中断为第几组,占先优先级和次优先级; 函数方法: void NVIC_Configuration() { NVIC_InitTypeDef NVIC_InitStruct; NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); NVIC_InitStruct.NVIC_IRQChannel=EXTI0_IRQn; NVIC_InitStruct.NVIC_IRQChannelPreempTIonPriority=0; NVIC_Init
[单片机]
STM32单片机实现<font color='red'>外部中断</font>的步骤及方法
C51/C52单片机的中断(EXTI)介绍(一)
一、什么是中断 打断:打断当前做的事情,去执行中断函数里的程序,执行完过后回来接着执行原来未执行完的程序。如下图所示: 二、中断源及中断号 注意:写中断服务函数时,中断源与中断号要一一对应,否则不能进入中断服务函数,比如: void Timer0IRQ(void) interrupt 1 //1就是中断号,默认工作组0 格式如下: void 函数名(void) interrupt 中断号 using 工作组 { 中断服务函数内容; } 三、中断相关寄存器介绍 1、中断允许控制寄存器IE 2、扩展中断控制寄存器XICON(STC89C52RC) 四、中断优先级
[单片机]
C51/C52单片机的中断(<font color='red'>EXTI</font>)介绍(一)
STM32上的外部中断
今天记录一下关于外部中断的知识点以及在32上外部中断的相关寄存器以及配置的流程。 一、原理介绍 首先,什么是中断 中断就是将正在做的事情停下来,先去完成另外一件事情,完成后继续回来做这件事。 比如:在吃饭的时候有电话打来,去接电话,打完电话后继续吃法。 在计算机科学中,中断(英语:Interrupt)是指处理器接收到来自硬件或软件的信号,提示发生了某个事件,应该被注意,这种情况就称为中断。 通常,在接收到来自外围硬件(相对于中央处理器和内存)的异步信号,或来自软件的同步信号之后,处理器将会进行相应的硬件/软件处理。发出这样的信号称为进行中断请求(interru
[单片机]
STM32上的<font color='red'>外部中断</font>
【51单片机快速入门指南】3.1:配置外部中断触发方式和中断优先级
普中51-单核-A2 STC89C52 Keil uVision V5.29.0.0 PK51 Prof.Developers Kit Version:9.60.0.0 源码 stdint.h见【51单片机快速入门指南】1:基础知识和工程创建 中断知识见【51单片机快速入门指南】3:中断系统 将外部中断0和外部中断1均配置为下降沿触发,但外部中断1的优先级最高,外部中断0的优先级最低。 EXTI.c #include REGX52.H #include intrins.h #include stdint.h #include EXTI.h //定义LED管脚 sbit D1 = P2^0; sbit D2 =
[单片机]
【51单片机快速入门指南】3.1:配置<font color='red'>外部中断</font>触发方式和中断优先级
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

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

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

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