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

📄 main.asm

📁 此源代码用于电力电子逆变器的同步锁相实现
💻 ASM
📖 第 1 页 / 共 2 页
字号:
 ;D,Q ZHOU DE FENG LIANG ZHI JIE JIN RU 2-3 FAN BIAN HUAN                
 ;        LDP	#ipark_D

  ;       BLDD	#D,ipark_D
  ;       BLDD	#Q,ipark_Q
  ;       BLDD	#theta,theta_ip    
  ;       CALL	 I_PARK                        
;======================================================== 
        
         LDP	#Iclark_d
         BLDD	#ipark_d,Iclark_d
         BLDD	#ipark_q,Iclark_q
         CALL	I_CLARKE   

        SETC	SXM              
		LDP		#ia
		LACC	ia
		ADD		ib
		NEG
		SACL	ic
;===================================
;ZHEN ZHENG DE ZHI LING DIAN LIU 		
		LDP		#Iclark_a
		LACC	Iclark_a
		LDP		#ia
		SUB		ia 
		LDP		#iia
		
		SACL	iia
		
		LDP		#Iclark_a
		LACC	Iclark_b
		LDP		#ia
		SUB		ib 
		LDP		#iib
		SACL	iib
		
		LDP		#Iclark_a
		LACC	Iclark_c
		LDP		#ia
		SUB		ic 
		LDP		#iic
		
		SACL	iic    
;========================================================


;========================================================
; XU JIA DE ZHI LING DIAN LIU 		
;		LDP		#Iclark_a
;		LACC	Iclark_a
;		LDP		#iia_1
;		SUB		iia_1
;		LDP		#iia
;		SACL	iia
		                
;		LDP		#Iclark_a
;		LACC	Iclark_b
;		LDP		#iib_1
;		SUB		iib_1
;		LDP		#iia
;		SACL	iib    
		
;		LDP		#Iclark_a
;		LACC	Iclark_c
;		LDP		#iia_1
;		SUB		iic_1
;		LDP		#iia
;		SACL	iic            
;==================================================         
        LDP    #DELTA_IA
        BLDD   #iia,DELTA_IA
        BLDD   #iib,DELTA_IB
        BLDD   #iic,DELTA_IC       
        CALL	CUR_CON     
        
;        LDP		#iia_1
;        BLDD	#Iclark_a,iia_1
;        BLDD	#Iclark_b,iib_1
;        BLDD	#Iclark_c,iic_1 
 
;        LDP    #DELTA_IA
 ;        BLDD   #Iclark_a,DELTA_IA
  ;      BLDD   #Iclark_b,DELTA_IB
   ;     BLDD   #Iclark_c,DELTA_IC       
    ;    CALL	CUR_CON   
        
        CLRC	SXM
        LDP		#232
        BLDD	#Ta,CMPR1
        BLDD	#Tb,CMPR2
        BLDD	#Tc,CMPR3 
   ;      SPLK	#500,CMPR1
   ;      SPLK	#500,CMPR2
   ;      SPLK	#500,CMPR3
;        SETC	SXM 
;        LDP		#isa
;        LACC	isa
 ;       LDP		#Iclark_a
 ;       SUB		Iclark_a
 ;       LDP		#as
 ;       SACL	as
        
;        LDP		#input1
;        BLDD	#theta,input1
;        BLDD	#ifcase,input2
;        BLDD	#CAPFIFO,input3
;        CALL	DATA_LOG      
 
 ;		LDP		#input1
 ;		BLDD	#ia,input1
 ;		BLDD	#ib,input2
 ;		BLDD	#Iclark_a,input3
 ;		CALL	DATA_LOG
 
; 		LDP		#input1
; 		BLDD	#iia,input1
; 		BLDD	#Ta,input2
 ;		CALL	DATA_LOG        
 		
 ;		LDP		#input1
