程序如下:void InitKey(void)//中断初始化
{
PORT4->DBEN &= ~0x01; // 禁止P34输入信号防反弹
PORT4->IMD |= 0x01; // 设置P34电平触发
PORT4->IEN &= ~0x00010000; // 禁止高电平或上边沿中断
PORT4->IEN |= 0x00000001; // 允许低电平或下边沿中断
NVIC_EnableIRQ(GPIO_P2P3P4_IRQn); // 开中断
}
void KeyIntHandler(void)//中断服务函数
{
INT32U KeyIntFlag;
KeyIntFlag =PORT4 ->ISRC;
PORT4->ISRC = KeyIntFlag;
PORT4->IEN &= ~0x00000001; // 禁止低电平或下边沿中断
WiegandSendKey();
BUZZOn(50); // 开蜂鸣器
}
|