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

📄 defaultisr_nonbios.asm

📁 2812 开发库
💻 ASM
📖 第 1 页 / 共 5 页
字号:
	.line	15
;----------------------------------------------------------------------
; 121 | *UART_B_4 = 0;   // RS485为发送状态                                    
;----------------------------------------------------------------------
        MOVL      XAR4,#589828          ; |121| 
        MOV       *+XAR4[0],#0          ; |121| 
	.line	16
;----------------------------------------------------------------------
; 122 | rec_flag = 1;                                                          
;----------------------------------------------------------------------
        MOV       @_rec_flag$8,#1       ; |122| 
	.line	17
;----------------------------------------------------------------------
; 123 | for (ix=0;ix<8;ix++) *UART_B_0 = uartb_buffer[ix] + 1;                 
;----------------------------------------------------------------------
        MOV       @_ix$9,#0             ; |123| 
        MOV       AL,@_ix$9             ; |123| 
        CMPB      AL,#8                 ; |123| 
        B         L19,GEQ               ; |123| 
        ; branch occurs ; |123| 
L18:    
        SETC      SXM
        MOVL      XAR4,#_uartb_buffer$10 ; |123| 
        MOV       ACC,@_ix$9            ; |123| 
        ADDL      XAR4,ACC
        MOV       AL,*+XAR4[0]          ; |123| 
        ADDB      AL,#1                 ; |123| 
        MOVL      XAR4,#589824          ; |123| 
        MOV       *+XAR4[0],AL          ; |123| 
        INC       @_ix$9                ; |123| 
        MOV       AL,@_ix$9             ; |123| 
        CMPB      AL,#8                 ; |123| 
        B         L18,LT                ; |123| 
        ; branch occurs ; |123| 
L19:    
	.line	18
;----------------------------------------------------------------------
; 124 | ix = 0;                                                                
;----------------------------------------------------------------------
        MOV       @_ix$9,#0             ; |124| 
L20:    
	.line	20
        MOVL      XAR4,#589829          ; |126| 
        MOV       AL,*+XAR4[0]          ; |126| 
        ANDB      AL,#0x01              ; |126| 
        CMPB      AL,#1                 ; |126| 
        BF        L17,EQ                ; |126| 
        ; branch occurs ; |126| 
	.line	21
;----------------------------------------------------------------------
; 128 | else                // Transmit enabled                                
;----------------------------------------------------------------------
        B         L22,UNC               ; |127| 
        ; branch occurs ; |127| 
L21:    
	.line	24
;----------------------------------------------------------------------
; 130 | if ((*UART_B_5 & 0x40) != 0) // 发送结束                               
;----------------------------------------------------------------------
        MOVL      XAR4,#589829          ; |130| 
        TBIT      *+XAR4[0],#6          ; |130| 
        BF        L22,NTC               ; |130| 
        ; branch occurs ; |130| 
	.line	26
