"); //-->
首先使用PINSEL0和PINSEL1来配置相应的I/O口工作模式,设置相应的中断位→设置相应的输入输出→使用VICIntSelect来选择使用FIQ或者IRQ(0)→VICIntEnable中断使用→使用EXTINT设置中断标志,写入1将方位清零→while(1)等等中断发生。
在中断子函数中,首先使用VICIRQStatus读出当前的中断状态→函数功能完成→清除相应中断→设置向量地址寄存器VICVectAddr(当任何分配给向量IRQ Slot的中断请求或软件中断使能,分配为IRQ并声明时,读取该寄存器将返回最高优先级微量地址寄存器中的地址。否则,返回默认微量地址寄存器中的地址。)
#include "config.h"
#define LEDCON 0x00000800
/****************************************************************************
功能:外部中断1处理
****************************************************************************/
void __irq IRQ_Eint1(void)
{ uint32 i;
i=VICIRQStatus; //读出VICIRQStatus的值
i=IOSET; //读出当前LED2控制值
if((i&LEDCON)==0) //控制LED2控制值
{ IOSET="LEDCON";
}
else
{ IOCLR="LEDCON";
}
while((EXTINT&0x02)!=0) //等待外部中断信号恢复为高电平
{ EXTINT="0x02"; //清除EINT1中断标志
}
VICVectAddr=0x00; //中断处理结束时,硬件复位,勿忘
}
/****************************************************************************
* 名称:main()
* 功能:
****************************************************************************/
int main(void)
{
PINSEL0=0x20000000;//这里选择为外部中断1,
PINSEL1=0x00000000;
IODIR=LEDCON;//控制引脚输入输出
IOSET=LEDCON;//点亮相应的灯
IOCLR=LEDCON; //熄灭相应的灯,但上面那一句有什么作用,好象多余呀
VICIntSelect=0;//中断功能选择
VICIntEnable=0x00008000;//在某一位上使能中断
VICVectCntl1=0x2F;
VICVectAddr1=(int)IRQ_Eint1;
EXTINT=0x07;
while(1);
}
说明:VICVectAddr(当任何分配给向量IRQ Slot的中断请求或软件中断使能,分配为IRQ并声明时,读取该寄存器将返回最高优先级微量地址寄存器中的地址。否则,返回默认微量地址寄存器中的地址。)
VICVectCntl每一个寄存器控制16个微量IRQ Slot中的一个,Slot0优先级最高。在VICVectCntl寄存器中禁止一个微量IRQ Slot不会禁止中断本身,中断只是变为非向量的形式。为1 表示向量IRQ使能,
专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们
相关推荐
ISL55210子评估板的介绍
拐点已至,AMD开启端侧AI的“智能体主机时代
触摸式电子开关电路(三)
打造开放共赢生态 携手共育创新人才 AMD AI开发者大会首次在中国举行
卫生间门控开关电路(三)
单片机开发资料
Arteris 技术获理想汽车采用,赋能智能汽车
使用微型高性能GNSS天线以最大限度减少设计妥协
去藕电容的位置
电源模块设计
感应式控制开关电路(一)
Re: TMSC60 DSP的时钟电路里的\"EMI FILTER\"是什么啊?
谷歌首款音频AI眼镜将于今年秋季上市
用CD4017组成多地控制开关
单片机控制的恒压供水系统
ZL9101M数字电源模块简介
Re: 请问什么是1dB压缩带宽
突破车载高速线缆测试瓶颈 ,涵盖PAM4/NRZ的车载线缆多通道误码验证方案
单片机软件开发代码大全
Intersil Zilker Labs电源导航软件
格罗方德宣布推出用于CPO的硅光子共封装先进光引擎方案
Intersil ZL9101 数字电源模块 - 热设计
电源管理IC涨价潮将至
零一万物与AMD联合发布Cube01:李开复博士与苏姿丰博士同台共话多智能体时代的智算基础设施
单片机控制GSM模块实现短信收发的软件设计
三星将举行史上最大规模罢工
Re: C6x的BGA该怎么画PCB?
感应式控制开关电路(二)
单片机快速入门实验:控制LED闪烁发光
串口的-12v电源最大能提供多大电流