📄 asms_process.s43
字号:
#include "msp430x41x.h"
NAME ASMS_Process
RSEG CODE
;==============================================
; 时钟+1秒
;==============================================
PUBLIC _TimeInc
_TimeInc: CLRC
DADD.B #1,0(R12);SS
CMP.B #60H,0(R12)
JL ED;SS<60 END
MOV.B #0,0(R12);SS CLR
CLRC
DADD.B #1,1(R12);MM
CMP.B #60H,1(R12)
JL ED
MOV.B #0,1(R12);MM CLR
CLRC
DADD.B #1,2(R12)
CMP.B #24H,2(R12);HH<24 END
JL ED
MOV.B #0,2(R12);HH CLR
ED: RET
;==============================================
;constant=0时调用
;R13中为返回值,整数有进位时返回1,否则为0
;==============================================
PUBLIC _BCD4INC
_BCD4INC: CLRC
CLR.B R13
DADD.B #1,3(R12)
JNC C1
MOV.B #1, R13
DADC.B 4(R12)
DADC.B 5(R12)
DADC.B 6(R12)
C1: MOV.B R13,R12
RET
;==============================================
;constant<>0时调 用
;R13中为返回值,整数有进位时返回1,否则为0
;==============================================
PUBLIC _BCD6ADD
_BCD6ADD: CLRC
CLR.B R13
DADD.B @R14+,0(R12)
DADD.B @R14+,1(R12)
DADD.B @R14,2(R12)
DADC.B 3(R12)
JNC E
MOV.B #1, R13
DADC.B 4(R12)
DADC.B 5(R12)
DADC.B 6(R12)
E: MOV.B R13,R12
RET
;==============================================
; PUBLIC _BCD1INC
;_BCD1INC: CLRC
; DADD.B #1,0(R12)
; RET
;==============================================
; PUBLIC _BCD2INC
;_BCD2INC: CLRC
; DADD.B #1,0(R12)
; DADC.B 1(R12)
; RET
;==============================================
; PUBLIC _BCD6INC
;_BCD6INC: CLRC
; DADD.B #1,0(R12)
; DADC.B 1(R12)
; DADC.B 2(R12)
; DADC.B 3(R12)
; DADC.B 4(R12)
; DADC.B 5(R12)
; RET
; PUBLIC _BCD4INC10
;_BCD4INC10: CLRC
; DADD.B #10,0(R12)
; DADC.B 1(R12)
; DADC.B 2(R12)
; DADC.B 3(R12)
; RET
; PUBLIC _SWAPB1
;_SWAPB1 SWPB R12
; RET
;==============================================
; PUBLIC _BCD1ADD
;_BCD1ADD: CLRC
; DADD.B @R14,0(R12)
; RET
;==============================================
; PUBLIC _BCD2ADD
;_BCD2ADD: CLRC
; DADD.B @R14+,0(R12)
; DADD.B @R14,1(R12)
; RET
;==============================================
; PUBLIC _BCD4ADD
;_BCD4ADD: CLRC
; DADD.B @R14+,0(R12)
; DADD.B @R14+,1(R12)
; DADD.B @R14+,2(R12)
; DADD.B @R14,3(R12)
; RET
;==============================================
; PUBLIC _BCD5ADD
;_BCD5ADD: CLRC
; DADD.B @R14+,0(R12)
; DADD.B @R14+,1(R12)
; DADC.B 2(R12)
; DADC.B 3(R12)
; DADC.B 4(R12)
; RET
;==============================================
; PUBLIC _BCD4SUB
;_BCD4SUB: ADD.B #066H,0(R12)
; INV.B 0(R12)
; ADD.B #066H,1(R12)
; INV.B 1(R12)
; ADD.B #066H,2(R12)
; INV.B 2(R12)
; ADD.B #066H,3(R12)
; INV.B 3(R12)
; SETC
; DADD.B @R14+,0(R12)
; DADD.B @R14+,1(R12)
; DADD.B @R14+,2(R12)
; DADD.B @R14,3(R12)
; RET
;==============================================
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -