avrx_generatesinglestepinterrupt.s
来自「血凝仪检测系统,硬件电路部分由正弦波产生模块、前级放大与滤波模块、检测线圈、锁相」· S 代码 · 共 42 行
S
42 行
#include "avrx.inc"
/*
Copyright 1999-2001, Larry Barello
larry@barello.net
*/
/*+
; --------------------------------------------------
; Generate Interrupt (Single Step Support)
;
; PASSED: Nothing
; USES: X, Y and R0
; RETURNS: Nothing
; NOTES: Generates an interrupt using Timer0. Assumes global
; interrupt flag is cleared.
;
; NB: This routine is called by AvrX in the Epilog code.
; This routine must be modfied to fit your particular
; requirements. The shipped code works with 8515 varients.
;
;
-*/
_MODULE(avrx_generatesinglestepinterrupt)
_CODESECTION
_FUNCTION(GenerateInterrupt)
GenerateInterrupt:
ldi Yl, 1<<CS00 ; 1x prescale
ser Xh
in R0, TCCR0 ; Previous prescaler
in Yh, TCNT0 ; Previous count
out TCNT0, Xh ; Set maximum
out TCCR0, Yl ; Interrupt generated NOW
out TCCR0, R0 ; Restore orignal prescaler
out TCNT0, Yh ; Restore original count
ret
_ENDFUNC
_END
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?