isr.c
来自「《嵌入式系统-使用HCS12微控制器的设计与应用》在CodeWarrior开发环」· C语言 代码 · 共 40 行
C
40 行
//[isr.c]中断处理函数------------------------------------------------------*
//功能: *
// (1)定义中断处理函数 *
//-------------------------------------------------------------------------*
//头文件
#include "isr.h" //中断处理函数头文件
#pragma CODE_SEG __NEAR_SEG NON_BANKED
//ISR_KBI:键盘中断处理函数-------------------------------------------------*
//功 能:获取键盘的键值和定义值并将它们通过串口发送出去 *
//参 数:无 *
//返 回:无 *
//-------------------------------------------------------------------------*
__interrupt 25 void ISR_KBI(void)
{
INT8U KB_valueN,KB_DefValue;
INT32U i;
DISABLE_INTERRUPTS; //关总中断
DISABLEIOint; //KB_P.7-4输入引脚禁止中断
for (i=0 ; i<20000; i++); //延迟
KB_valueN = KB_ScanN(10); //扫描键值,存于KB_valueN中
if (0xFF == KB_valueN)
goto KB_Exit;
KB_DefValue = KB_Def(KB_valueN); //键值转化为定义值并发送
SCISend1(KB_valueN); //发送键值
SCISend1(KB_DefValue);
for (i=0 ; i<25000; i++); //延迟
KB_Exit:
KB_Init(); //初始化键盘
EnableIOint; //KB_P.7-4输入引脚允许中断
ENABLE_INTERRUPTS; //开总中断
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?