; 		BLDD	#isa,input1
 ;		BLDD	#ib,input2
 ;		BLDD	#ia,input3
 ;		CALL	DATA_LOG   
 		
 ;		LDP		#input1
 ;		BLDD	#Ta,input1
 ;		BLDD	#ia,input2
 ;		BLDD	#isa,input3
 ;		CALL	DATA_LOG      
 ;		LDP		#input1
 ;		BLDD	#Ta,input1
 ;		BLDD	#ia,input2
 ;		BLDD	#iia,input3 
 ;		CALL	DATA_LOG         
 		
 ;		LDP		#input1
 ;		BLDD	#Ta,input1
 ;		BLDD	#ia,input2
 ;		BLDD	#Iclark_a,input3
 ;		CALL	DATA_LOG     
 
 ;		LDP		#input1
 ;		BLDD	#isa,input1
 ;		BLDD	#ila,input2
 ;		BLDD	#Udc,input3
 ;		CALL	DATA_LOG   
 		
 ;		LDP		#input1
 ;		BLDD	#Ta,input1
 ;		BLDD	#Iclark_a,input2
 ;		BLDD	#ia,input3
 ;		CALL	DATA_LOG  
        
        		
 	;	LDP		#input1
 	;	BLDD	#ila,input1
 	;	BLDD	#ilb,input2
 	;	BLDD	#theta,input3
 	;	CALL	DATA_LOG  
 
 ;		LDP		#input1
 ;		BLDD	#isb,input1
 ;		BLDD	#Udc,input2
 ;		CALL	DATA_LOG         
 		
 ;		LDP		#input1
 ;		BLDD	#En0_reg2,input1
 ;		BLDD	#Un_reg2,input2
 ;		BLDD	#pid_out_reg2,input3
 ;		CALL	DATA_LOG
;===========================
;    	LDP		#U
;    	LACC	U
;    	ADD		#1
;    	SACL	U
;    	AND		#1
;    	BCND	TT,EQ
;   	SPLK	#3E9h,CMPR1
;    	SPLK	#3E9h,CMPR2
;    	SPLK	#3E9h,CMPR3
;TT:		
 ;      	SPLK	#0h,CMPR1
 ;   	SPLK	#0h,CMPR2
 ;   	SPLK	#0h,CMPR3
;==========================
                            
;         LDP	#AA
;         LACC	AA
;         NEG
;         SACL	AA
;         LDP	#232
;         BLDD	#AA,CMPR1 
;         BLDD	#AA,CMPR2
;         BLDD	#AA,CMPR3        
			
		 ; LDP	#input1
		 ; BLDD	#D,input1
		  ;BLDD	#Q,input2
		  ;BLDD	#park_D,input3
          ;CALL	DATA_LOG
; ---------------------------------------------------------

;=========================================================
;End main section of ISR
;=========================================================
;Context restore regs
END_ISR:
		POINT_PG0

		MAR		*, AR1      	;make stack pointer active
		LACL	*-		        ;Restore Acc low
		ADDH	*-		        ;Restore Acc high
		LST		#0, *-        ;load ST0
		LST     #1, *-      ;load ST1
		EINT
		RET
         
         
         
         
         
SUB111	    LDP		#Udc    
	    LACC	Udc  
;	    SUB		#4000
	    SUB		#1800;88V
;		SUB		#5500   
;		SUB		#2000  
;		SUB		#1500
;	    ABS
;	    SUB		#400
;	    BCND	BWD,GT 
        BCND	BWD,LT
	    LDP		#WDJS
	    LACC	WDJS
	    ADD		#1    
	    SACL	WDJS
	    SUB		#1
	    BCND	BWD,LT
	    LDP		#232
	    SPLK	#0000011001100110b,ACTR 
	   ; SPLK	#0000111111111111b,ACTR  
	 ; splk		#0,ACTR
	    LDP		#WDPD
	    SPLK	#1,WDPD	
		         
BWD        NOP    
		NOP
;===================================
;PID SUH CHU * DING BIAO             
       ; LT		pid_out_reg2  
       ; LDP		#qxishu
       ; MPY		qxishu
       ; PAC             
       ; LDP		#pid_out_reg2
       ; SACH	pid_out_reg2,1    
;==================================                   
     
        
;        LDP		#A4_ch_sel
;        SPLK	#5432h,A4_ch_sel
;        CALL	ADC04U_DRV    
;        LT		C1_out  ;wrong  spm 0
     
;        MPY		wc   
;        PAC
;        LDP		#iq
;        ADD		iq,15
;        SACH	iqq,1
;=============================================
;Q ZHOU DE FEN LIANG JIA RU YI GE CHANG SHU 
; ZHI HOU JIN RU 2-3 FAN BIAN HUAN        
      ;  SETC	SXM
      ;  LDP		#Q
       ; LACC	Q       
      ;  LACC	#0
     ; ADD		#400  
      
       
      ;  LDP		#qjia
       ; SACL	qjia   
;===============================================

;=============================================== 
;JIANG PID DE SHU CHU JIA DAO D ZHOU SHANG
	;	LDP		#D
	;	LACC	D             
	;	LACC	#0
	;	LDP		#pid_out_reg2
	;	ADD		pid_out_reg2
	;	LDP		#D
	;	SACL	D

;=============================================  



