⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 asms_process.s43

📁 使用MSP430F413的低功耗水表系统
💻 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 + -