📄 mixframea.asm
字号:
;*****************************************
; ASM file MixFrameA.ASM for C&ASM mix programing
;==========================
; subroutines that may accessed from Frame.C and startup.a51 models
;--------------------------
public DataInit,Timer0Int,UartInt
;==========================
; Variables that may accessed from spnlc.c and startup.a51 models
;--------------------------
public AsmArg
;==========================
; external C functions that may accessed from this model
;--------------------------
extrn code (?C_STARTUP)
;==========================
; external subroutines that may accessed from this model
;--------------------------
extrn data (CArg)
;-----------------------------------------
$include (C8051F000.inc)
;=================================
name DNLD_SUB
dnldcseg SEGMENT CODE ;our code segment
;=================================
; New IRAM(80-FF) Variable definition for New board
;---------------------------------
DSEG at 20h
AsmArg: ds 2 ;int defined in ASM
;=========================================
rseg dnldcseg ;use our own code segment
;=========================================
; Data initialization for startup
;-----------------------------------------
DataInit: ;original L287D
mov CArg,#3
ret
;==========================
; UART INT routine
;--------------------------
UartInt:
PUSH ACC
PUSH DPH
PUSH DPL
PUSH PSW
;add your codes here
POP PSW
POP DPL
POP DPH
POP ACC
RETI
;---------------------
;==========================
; Timer0 INT,excutew every 10ms
;--------------------------
Timer0Int:
PUSH ACC ;2T
PUSH B ;2T
PUSH DPH ;2T
PUSH DPL ;2T
PUSH PSW ;2T
MOV PSW,#8 ;3T
CLR TR0 ;2T,Total=15T
;add your codes here
POP PSW
POP DPL
POP DPH
POP B
POP ACC
RETI
;=====================
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -