/*EXTMODE、EXTPOLAR 这两个寄存器一个管理选择电平触发还是边沿触
发,一个选择上升沿和下降沿或者高低电平触发。
在如侍芦外部中断配置中我们还需要在PINSEL4 中将相应的管脚配置成外
部中断模式。*/
主程序如下: keil MDK
#include "lpc17xx.h"
void EINT0_IRQHandler () //外部中断0 中断函数
{
LPC_SC->EXTINT|=1 //清零标志位
LPC_GPIO2->FIOPIN=0x000000fe 渣带//LED 显示
}
void EINT1_IRQHandler ()
{
LPC_SC->EXTINT|=2
LPC_GPIO2->FIOPIN=0x000000fd
}
void EINT2_IRQHandler ()
{
LPC_SC->EXTINT|=4
LPC_GPIO2->FIOPIN=0x000000fb
}
void ext_init(void) //外部中断初始化
{
LPC_PINCON->PINSEL4=0x01500000 //配置管脚,选择外部中断功能
LPC_SC->EXTMODE=0x07 //配置成脉冲触发
LPC_SC->EXTPOLAR=0x00 //配置成下降沿触发
NVIC_EnableIRQ(EINT0_IRQn) //使能外部中断0
NVIC_EnableIRQ(EINT1_IRQn)
NVIC_EnableIRQ(EINT2_IRQn)
LPC_SC->EXTINT=7 //所有使用的外部谈搭中断标准位清零
}
int main(void)
{
SystemInit() //系统初始化
ext_init() //中断初始化
LPC_GPIO2->FIODIR=0x000000ff //端口方向配置
LPC_GPIO2->FIOPIN=0x000000ff //端口电平配置
while(1)
}
两个不同的内核,基本上都要重写的先到下面这个网站下载lpc1788的驱动库纯差,里面有串口搜备的例程,keil4的和iar编译器的都有,然后根据例程来改做漏皮:
http://www.lpcware.com/content/nxpfile/lpc177x-and-lpc178x-cmsis-compliant-standard-peripheral-firmware-driver-library-keil
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)