亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 主程序2.asm.txt

?? 異步電機變頻調速控制程序
?? TXT
字號:
;=====================================================================
; System Name	: 	ACI3_3
; File Name	:	ACI3_32.ASM
; Description	:	ACI 3-phase Field Oriented control with speed (using 
;					tacho)and current closed loop
;=====================================================================
;*********************************************************************
;					SYSTEM OPTIONS
;*********************************************************************
******************************************
* Select PWM/T1 Period
******************************************
PWM_PERIOD	.set	100					; PWM period in uS (10KHz) 
T1PER_	    	.set	PWM_PERIOD*10		; *1000nS/(2*50nS)
;********************************************************************* 
;---------------------------------------------------------------------
; External references
;---------------------------------------------------------------------
		.include	"x24x_app.h"
		.ref		SYS_INIT   
		
		.ref	RAMP_GEN, RAMP_GEN_INIT				;function call
		.ref	rmp_gain, rmp_offset, rmp_freq		;Inputs
    	.ref	step_angle_max				    		;Input
		.ref	rmp_out					        		;Outputs   
		
		.ref	I_PARK, I_PARK_INIT					;function call
		.ref	ipark_D, ipark_Q, theta_ip			;Inputs
		.ref	ipark_d, ipark_q					;Outputs  
				
		.ref	SVGEN_DQ,SVGEN_DQ_INIT				;function call
		.ref	Ualfa,Ubeta					    		;Inputs
		.ref	Ta,Tb,Tc					    		;Outputs

		.ref    	FC_PWM_DRV,FC_PWM_DRV_INIT		    	;function calls
		.ref    	Mfunc_c1,Mfunc_c2,Mfunc_c3,Mfunc_p	;Inputs
		.ref    	n_period			            		;Input   
		
		.ref	ILEG2DRV, ILEG2DRV_INIT				;function call
		.ref	Ia_gain,Ib_gain,Ia_offset,Ib_offset	;Inputs
		.ref	Ia_out, Ib_out					     ;Outputs
		
    	.ref	CLARKE, CLARKE_INIT					;function call
		.ref	clark_a, clark_b					;Inputs
		.ref	clark_d, clark_q					;Outputs
		
		.ref	PARK, PARK_INIT						;function call
		.ref	park_d, park_q, theta_p				;Inputs
		.ref	park_D, park_Q						;Outputs   
		 
        .ref	SPEED_PRD, SPEED_PRD_INIT			;function call
		.ref	time_stamp			        			;Input
		.ref	rpm_max, speed_scaler,shift			;parameter
		.ref	speed_prd, speed_rpm				;Outputs   
		
    	.ref	CAP_EVENT_DRV, CAP_EVENT_DRV_INIT	;function call
		.ref	CAP_EVENT_DRV_CLKPS_INIT			;function call
		.ref	CLK_prescaler_bits					;Parameter		
   		
		.ref	pid_reg_id,pid_reg_id_init	    		;function call
		.ref	id_fdb,id_ref,Kp_d,Ki_d,Kc_d		;Inputs
		.ref	ud_int				            		;Input
		.ref	ud_out				            		;Outputs 
		
		.ref	pid_reg_iq,pid_reg_iq_init			;function call
    	.ref	iq_fdb,iq_ref,Kp_q,Ki_q,Kc_q		;Inputs
	    .ref		uq_int								;Input
     	.ref	uq_out								;Outputs 
     	
    	.ref	CURRENT_MODEL,CURRENT_MODEL_INIT	;function call
		.ref	i_cur_mod_D,i_cur_mod_Q				;Inputs  
		.ref	spd_cur_mod							;Input
		.ref	theta_cur_mod						;Outputs 
		
    	.ref	pid_reg_spd,pid_reg_spd_init 		;function call
		.ref	spd_fdb,spd_ref						;Inputs
		.ref	spd_out								;Outputs

;---------------------------------------------------------------------
; Variable Declarations
;---------------------------------------------------------------------
		.def	GPR0					;General purpose registers. 

		.bss	GPR0,1					;General purpose register  
		.bss    my_iq_ref,1  
		.bss    my_id_ref,1    
		.bss    speed_reference,1
;=====================================================================
; V E C T O R    T A B L E    
;=====================================================================
		.sect 	"vectors"  
		.def 	_c_int0 
		.def	_c_int4					;int4-EV group C dispatcher/service

RESET	    B	_c_int0 	 				; 00
INT1	    B	PHANTOM	 				; 02
INT2	    B	T1_PERIOD_ISR     		; 04
INT3	    B	PHANTOM	 				; 06
INT4	    B	_c_int4					; 08
INT5	    B	PHANTOM	 				; 0A
INT6	    B	PHANTOM	 				; 0C
;=====================================================================
; M A I N   C O D E  - starts here
;=====================================================================		.text
_c_int0:
		CALL	SYS_INIT 
		CALL	FC_PWM_DRV_INIT 		;Here is defined the Timer
										;frequency (10khz), it is thus 
;mandatory to include this
;initialisation since the beginning
		CALL    	I_PARK_INIT
		CALL	SVGEN_DQ_INIT
       CALL    	ILEG2DRV_INIT
		CALL    	CLARKE_INIT
		CALL    	PARK_INIT	
		;speed measurement init		
		CALL	CAP_EVENT_DRV_INIT
		LDP		#CLK_prescaler_bits
		SPLK	#7,CLK_prescaler_bits
		CALL	CAP_EVENT_DRV_CLKPS_INIT	;To specify a prescaler of 128                             
		CALL    	SPEED_PRD_INIT
		CALL    	pid_reg_id_init
		CALL    	pid_reg_iq_init
		CALL    	CURRENT_MODEL_INIT	
       CALL    	pid_reg_spd_init     
;----------------------------------    
;-----------------------------------
;    Variables initialization
;---------------------------------- 
       LDP   	#n_period
	   	SPLK	#T1PER_,n_period		;initialize the PWM period to 10kHz
	   						
	   	LDP   	#rmp_freq
	   	SPLK  	#2A00h,rmp_freq			;50Hz frequency for RAMPGEN							 
       LDP   	#my_iq_ref
       SPLK 	#0000h,my_iq_ref
       LDP   	#my_id_ref
       SPLK  	#0000h,my_id_ref
       LDP   	#speed_reference
       SPLK  	#0000h,speed_reference

       POINT_B0
       SPLK  	#0500h,my_id_ref       
;----------------------------------------------------------
; System Interrupt Init.
;----------------------------------------------------------
;Event Manager
		POINT_EV
		SPLK	#0000001000000000b,IMRA 	;Enable T1 Underflow Int 
;(i.e. Period)
	;	SPLK	#0000000000000100b,IMRC 	;Enable CAP3 int 
;(i.e. QEP index pulse)
			    ;||||!!!!||||!!!!		
			    ;5432109876543210

		SPLK	#0FFFFh,IFRA		; Clear all Group A interrupt flags
		SPLK	#0FFFFh,IFRB		; Clear all Group B interrupt flags
		SPLK	#0FFFFh,IFRC		; Clear all Group C interrupt flags

	;C2xx Core
		POINT_PG0

;======================================================
MAIN:		;Main system background loop
;======================================================

M_1	NOP
      	NOP
      	NOP
      	CLRC 	XF	
      	B		MAIN
;======================================================
;=====================================================================
; Routine Name: T1_PERIOD_ISR				     Routine Type: ISR
;=====================================================================
T1_PERIOD_ISR:
;Context save regs
		MAR		*,AR1				;AR1 is stack pointer
		MAR		*+          			;skip one position
		SST		#1, *+      			;save ST1
		SST   	#0, *+     			;save ST0
		SACH	*+          			;save acc high
		SACL	*					;save acc low

		POINT_EV
		SPLK	#0FFFFh,IFRA  		;Clear all Group A interrupt flags 
;(T1 ISR)
       SETC    	XF  
       SETC	SXM					;set sign extension mode
		CLRC	OVM					;clear overflow mode
;=========================================================
;Start main section of ISR
;=========================================================
; Current leg measurement, Ileg2drv module
       CALL    	ILEG2DRV 
; Clarke module 
       LDP      #clark_a
       BLDD     #Ia_out,clark_a
       BLDD     #Ib_out,clark_b
       CALL     CLARKE  
; SPEED REGULATION 
       LDP     	#spd_ref
       bldd    	#speed_reference,spd_ref
       bldd    	#spd_cur_mod,spd_fdb
       CALL    	pid_reg_spd               
;Check for Capture event from Hall sensor (sprocket)
		POINT_EV
		BIT		IFRC, BIT0		   	;Check CAP flag for edge transition 
;on CAP1 pin
		BCND	SKIP_SPEED, NTC		;If no edge present skip speed routine

  		CALL	CAP_EVENT_DRV		
		LACC	FIFO1				;Else fetch "Time-stamp" & proceed 
;with Speed meas.

		LDP		#time_stamp		
		SACL	time_stamp

		CALL	SPEED_PRD
        
		POINT_EV
		SPLK	#0FFFFh,IFRC		;Clear all CAP flags  
  	    
SKIP_SPEED
; PARK module
       LDP      #park_d
       BLDD     #clark_d,park_d
       BLDD     #clark_q,park_q
       BLDD     #theta_cur_mod,theta_p 
       CALL     PARK
; CURRENT MODEL 
       LDP      #spd_cur_mod 
       BLDD     #speed_prd,spd_cur_mod
       BLDD     #park_D,i_cur_mod_D
       BLDD     #park_Q,i_cur_mod_Q
       CALL     CURRENT_MODEL              
; D-axis current regulator
       LDP      #id_ref
      ;SPLK     #1EB8h,id_ref  			;1EB8h gives a current of 2.5A peak
       BLDD     #my_id_ref,id_ref
       BLDD     #park_D,id_fdb
       CALL     pid_reg_id
; Q-axis current regulator
       LDP      #iq_ref  
       BLDD     #spd_out,iq_ref
       BLDD     #park_Q,iq_fdb 
       CALL     pid_reg_iq  
; Inverse-Park module
		LDP		#ipark_D     
		BLDD    	#ud_out,ipark_D
		BLDD    	#uq_out,ipark_Q 
		BLDD    	#theta_cur_mod,theta_ip
       CALL     I_PARK 
; Space-Vector DQ module
		LDP		#Ualfa
		BLDD	#ipark_d,Ualfa
		BLDD	#ipark_q,Ubeta		        
		CALL	SVGEN_DQ	
; PWM driver
		LDP		#Mfunc_c1
		BLDD	#Ta,Mfunc_c1	
		BLDD	#Tb,Mfunc_c2
		BLDD	#Tc,Mfunc_c3		
		CALL    	FC_PWM_DRV  
;=========================================================
;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   
*******************************************************
* INT4 - EV group C Ints
* Enabled: Capture 3 int as QEP index
*******************************************************
CAP3_ID	 	.set 035H			;Capture 3 int vector ID
CAP3_CLR 		.set 04H			;Capture 3 int flag clear
	
_c_int4	

       MAR		*,AR1				;Save context
		MAR		*+					;point to a guaranteed unused location
		SST		#1, *+      			;save ST1
		SST  	#0, *+      			;save ST0
		SACH	*+          			;save acc high
		SACL	*+					;save acc low and point to an unused loca.
		
		;More context save if needed
		.if	x243 | x2407
		LDP		#PIVR>>7			;set DP
		LACC	PIVR				;load peripheral int vector/ID/offset
		.endif
		
		.if	x240
		LDP	#EVIVRC>>7
		lACC	EVIVRC
		.endif
		
		SUB		#CAP3_ID			;Capture 1 int?
		BCND	CAP3_INT,EQ			;to PDPISR if zero
		CALL	PHANTOM				;got a phantom int if not
		B		REST_INT4			;return
CAP3_INT
    	.if	x243 | x2407
		LDP		#EVIFRC>>7
		SPLK	#CAP3_CLR,EVIFRC	;Clear Capture 1 int flag
		.endif
		
;		CALL	QEP_INDEX_ISR_DRV		;QEP index routine 
		
;=========================================================
;End main section of ISR INT4 -EV GROUP C INTS
;=========================================================
;Context restore regs		

REST_INT4						;More context restore if needed
		MAR		*, AR1    		; make stack pointer active
		MAR		*-          		; point to top of stack
		LACL	*-				; Restore Acc low
		add		*-,16			; Restore Acc high
		LST		#0, *-      		; restore ST0
		LST  	#1, *-     		; restore ST1 and pointer
		EINT
		RET				    		; return
		
;=====================================================================
; I S R  -  PHANTOM
; Description:	Dummy ISR, used to trap spurious interrupts.
;=====================================================================
PHANTOM 	B	PHANTOM
;=====================================================================
*** END Whole Code

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美不卡一区二区三区| 亚洲精品日日夜夜| 亚洲乱码国产乱码精品精小说| 亚欧色一区w666天堂| 成人免费看黄yyy456| 日韩欧美一级片| 亚洲国产一区二区三区青草影视| 国产精品一区一区| 欧美乱熟臀69xxxxxx| 自拍av一区二区三区| 国产一区二区调教| 日韩亚洲欧美在线观看| 亚洲影院在线观看| 91高清在线观看| 国产精品国产自产拍在线| 国产精品一区一区三区| 日韩免费一区二区| 天天av天天翘天天综合网色鬼国产| 91蝌蚪porny| 亚洲欧洲精品成人久久奇米网 | 制服视频三区第一页精品| 国产精品卡一卡二| 国产成人午夜精品影院观看视频 | 亚洲网友自拍偷拍| 色婷婷香蕉在线一区二区| 日韩毛片一二三区| 99久久精品免费精品国产| 国产精品情趣视频| 不卡电影免费在线播放一区| 欧美激情在线免费观看| 国产成人免费视频网站高清观看视频 | 亚洲国产欧美日韩另类综合 | 国产91色综合久久免费分享| 26uuu国产电影一区二区| 精品一区二区久久久| 欧美va天堂va视频va在线| 免费高清在线一区| 欧美精品一区二区三区久久久| 乱一区二区av| 久久久电影一区二区三区| 丁香桃色午夜亚洲一区二区三区| 国产日韩精品一区二区三区在线| 日韩视频永久免费| 蜜臀久久99精品久久久久宅男 | aaa国产一区| 国产欧美日本一区视频| av一区二区不卡| 一区二区三区四区激情 | 日本亚洲欧美天堂免费| 日韩精品一区二区三区视频在线观看 | 亚洲欧美视频在线观看视频| 色域天天综合网| 香蕉影视欧美成人| 精品少妇一区二区三区在线播放| 国产在线精品不卡| 亚洲欧美另类综合偷拍| 欧美日韩高清一区| 国产一区欧美一区| 最好看的中文字幕久久| 欧美精品乱码久久久久久| 毛片一区二区三区| 中文字幕日韩精品一区| 欧美日韩大陆在线| 高清不卡在线观看| 一区二区三区精品| 精品免费99久久| caoporm超碰国产精品| 日韩黄色免费电影| 国产精品二三区| 欧美一级在线免费| 国产成人精品免费在线| 亚洲va天堂va国产va久| 中文字幕免费一区| 777精品伊人久久久久大香线蕉| 国产成人午夜精品影院观看视频 | 欧美巨大另类极品videosbest| 狠狠色综合播放一区二区| 一区二区三区在线高清| 国产校园另类小说区| 欧美精品日韩一本| 日本高清视频一区二区| 国产老肥熟一区二区三区| 亚洲大片精品永久免费| 国产精品蜜臀av| 久久伊人中文字幕| 欧美精品tushy高清| 色婷婷综合激情| 国产91精品久久久久久久网曝门| 日韩高清电影一区| 亚洲成人自拍网| 亚洲天堂2016| 国产精品天天看| 欧美精品一区二区三区蜜桃| 91精品啪在线观看国产60岁| 色婷婷综合久久久中文一区二区| 国产成a人亚洲精品| 精品无人区卡一卡二卡三乱码免费卡 | 亚洲免费观看高清完整版在线 | 久久久久亚洲蜜桃| 日韩午夜在线播放| 777久久久精品| 在线不卡的av| 欧美日韩综合在线免费观看| 色综合久久中文综合久久牛| 成人自拍视频在线观看| 国产.欧美.日韩| 国产激情一区二区三区桃花岛亚洲| 免费高清成人在线| 久久97超碰国产精品超碰| 人人精品人人爱| 欧美aaa在线| 青青草原综合久久大伊人精品| 午夜精品福利久久久| 日本怡春院一区二区| 日韩电影在线一区| 日本va欧美va精品发布| 欧美aaa在线| 国产在线看一区| 国产一区二区看久久| 高清在线不卡av| 成人黄色在线看| 一本大道久久a久久精二百 | 精品国产一区二区三区四区四 | 高清不卡一二三区| 成人黄色在线网站| 色综合婷婷久久| 欧美日韩在线观看一区二区 | 亚洲国产精品一区二区尤物区| 亚洲一级电影视频| 日韩中文字幕区一区有砖一区| 五月天亚洲精品| 九九久久精品视频| 处破女av一区二区| 日本丶国产丶欧美色综合| 欧美区一区二区三区| 精品国产凹凸成av人导航| 国产清纯美女被跳蛋高潮一区二区久久w | 午夜精品爽啪视频| 日韩高清国产一区在线| 国产伦精品一区二区三区免费 | 日韩精品一二三| 精品一区二区三区久久久| 成人教育av在线| 在线精品亚洲一区二区不卡| 欧美电影免费观看高清完整版在线观看| 精品国内二区三区| 一区二区三区四区乱视频| 青草国产精品久久久久久| 成人黄色片在线观看| 欧美日韩精品福利| 欧美精彩视频一区二区三区| 亚洲黄色录像片| 国产呦精品一区二区三区网站| av一二三不卡影片| 精品国产sm最大网站免费看| 亚洲码国产岛国毛片在线| 蜜桃视频第一区免费观看| 99vv1com这只有精品| 91精品国产综合久久久久| 国产精品传媒视频| 精品一区二区综合| 欧美性受极品xxxx喷水| 精品国产乱码久久久久久免费 | 亚洲成人动漫一区| 成人在线综合网| 日韩限制级电影在线观看| 最新国产精品久久精品| 久久国产综合精品| 欧美在线三级电影| 中文字幕制服丝袜成人av| 精品一二线国产| 91精品国产麻豆国产自产在线| 亚洲乱码中文字幕综合| 国产一级精品在线| 欧美一级二级在线观看| 亚洲愉拍自拍另类高清精品| 成人avav影音| 欧美国产日韩亚洲一区| 久久99久久99小草精品免视看| 欧美三级中文字| 一区二区三区在线播| 91视频com| 国产精品午夜春色av| 国产精选一区二区三区| 欧美成人aa大片| 日韩国产在线观看| 欧美视频日韩视频在线观看| 最新中文字幕一区二区三区 | 亚洲成人自拍网| 欧美午夜影院一区| 夜夜精品浪潮av一区二区三区| 成人97人人超碰人人99| 国产欧美日韩亚州综合| 国产精品一级二级三级| 久久久影院官网| 国产成人超碰人人澡人人澡| 2021国产精品久久精品| 国产精品综合av一区二区国产馆| 精品国产三级电影在线观看| 国产一区二区女|