;============================================
;Q ZHOU JIA RU C BING QIE JIA RU PID FENG LIANG 

		SETC	SXM
		LDP		#Q
		LACC	Q
;		SUB		#1600
;		LDP		#pid_out_reg2
;		ADD		pid_out_reg2     
;		SUB		pid_out_reg2
		LDP		#qjia
		SACL	qjia

;D ZHOU BU JIA RU REN HE FEN LIANG HUO JIA RU PID
		
		LDP		#D
		LACC	D  
	  ;  LDP		#pid_out_reg2
	  ;  SUB		pid_out_reg2
	    LDP		#D
		SACL	D
		
;=========================================				
; PID TIAO JIE O ZHOU FEN LIANG
          
;		LDP		#ipark_D
;		SPLK	#0,ipark_D
;		BLDD	#pid_out_reg2,ipark_Q
;		BLDD	#theta,theta_ip
;		CALL	I_PARK                        
;===============================================
;==============================================
;PID TIAO JIE D ZHOU FEN LIANG
;		LDP		#ipark_D
;		SPLK	#0,ipark_Q
;		BLDD	#pid_out_reg2,ipark_D
;		BLDD	#theta,theta_ip
;		CALL	I_PARK           
;================================================		
;======================================================
;ZHEN ZHENG DE 2-3 FAN BIAN HUAN 
;JIA RU LE YI GE CHANG LIANG
;JIA RU LE PID		            
		LDP		#DC_ref
		BLDD	#Udc,DC_ref
		
 		LDP 	#ipark_D
        BLDD	#D,ipark_D
        BLDD	#qjia,ipark_Q
        BLDD	#sin_theta,sin_theta1
        BLDD	#cos_theta,cos_theta1
        CALL	I_PARK                   
;============================================  
;=============================================
;Q ZHOU FAN ZHI JIE JIN RU 2-3
  ;       LDP	#ipark_D
  ;       BLDD	#Yout_IIR,ipark_Q
  ;       SPLK	#0,ipark_D
  ;       CALL	I_PARK 

       
 ;======================================================
 ;D,Q ZHOU DE FENG LIANG ZHI JIE JIN RU 2-3 FAN BIAN HUAN                
 ;        LDP	#ipark_D

  ;       BLDD	#D,ipark_D
  ;       BLDD	#Q,ipark_Q
  ;       BLDD	#theta,theta_ip    
  ;       CALL	 I_PARK                        
;======================================================== 
        
         LDP	#Iclark_d
         BLDD	#ipark_d,Iclark_d
         BLDD	#ipark_q,Iclark_q
         CALL	I_CLARKE   

        SETC	SXM              
		LDP		#ia
		LACC	ia
		ADD		ib
		NEG
		SACL	ic
;===================================
;ZHEN ZHENG DE ZHI LING DIAN LIU 		
		LDP		#Iclark_a
		LACC	Iclark_a
		LDP		#ia
		SUB		ia 
		LDP		#iia
		
		SACL	iia
		
		LDP		#Iclark_a
		LACC	Iclark_b
		LDP		#ia
		SUB		ib 
		LDP		#iib
		SACL	iib
		
		LDP		#Iclark_a
		LACC	Iclark_c
		LDP		#ia
		SUB		ic 
		LDP		#iic
		
		SACL	iic    
;========================================================


;========================================================
; XU JIA DE ZHI LING DIAN LIU 		
;		LDP		#Iclark_a
;		LACC	Iclark_a
;		LDP		#iia_1
;		SUB		iia_1
;		LDP		#iia
;		SACL	iia
		                
;		LDP		#Iclark_a
;		LACC	Iclark_b
;		LDP		#iib_1
;		SUB		iib_1
;		LDP		#iia
;		SACL	iib    
		
;		LDP		#Iclark_a
;		LACC	Iclark_c
;		LDP		#iia_1
;		SUB		iic_1
;		LDP		#iia
;		SACL	iic            
;==================================================         
        LDP    #DELTA_IA
        BLDD   #iia,DELTA_IA
        BLDD   #iib,DELTA_IB
        BLDD   #iic,DELTA_IC       
        CALL	CUR_CON     
        
   
;        LDP    #DELTA_IA
 ;        BLDD   #Iclark_a,DELTA_IA
  ;      BLDD   #Iclark_b,DELTA_IB
   ;     BLDD   #Iclark_c,DELTA_IC       
    ;    CALL	CUR_CON   
        
        CLRC	SXM
        LDP		#232
        BLDD	#Ta,CMPR1
        BLDD	#Tb,CMPR2
        BLDD	#Tc,CMPR3     
        
;        SETC	SXM 
;        LDP		#isa
;        LACC	isa
 ;       LDP		#Iclark_a
 ;       SUB		Iclark_a
 ;       LDP		#as
 ;       SACL	as
        
;        LDP		#input1
;        BLDD	#isa,input1
;        BLDD	#Iclark_a,input2
;       BLDD	#as,input3
 ;      CALL	DATA_LOG      
 
 ;		LDP		#input1
 ;		BLDD	#ia,input1
 ;		BLDD	#ib,input2
 ;		BLDD	#Iclark_a,input3
 ;		CALL	DATA_LOG
 
; 		LDP		#input1
; 		BLDD	#iia,input1
; 		BLDD	#Ta,input2
 ;		CALL	DATA_LOG        
 		
 ;		LDP		#input1
; 		BLDD	#isa,input1
 ;		BLDD	#ib,input2
 ;		BLDD	#ia,input3
 ;		CALL	DATA_LOG   
 		
 ;		LDP		#input1
 ;		BLDD	#Ta,input1
 ;		BLDD	#ia,input2
 ;		BLDD	#isa,input3
 ;		CALL	DATA_LOG      
 ;		LDP		#input1
 ;		BLDD	#Ta,input1
 ;		BLDD	#ia,input2
 ;		BLDD	#iia,input3 
 ;		CALL	DATA_LOG         
 		
 ;		LDP		#input1
 ;		BLDD	#Ta,input1
 ;		BLDD	#ia,input2
 ;		BLDD	#Iclark_a,input3
 ;		CALL	DATA_LOG     
 
 ;		LDP		#input1
 ;		BLDD	#Udc,input1
 ;		BLDD	#Iclark_a,input2
 ;		BLDD	#ia,input3
 ;		CALL	DATA_LOG   
 		
 ;		LDP		#input1
 ;		BLDD	#Ta,input1
 ;		BLDD	#Iclark_a,input2
 ;		BLDD	#ia,input3
 ;		CALL	DATA_LOG  
        
        		
 	;	LDP		#input1
 	;	BLDD	#ila,input1
 	;	BLDD	#ilb,input2
 	;	BLDD	#theta,input3
 	;	CALL	DATA_LOG  
 
 ;		LDP		#input1
 ;		BLDD	#isb,input1
 ;		BLDD	#Udc,input2
 ;		CALL	DATA_LOG         
 		
 ;		LDP		#input1
 ;		BLDD	#En0_reg2,input1
 ;		BLDD	#Un_reg2,input2
 ;		BLDD	#pid_out_reg2,input3
 ;		CALL	DATA_LOG
;===========================
;    	LDP		#U
;    	LACC	U
;    	ADD		#1
;    	SACL	U
;    	AND		#1
;    	BCND	TT,EQ
;   	SPLK	#3E9h,CMPR1
;    	SPLK	#3E9h,CMPR2
;    	SPLK	#3E9h,CMPR3
;TT:		
 ;      	SPLK	#0h,CMPR1
 ;   	SPLK	#0h,CMPR2
 ;   	SPLK	#0h,CMPR3
;==========================
                            
;         LDP	#AA
;         LACC	AA
;         NEG
;         SACL	AA
;         LDP	#232
;         BLDD	#AA,CMPR1 
;         BLDD	#AA,CMPR2
;         BLDD	#AA,CMPR3        
			
		 ; LDP	#input1
		 ; BLDD	#D,input1
		  ;BLDD	#Q,input2
		  ;BLDD	#park_D,input3
          ;CALL	DATA_LOG
; ---------------------------------------------------------

;=========================================================
;End main section of ISR
;=========================================================
;Context restore regs
END_ISR1:
		POINT_PG0

		MAR		*, AR1      	;make stack pointer active
		LACL	*-		        ;Restore Acc low
		ADDH	*-		        ;Restore Acc high
		LST		#0, *-        ;load ST0
		LST     #1, *-      ;load ST1
		EINT
		RET

;==============================================================================

;==============================================================================
; I S R  -  PHANTOM
;
; Description:	Dummy ISR, used to trap spurious interrupts.
;
; Modifies:
;
; Last Update:	3-26-2001
;==============================================================================
PHANTOM 	B	PHANTOM
PHANTOM1 	B	PHANTOM1
PHANTOM2 	B	PHANTOM2
PHANTOM3 	B	PHANTOM3
PHANTOM4 	B	PHANTOM4
PHANTOM5 	B	PHANTOM5
PHANTOM6 	B	PHANTOM6







    
   

⌨️ 快捷键说明

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