;----------------------------------------------------------------------
; 132 | DelayUs(1);                                                            
;----------------------------------------------------------------------
        MOVB      AL,#1                 ; |132| 
        LCR       #_DelayUs             ; |132| 
        ; call occurs [#_DelayUs] ; |132| 
	.line	27
;----------------------------------------------------------------------
; 133 | *UART_B_4 = 0x02;   // RTS清零 RS485为接收状态                         
;----------------------------------------------------------------------
        MOVL      XAR4,#589828          ; |133| 
        MOV       *+XAR4[0],#2          ; |133| 
	.line	28
;----------------------------------------------------------------------
; 134 | rec_flag = 0;                                                          
;----------------------------------------------------------------------
        MOVW      DP,#_rec_flag$8
        MOV       @_rec_flag$8,#0       ; |134| 
	.line	30
L22:    
	.line	31
        LRETR
        ; return occurs
	.endfunc	137,000000000h,0



	.sect	".text"
	.global	_CAL_VEC
	.sym	_CAL_VEC,_CAL_VEC, 32, 2, 0
	.func	139
;----------------------------------------------------------------------
; 139 | void CAL_VEC(int N)                                                    
;----------------------------------------------------------------------

;***************************************************************
;* FNAME: _CAL_VEC                      FR SIZE:   6           *
;*                                                             *
;* FUNCTION ENVIRONMENT                                        *
;*                                                             *
;* FUNCTION PROPERTIES                                         *
;*                            0 Parameter,  4 Auto,  0 SOE     *
;***************************************************************

_CAL_VEC:
	.line	2
;* AL    assigned to _N
	.sym	_N,0, 4, 17, 16
	.sym	_N,-3, 4, 1, 16
	.sym	_i,-4, 4, 1, 16
	.sym	_temp,-6, 5, 1, 32
        ADDB      SP,#6
;----------------------------------------------------------------------
; 141 | int i;                                                                 
; 142 | static int j=0;                                                        
; 143 | long int temp;                                                         
; 144 | static long int VecR[6] = {0,0,0,0,0,0};                               
; 145 | static long int VecI[6] = {0,0,0,0,0,0};                               
;----------------------------------------------------------------------
        MOV       *-SP[3],AL            ; |140| 
	.line	9
;----------------------------------------------------------------------
; 147 | for (i=0;i<6;i++)                                                      
;----------------------------------------------------------------------
        MOV       *-SP[4],#0            ; |147| 
        MOV       AL,*-SP[4]            ; |147| 
        CMPB      AL,#6                 ; |147| 
        B         L24,GEQ               ; |147| 
        ; branch occurs ; |147| 
L23:    
	.line	11
;----------------------------------------------------------------------
; 149 | temp = SAMPLE[i][N+66] - SAMPLE[i][N+2];                               
;----------------------------------------------------------------------
        MOV       AL,*-SP[3]            ; |149| 
        MOV       T,*-SP[4]             ; |149| 
        SETC      SXM
        MOVL      XAR4,#_SAMPLE         ; |149| 
        ADDB      AL,#2                 ; |149| 
        MPYB      P,T,#132              ; |149| 
        MOVL      XAR5,#_SAMPLE         ; |149| 
        MOV       ACC,AL                ; |149| 
        ADDL      ACC,P
        ADDL      XAR4,ACC
        MOV       AL,*-SP[3]            ; |149| 
        ADDB      AL,#66                ; |149| 
        MPYB      P,T,#132              ; |149| 
        MOV       ACC,AL                ; |149| 
        ADDL      ACC,P
        ADDL      XAR5,ACC
        MOV       AL,*+XAR5[0]          ; |149| 
        SUB       AL,*+XAR4[0]          ; |149| 
        MOV       ACC,AL                ; |149| 
        MOVL      *-SP[6],ACC           ; |149| 
	.line	12
;----------------------------------------------------------------------
; 150 | VecR[i] += temp * SINTAB[j];                                           
;----------------------------------------------------------------------
        MOVW      DP,#_j$11
        MOV       ACC,*-SP[4] << 1      ; |150| 
        MOVL      XAR4,#_VecR$12        ; |150| 
        ADDL      XAR4,ACC
        MOVL      XAR5,#_SINTAB         ; |150| 
        MOV       ACC,@_j$11            ; |150| 
        ADDL      XAR5,ACC
        MOV       ACC,*+XAR5[0]         ; |150| 
        MOVL      XT,ACC                ; |150| 
        IMPYL     ACC,XT,*-SP[6]        ; |150| 
        ADDL      *+XAR4[0],ACC         ; |150| 
	.line	13
;----------------------------------------------------------------------
; 151 | VecI[i] += temp * COSTAB[j];                                           
;----------------------------------------------------------------------
        MOV       ACC,*-SP[4] << 1      ; |151| 
        MOVL      XAR4,#_VecI$13        ; |151| 
        ADDL      XAR4,ACC
        MOVL      XAR5,#_COSTAB         ; |151| 
        MOV       ACC,@_j$11            ; |151| 
        ADDL      XAR5,ACC
        MOV       ACC,*+XAR5[0]         ; |151| 
        MOVL      XT,ACC                ; |151| 
        IMPYL     ACC,XT,*-SP[6]        ; |151| 
        ADDL      *+XAR4[0],ACC         ; |151| 
	.line	14
        INC       *-SP[4]               ; |152| 
        MOV       AL,*-SP[4]            ; |152| 
        CMPB      AL,#6                 ; |152| 
        B         L23,LT                ; |152| 
        ; branch occurs ; |152| 
L24:    
	.line	15
;----------------------------------------------------------------------
; 153 | if (CAL_FINISH == 1)                                                   
;----------------------------------------------------------------------
        MOVW      DP,#_CAL_FINISH
        MOV       AL,@_CAL_FINISH       ; |153| 
        CMPB      AL,#1                 ; |153| 
        BF        L25,NEQ               ; |153| 
        ; branch occurs ; |153| 
	.line	17
;----------------------------------------------------------------------
; 155 | vr[0] = (int)((VecR[0] >>10) *901 >>16);                               
;----------------------------------------------------------------------
        MOVW      DP,#_VecR$12
        MOVL      XAR4,#901             ; |155| 
        SETC      SXM
        MOVL      ACC,@_VecR$12         ; |155| 
        MOVL      XT,XAR4               ; |155| 
        SFR       ACC,10                ; |155| 
        MOVW      DP,#_vr
        IMPYL     ACC,XT,ACC            ; |155| 
        SFR       ACC,16                ; |155| 
        MOV       @_vr,AL               ; |155| 
	.line	18
;----------------------------------------------------------------------
; 156 | vi[0] = (int)((VecI[0] >>10) *901 >>16);                               
;----------------------------------------------------------------------
        MOVW      DP,#_VecI$13
        MOVL      XT,XAR4               ; |156| 
        MOVL      ACC,@_VecI$13         ; |156| 
        SFR       ACC,10                ; |156| 
        MOVW      DP,#_vi
        IMPYL     ACC,XT,ACC            ; |156| 
        SFR       ACC,16                ; |156| 
        MOV       @_vi,AL               ; |156| 
	.line	19
;----------------------------------------------------------------------
; 157 | vr[1] = (int)((VecR[1] >>10) *901 >>16);                               
;----------------------------------------------------------------------
        MOVW      DP,#_VecR$12+2
        MOVL      ACC,@_VecR$12+2       ; |157| 
        MOVL      XT,XAR4               ; |157| 
        SFR       ACC,10                ; |157| 
        IMPYL     ACC,XT,ACC            ; |157| 
        SFR       ACC,16                ; |157| 
        MOVW      DP,#_vr+1
        MOV       @_vr+1,AL             ; |157| 
	.line	20
;----------------------------------------------------------------------
; 158 | vi[1] = (int)((VecI[1] >>10) *901 >>16);                               
;----------------------------------------------------------------------
        MOVW      DP,#_VecI$13+2
        MOVL      ACC,@_VecI$13+2       ; |158| 
        MOVW      DP,#_vi+1
        SFR       ACC,10                ; |158| 
        MOVL      XT,XAR4               ; |158| 
        IMPYL     ACC,XT,ACC            ; |158| 
        SFR       ACC,16                ; |158| 
        MOV       @_vi+1,AL             ; |158| 
	.line	21
;----------------------------------------------------------------------
; 159 | vr[2] = (int)((VecR[2] >>10) *901 >>16);                               
;----------------------------------------------------------------------
        MOVW      DP,#_VecR$12+4
        MOVL      ACC,@_VecR$12+4       ; |159| 
        SFR       ACC,10                ; |159| 
        MOVL      XT,XAR4               ; |159| 
        IMPYL     ACC,XT,ACC            ; |159| 
        MOVW      DP,#_vr+2
        SFR       ACC,16                ; |159| 
        MOV       @_vr+2,AL             ; |159| 
	.line	22
;----------------------------------------------------------------------
; 160 | vi[2] = (int)((VecI[2] >>10) *901 >>16);                               
;----------------------------------------------------------------------
        MOVW      DP,#_VecI$13+4
        MOVL      ACC,@_VecI$13+4       ; |160| 
        SFR       ACC,10                ; |160| 
        MOVL      XT,XAR4               ; |160| 
        IMPYL     ACC,XT,ACC            ; |160| 
        MOVW      DP,#_vi+2
        SFR       ACC,16                ; |160| 
        MOV       @_vi+2,AL             ; |160| 
	.line	23
;----------------------------------------------------------------------
; 161 | vr[3] = (int)(VecR[3] >>15);                                           
;----------------------------------------------------------------------
        MOVW      DP,#_VecR$12+6
        MOVL      ACC,@_VecR$12+6       ; |161| 
        MOVW      DP,#_vr+3
        MOVH      @_vr+3,ACC << 1       ; |161| 
	.line	24
;----------------------------------------------------------------------
; 162 | vi[3] = (int)(VecI[3] >>15);                                           
;----------------------------------------------------------------------
        MOVW      DP,#_VecI$13+6
        MOVL      ACC,@_VecI$13+6       ; |162| 

⌨️ 快捷键说明

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