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

📄 核终.asm

📁 核磁共振含油测量仪
💻 ASM
📖 第 1 页 / 共 5 页
字号:
           ;
           mov        com,   #0a7h
           lcall             pr12

           mov        com,   #80H        ;#83h
           lcall             pr12

           mov        com,   #9ch
           lcall   	     pr12
           ret

;*****
CcTAB2:
        DB  00H  10H  10H  12H  22H  2BH  7AH  13H      ;"编"
        DB  23H  7BH  23H  0BH  75H  25H  09H  00H
        DB  00H  40H  20H 0FCH  04H 0FCH  00H 0FCH
        DB  54H  54H 0FCH  54H  54H  54H  0CH  00H

        DB  00H  00H  0FH  08H  08H  0FH  00H  7FH      ;"号"
        DB  04H  07H  0CH  00H  00H  01H  00H  00H
        DB  00H  10H 0F8H  10H  10H 0F0H  00H 0FEH
        DB  00H 0F0H  10H  10H  10H  20H 0C0H  00H

        DB  00H  00H  1FH  10H  17H  10H  10H  13H      ;"质"
        DB  12H  12H  12H  12H  20H  23H  4CH  00H
        DB  00H  1CH 0E0H  40H 0FCH  40H  40H 0F8H
        DB  08H  48H  48H  48H 0B0H  0CH  02H  00H

        DB  00H  00H  1FH  10H  0FH  10H  7FH  00H      ;"量"
        DB  1FH  11H  1FH  11H  3FH  01H  7FH  00H
        DB  00H  10H 0F8H  10H 0F0H  10H 0FCH  00H
        DB 0F0H  10H 0F0H  10H 0F8H  00H 0FCH  00H

        DB  00H  01H  01H  02H  05H  18H  60H  0FH      ;"含"
        DB  00H  00H  0FH  08H  08H  0FH  08H  00H
        DB  00H  00H  80H  40H  20H  9EH  84H 0E0H
        DB  20H  40H 0F0H  10H  10H 0F0H  10H  00H

        DB  00H  00H  20H  18H  0BH  42H  22H  26H      ;"油"
        DB  0AH  0BH  12H  72H  12H  13H  12H  00H
        DB  00H  20H  20H  24H 0FEH  24H  24H  24H
        DB  24H 0FCH  24H  24H  24H 0FCH  04H  00H

        DB  00H  01H  00H  3FH  01H  22H  17H  09H      ;"率"
        DB  12H  27H  01H  7FH  01H  01H  01H  00H
        DB  00H  00H  88H 0FCH  00H  48H  90H  10H
        DB  48H 0E4H  00H 0FEH  00H  00H  00H  00H

        DB  00H  00H  00H  3CH  25H  24H  24H  3CH      ;"时"
        DB  24H  24H  24H  3CH  24H  20H  00H  00H
        DB  00H  10H  10H  10H 0FEH  10H  10H  90H
        DB  50H  50H  10H  10H  10H  50H  20H  00H

        DB  00H  10H  1bH  28H  20H  23H  22H  22H      ;"间"
        DB  23H  22H  22H  23H  20H  20H  20H  00H
        DB  00H  04H 0FEH  04H  04H 0E4H  24H  24H
        DB 0E4H  24H  24H 0E4H  04H  14H  08H  00H

        DB  00H  01H  01H  02H  04H  08H  17H  60H      ;"命"
        DB  1EH  12H  12H  12H  1EH  12H  00H  00H
        DB  00H  00H  00H  80H  40H  30H 0CEH  00H
        DB  78H  48H  48H  48H  68H  50H  40H  00H

        DB  00H  01H  01H  02H  04H  09H  10H  60H      ;"令"
        DB  0FH  00H  00H  06H  01H  00H  00H  00H
        DB  00H  00H  00H  80H  40H  20H  98H  86H
        DB 0F0H  10H  20H  40H  80H  80H  40H  00H

        DB  00H  10H  10H  10H  7CH  11H  12H  3AH      ;"检"
        DB  34H  51H  51H  10H  10H  10H  07H  00H
        DB  00H  40H  40H 0A0H  90H  08H  06H 0F8H
        DB  00H  48H  28H 0A8H  90H  10H 0FEH  00H

        DB  00H  00H  00H  3FH  02H  04H  08H  3FH      ;"查"
        DB  08H  08H  0FH  08H  0FH  00H  3FH  00H
        DB  00H  80H  84H 0FEH 0A0H  90H  88H 0F6H
        DB  10H  10H 0F0H  10H 0F0H  00H 0FCH  00H

        DB  00H  08H  08H  09H  7EH  08H  08H  0EH      ;"打"
        DB  18H  68H  08H  08H  08H  28H  10H  00H
        DB  00H  00H  04H 0FEH  10H  10H  10H  10H
        DB  10H  10H  10H  10H  10H  50H  20H  00H

        DB  00H  02H  07H  38H  20H  20H  20H  3EH      ;"印"
        DB  20H  20H  23H  2CH  30H  00H  00H  00H
        DB  00H  00H  00H  7CH  44H  44H  44H  44H
        DB  44H  44H  54H  48H  40H  40H  40H  00H

        DB  00H,08H,08H,08H,10H,15H,36H,54H             ;"修"
        DB  17H,14H,15H,14H,14H,11H,10H,13H
        DB  00H,80H,80H,0FCH,88H,50H,20H,0D8H
        DB  17H,60H,88H,30H,44H,88H,30H,0C0H

        DB  00H,00H,3FH,00H,00H,00H,00H,08H             ;"正"
        DB  08H,08H,08H,08H,08H,08H,08H,7FH
        DB  00H,04H,0FEH,80H,80H,80H,80H,88H
        DB  0FCH,80H,80H,80H,80H,80H,82H,0FFH

;        DB  00H,00H,00H,00H,00H,00H,00H,00H
;        DB  00H,00H,00H,00H,00H,00H,00H,00H
;        DB  00H,00H,00H,00H,00H,00H,00H,00H
;        DB  00H,00H,00H,00H,00H,00H,00H,00H

;==========================================================
;*** 计算含油率
    ADDSHUJU:   ORL P1,#0FFH         ; 计算面积,累计十次采样值
                ANL P1,#3FH         ;片选 RAM6264 0011,1111 Y1
                MOV R4,CAI_SHU_D
                MOV RAM_ADRH,#00H
                MOV RAM_ADRL,#00H
                 ;*********************求采样点最大值点
       JIEGOU1:
                MOV DPH,RAM_ADRH    ;取 RAM 地址
                MOV DPL,RAM_ADRL
                MOVX A,@DPTR        ;读高位字节
                MOV AD_8,A          ;AD_4=MMMM,LLLL . AD_8=0000,HHHH
                INC DPTR
                MOVX A,@DPTR
                MOV AD_4,A
                INC DPTR
                MOV RAM_ADRH,DPH
                MOV RAM_ADRL,DPL

                CLR C
                MOV A,AD_4
                SUBB A,#0FFH
                MOV A,AD_8
                SUBB A,#07H
                JNC SHANGBAN     ;(AD_8AD_4)>7FFH 上半圆

                ;*********下半圆处理
                CLR C
                MOV A,#0FFH
                SUBB A,AD_4
                MOV AD_4,A
                MOV A,#07H
                SUBB A,AD_8
                MOV AD_8,A
                LJMP MAINJI

                ;**********上半圆处理
     SHANGBAN:  MOV A,AD_4
                SUBB A,#0FFH
                MOV AD_4,A
                MOV A,AD_8
                SUBB A,#07H
                MOV AD_8,A

     MAINJI:    MOV DPTR,#0400H   ;计算波形面积
                MOVX A,@DPTR
                CLR C
                ADD A,AD_4
                MOVX @DPTR,A
                INC DPTR
                MOVX A,@DPTR
                ADDC A,AD_8
                MOVX @DPTR,A
                INC DPTR
                MOVX A,@DPTR
                ADDC A,#00H
                MOVX @DPTR,A

                DJNZ R4,JIEGOU1
                RET
       ;************************
;**
   JIEGOU:      ORL P1,#0FFH
                ANL P1,#3FH         ;片选 RAM6264 0011,1111 Y1
                MOV DPTR,#0410H         ;低位
                MOVX A,@DPTR
                MOV BDIV,A
                MOV DPTR,#0411H
                MOVX A,@DPTR
                MOV BDIV+1,A
                MOV DPTR,#0412H
                MOVX A,@DPTR
                MOV BDIV+2,A           ;结果数据/10
                MOV BDIV+3,#00H          ;最高位
                MOV PDIV,#0AH
                MOV PDIV+1,#00H
                MOV PDIV+2,#00H
                MOV PDIV+3,#00H
                LCALL DIV32           ; 得平均值
                MOV A,BDIV
                MOV DPTR,#0410H
                MOVX @DPTR,A
                MOV A,BDIV+1
                INC DPTR
                MOVX @DPTR,A
                MOV A,BDIV+2
                INC DPTR
                MOVX @DPTR,A

                MOV A,NUMBER_HAO
                CJNE A,#00H,JHANGYOULV ;当前编号是 0 吗? N 转
                LJMP BIAOYAN_P
 JHANGYOULV:    LJMP HANGYOULV
                    ;标样处理  只显示测量数据值
  BIAOYAN_P:
                MOV DPTR,#0400H
                MOVX A,@DPTR
                MOV DPTR,#0410H
                MOVX @DPTR,A
                MOV DPTR,#0401H
                MOVX A,@DPTR
                MOV DPTR,#0411H         ;标样测量值
                MOVX @DPTR,A
                MOV DPTR,#0402H         ;高位
                MOVX A,@DPTR
                MOV DPTR,#0412H
                MOVX @DPTR,A

                MOV DPTR,#0410H         ;低位
                MOVX A,@DPTR
                MOV BDIV,A
                MOV DPTR,#0411H
                MOVX A,@DPTR
                MOV BDIV+1,A
                MOV DPTR,#0412H
                MOVX A,@DPTR
                MOV BDIV+2,A           ;结果数据/100000
                MOV BDIV+3,#00H          ;最高位
                MOV PDIV,#40H
                MOV PDIV+1,#86H
                MOV PDIV+2,#01H
                MOV PDIV+3,#00H
                LCALL DIV32
                MOV A,BDIV
                ADD A,#10H
                MOV LCD_BUFFER,A

                MOV BDIV,DIV_C          ;结果数据/10000
                MOV BDIV+1,DIV_C+1
                MOV BDIV+2,DIV_C+2
                MOV BDIV+3,DIV_C+3
                MOV PDIV,#10H
                MOV PDIV+1,#27H
                MOV PDIV+2,#00H
                MOV PDIV+3,#00H
                LCALL DIV32
                MOV A,BDIV
                ADD A,#10H
                MOV LCD_BUFFER+1,A

                MOV BDIV,DIV_C          ;结果数据余数/1000
                MOV BDIV+1,DIV_C+1
                MOV BDIV+2,DIV_C+2
                MOV BDIV+3,DIV_C+3
                MOV PDIV,#0E8H
                MOV PDIV+1,#03H
                MOV PDIV+2,#00H
                MOV PDIV+3,#00H
                LCALL DIV32
                MOV A,BDIV
                ADD A,#10H
                MOV LCD_BUFFER+2,A

                MOV BDIV,DIV_C          ;结果数据余数/100
                MOV BDIV+1,DIV_C+1
                MOV BDIV+2,DIV_C+2
                MOV BDIV+3,DIV_C+3
                MOV PDIV,#64H
                MOV PDIV+1,#00H
                MOV PDIV+2,#00H
                MOV PDIV+3,#00H
                LCALL DIV32
                MOV A,BDIV
                ADD A,#10H
                MOV LCD_BUFFER+3,A

                MOV BDIV,DIV_C          ;结果数据余数/10
                MOV BDIV+1,DIV_C+1
                MOV BDIV+2,DIV_C+2
                MOV BDIV+3,DIV_C+3
                MOV PDIV,#0AH
                MOV PDIV+1,#00H
                MOV PDIV+2,#00H
                MOV PDIV+3,#00H
                LCALL DIV32
                MOV A,BDIV
                ADD A,#10H
                MOV LCD_BUFFER+4,A

                MOV A,DIV_C           ;结果数据余数
                ADD A,#10H
                MOV LCD_BUFFER+5,A

                ORL P1,#0FFH
                LCALL CLR_LCDDAT
                mov        o_x,#57h
                mov        o_y,#01h
                LCALL      WRI_DATA
                RET

    HANGYOULV:  MOV R1,#BMUL    ; (R试*M标*100)/(R标*M试)=含油率%
                MOV R0,#PMUL
                MOV R2,#03H
                MOV R3,#01H
                MOV R4,#MULJI
                MOV R5,#00H
                MOV DPTR,#0400H   ;低位
                MOVX A,@DPTR
                MOV @R1,A
                INC R1
                INC DPTR
                MOVX A,@DPTR    ;0401H
                MOV @R1,A
                INC R1
                INC DPTR
                MOVX A,@DPTR    ;0402H 试样测量值
                MOV @R1,A

                MOV A,#100
                MOV @R0,A
                MOV R1,#BMUL    ; (R试*M标*100)/(R标*M试)=含油率%
                MOV R0,#PMUL
                MOV R2,#03H
                MOV R3,#01H
                MOV R4,#MULJI
                MOV R5,#00H
                LCALL DOMUL     ;多字节乘法  (R*100)

                MOV BMUL,MULJI
                MOV BMUL+1,MULJI+1
                MOV BMUL+2,MULJI+2
                MOV BMUL+3,MULJI+3
                MOV BMUL+4,MULJI+4
                MOV BMUL+5,MULJI+5
                MOV R1,#BMUL
                MOV R0,#PMUL
                MOV R2,#03H
                MOV R3,#01H
                MOV R4,#MULJI
                MOV R5,#00H
                MOV DPTR,#0509H
                MOVX A,@DPTR
                MOV PMUL+1,A
                MOV DPTR,#050AH
                MOVX A,@DPTR
                MOV PMUL,A           ;;多字节乘法  (R*100)*M
                MOV R1,#BMUL    ; (R试*M标*100)/(R标*M试)=含油率%
                MOV R0,#PMUL
                MOV R2,#06H
                MOV R3,#02H
                MOV R4,#MULJI
                MOV R5,#00H
                LCALL DOMUL     ;多字节乘法  (R*100)*M

                MOV DPTR,#1800H
                MOV A,R4
                MOV R0,A
      LILOOP:   MOV A,@R0       ;存 (R试*M标*100)
                MOVX @DPTR,A
                INC R0
                INC DPTR
                DJNZ R5,LILOOP
                ;*
                MOV DPTR,#0410H
                MOVX A,@DPTR
                MOV BMUL,A
                INC DPTR
                MOVX A,@DPTR
                MOV BMUL+1,A
                INC DPTR
                MOVX A,@DPTR
                MOV BMUL+2,A
                MOV DPTR,#0509H
                LCALL RAM_ADR
                MOVX A,@DPTR

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -