;[IRQ.asm] IRQ驱动-------------------------------------*
;本文件包含:                                           *
;    (1)IRQInit:IRQ初始化                              *
;硬件连接:                                             *
;    (1)IRQ引脚上拉，并且接一个按键                    *
;------------------------------------------------------*

;IRQ驱动头文件
   INCLUDE "MC9S08AW60.inc"
 
 
 ;声明外部函数  
    XDEF IRQInit      ;IRQ初始化  


;IRQInit:初始化IRQ引脚功能-----------------------------*
;功能:定义IRQ模式，使能IRQ中断，IRQ引脚使能，触发方式  *
;入口:无                                               *
;出口:无                                               *
;堆栈深度:2                                            *
;------------------------------------------------------*
IRQInit:
    BCLR   IRQSC_IRQMOD,IRQSC ;  IRQ模式位:0=边沿方式；1=电平方式
    BSET   IRQSC_IRQIE,IRQSC  ;  IRQ中断使能位:0=中断使能;1=禁止中断
    BSET   IRQSC_IRQPE,IRQSC  ;  IRQ引脚使能位:1=中断引脚使能;0=普通IO
    BCLR   IRQSC_IRQEDG,IRQSC ;   IRQ触发沿选择位:下降沿或低电平信号有效
 RTS
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 ;debug code
    ;PSHA              ;A进栈
    ;LDA   #%00010010
    ;        ||  ||
    ;        ||  |+---IRQ模式位:0=边沿方式；1=电平方式
    ;        ||  +----IRQ中断使能位:0=中断使能;1=禁止中断
    ;        |+-------IRQ引脚使能位:1=中断引脚使能;0=普通IO
    ;        +--------IRQ触发沿选择位:下降沿或低电平信号有效
    ;STA   IRQSC    
    ;PULA              ;A出栈
    
    ;BCLR   0,IRQSC ;      IRQ模式位:0=边沿方式；1=电平方式
    ;BSET   1,IRQSC  ;  IRQ中断使能位:0=中断使能;1=禁止中断
    ;BSET   4,IRQSC  ;  IRQ引脚使能位:1=中断引脚使能;0=普通IO
    ;BCLR   5,IRQSC ;IRQ触发沿选择位:下降沿或低电平信号有效