PA12引脚中断初始化。
void Exit_Init(void){ SIM_SCGC5 |= (1<<9); //开启PORTA端口 PORTA_PCR12 |= (1<<8) | (10<<16) | (3); //GPIO 下降沿触发 上拉电阻 GPIOA_PDDR &= ~(1<<12); //输入模式 enable_irq(87); //使能PORT中断}
SIM_SCGC5 使能PORTA
PORTA_PCR12下降沿触发(1010)
使能上拉输出
PORTA的中断号
重定义中断服务函数
中断服务函数
#include "common.h"#include "isr.h"char str[] = "EXIT ";U8 i;void PORTA_IRQHandler(void){ if(PORTA_ISFR & (1<<12)) //PTA12触发中断 { PORTA_ISFR |= (1<<12); //写1清中断标志位 for(i=0; str[i]!='\0'; i++) Uart4_SendByte(str[i]); } }
程序运行……