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

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

?? zhtest4.asm

?? 這個是直流無刷電機的基于DSP2407的速度控制源代碼
?? ASM
字號:
;=========================================================================================
; 系統名:	直流無刷電機控制系統
;
; 文件名:	Zhtest4.ASM 
;
; 功能描述:	通過霍爾傳感器的換相信號實現直流無刷電動機的控制	
;
; 公司:	達盛科技
;
; 目標板: F2407
;=====================================================================================
; 修改記錄:
;-------------------------------------------------------------------------------------
; 2005.08.25	版本	Ver 1.0
;==========================================================================================

;系統選項
;******************************************************************************************

real_time			.set	1   ;實時模式運行選擇'1'

		.include	"x24x_app.h"                                     

 ;-----------------------------------------------------------------------------
; 外部變量及函數聲明
;-----------------------------------------------------------------------------

		.global MON_RT_CNFG

		.ref	SYS_INIT

		.ref	RMP2CNTL, RMP2CNTL_INIT				;給定子程序調用
		.ref	rmp2_dly, rmp2_desired				;輸入 
        .ref	rmp2_out    						;輸出
		.ref	rmp2_max, rmp2_min

		.ref	MOD6_CNT, MOD6_CNT_INIT				;模6計數器子程序調用
		.ref	m6_trig_in, m6_cntr					;輸入輸出
        
		.ref	HALL3_DRV, HALL3_DRV_INIT			;霍爾換相驅動子程序調用
		.ref	cmtn_trig_hall, hall_map_ptr		;輸入

		.ref	BLDC_3PWM_DRV, BLDC_3PWM_DRV_INIT	;三相無刷電機pwm子程序調用
		.ref	cmtn_ptr_bd, D_func, Mfunc_p		;輸入

		.ref	DATA_LOG, DATA_LOG_INIT				;顯示數據獲取子程序調用
		.ref	dlog_iptr1, dlog_iptr2				;輸出
		.ref	trig_value							;輸入
  
;************************************************************

;-----------------------------------------------------------------------------
; 內部變量聲明
;-----------------------------------------------------------------------------

;SYSTEM_INT_PERIOD	.set	758		;25 uS 采樣周期 @33nS CPU clock           
SYSTEM_INT_PERIOD	.set	1000	;25 uS 采樣周期 @25nS CPU clock           
		
		.def	_c_int0, PHANTOM, T2_PERIOD_ISR		
		.def	GPR0				;通用寄存器.
		.def	v_timer		

BLDC_vars		.usect	"BLDChall",3,1
GPR0			.set	BLDC_vars+0
v_timer			.set	BLDC_vars+1         
D_func_desired	.set	BLDC_vars+2
                                                                                        
        		.bss 	isr_ticker,1
         
;==============================================================================
; 主程序代碼開始
;==============================================================================
		.text
_c_int0:  		
		CALL	SYS_INIT
		CALL	BLDC_3PWM_DRV_INIT
       	CALL    RMP2CNTL_INIT  
		CALL	MOD6_CNT_INIT
        CALL    HALL3_DRV_INIT       

		CALL	DATA_LOG_INIT
;------------------------------------------------------
;系統時基初始化
;------------------------------------------------------
;	時基取決于 T2 下溢中斷 (也就是系統周期)
;	in BLDC_PWM_DRV module.

	;初始化周期寄存器
		POINT_EV
		SPLK	#SYSTEM_INT_PERIOD, T2PR

				;5432109876543210
				;||||!!!!||||!!!!
		SPLK	#1001000001000000b, T2CON  	;通用定時器初始化

            		            		
;----------------------------------------------------------
; 實時監控程序初始化
;---實時監控程序使能---------------
	.if (real_time)
		CALL	MON_RT_CNFG			;實時監控程序調用
	.endif
;----------------------------------------------------------

;----------------------------------------------------------
; 系統中斷初始化.
;----------------------------------------------------------

	;事件管理器初始化
		POINT_EV
;		SPLK	#0000001000000000b,EVIMRA ;使能 T1 下溢中斷 
		SPLK	#0000000000000100b,EVIMRB ;使能 T2 下溢中斷
		SPLK	#0000000000000000b,EVIMRC 
;		SPLK	#0000000000000111b,EVIMRC ;使能 CAP1,2,3 中斷
				;||||!!!!||||!!!!		
				;5432109876543210

		SPLK	#0FFFFh,EVIFRA	; 清所有 A 組中斷標志
		SPLK	#0FFFFh,EVIFRB	; 清所有 B 組中斷標志
		SPLK	#0FFFFh,EVIFRC	; 清所有 C 組中斷標志

	;C2xx cpu
		POINT_PG0

;---實時模式使能---------------

	.if (real_time)
;		SPLK	#0000000001000010b,IMR	;En Int lvl 2 & 7 (T1 ISR)
		SPLK	#0000000001000100b,IMR	;En Int lvl 3 & 7 (T2 ISR)
;		SPLK	#0000000001001100b,IMR	;En Int lvl 3,4&7 (T2 & CAP ISR) 
				;5432109876543210
	.else
;		SPLK	#0000000000000010b,IMR	;En Int lvl 2 (T1 ISR)
	    SPLK	#0000000000000100b,IMR	;En Int lvl 3 (T2 ISR)
;		SPLK	#0000000000001100b,IMR	;En Int lvl 3&4 (T2 & CAP ISR)
				;||||!!!!||||!!!!		
				;5432109876543210
	.endif

		SPLK	#0FFFFh, IFR		;Clear any pending Ints
		EINT						;Enable global Ints

;------------------------------------------------------------------------------------------
;硬件初始化
;------------------------------------------------------------------------------------------
;使能 PWM 信號   

		POINT_PF2
		LACC	OCRA
		AND	#0BFFFh	
		SACL	OCRA		;設置第二功能 IOPB6

		LACC	PBDATDIR
		OR	#04000h
		SACL	PBDATDIR	;設置 IOPB6 為輸出

		LACC	PBDATDIR
		AND	#0FFBFh     	;設置 IOPB6 為低, 使能 PWM
;       OR	#00040h 		;設置 IOPB6 為高, 禁止 PWM
		SACL	PBDATDIR  	
;----------------------------------------------------------
;參數初始化
;----------------------------------------------------------
	LDP		#D_func
	SPLK	#1000h, D_func     		;在 BLDC_3PWM_DRV 模塊中定義
	
	LDP		#BLDC_vars
	BLDD	#D_func, D_func_desired
	SPLK	#0,v_timer				;設置計數器初始值為0
                
;----------------------------------------------------------
;初始化參數傳遞
;---------------------------------------------------------- 		
	LDP		#rmp2_out
	BLDD	#D_func, rmp2_out
	
	;DLOG 指針初始化
	LDP		#dlog_iptr1
	SPLK	#m6_cntr, dlog_iptr1
;---------------------------------------------------------


;======================================================
MAIN:		;系統主程序循環
;======================================================

M_1:	NOP
		B	M_1
;======================================================

;-------------------------------------------------------------------------------------------
;T2 定時中斷服務程序
;-------------------------------------------------------------------------------------------
T2_PERIOD_ISR:
;斷點保護
	MAR	*,AR1		;AR1 作為堆棧指針
	MAR	*+          ;skip one position
	SST	#1, *+      ;保存 ST1
	SST   #0, *+    ;保存 ST0
	SACH	*+      ;保存 acc 高16位
	SACL	*		;保存 acc 低16位   
	
	POINT_EV
;	SPLK	#0FFFFh,EVIFRA  	; 清所有 A 組中斷標志 (T1 ISR)
	SPLK	#0FFFFh,EVIFRB  	; 清所有 B 組中斷標志 (T2 ISR)
;===========================================================================     

		POINT_B0

		; 校驗中斷服務程序
		LACC 	isr_ticker	
		ADD		#1			
		SACL    isr_ticker 

;----------------------------
;開始中斷服務程序代碼
;----------------------------
RUN_MODE  

	LDP		#hall_map_ptr
	BLDD	#m6_cntr, hall_map_ptr
	
	CALL	HALL3_DRV              	
	
	LDP		#m6_trig_in
	BLDD	#cmtn_trig_hall, m6_trig_in 	;利用霍爾信號的切換觸發控制狀態切換
	BLDD	#hall_map_ptr, m6_cntr 			;使輸出與霍爾狀態對應 
	                                        
	CALL	MOD6_CNT
	
	LDP		#cmtn_ptr_bd                    ;通過更新指針從狀態表中獲取輸出指令
	BLDD	#m6_cntr, cmtn_ptr_bd           
	        
	LDP		#rmp2_desired                   ;斜坡過渡至預期 PWM 占空比
	BLDD	#D_func_desired, rmp2_desired
	         
	CALL	RMP2CNTL
	
	LDP		#D_func
	BLDD	#rmp2_out, D_func
	
	CALL	BLDC_3PWM_DRV                   ;產生新的 PWM 狀態
		
;---------------------------------------------------------
;更新計數器
;--------------------------
updat_v_timer		
		LDP		#v_timer
		LACC	v_timer			;計數器加1
		ADD	#1			
		AND	#07FFFh				;強制15位循環計數
		SACL	v_timer			;

		CALL	DATA_LOG        ;更新顯示數據 

;--------------------------
;主中斷服務程序代碼結束
;--------------------------
;恢復斷點
END_ISR:
		MAR	*, AR1    	;激活堆棧指針
		LACL	*-		;恢復 Acc 低位字
		ADDH	*-		;恢復 Acc 高位字
		LST	#0, *-      ;加載 ST0
		LST   #1, *-    ;加載 ST1
		CLRC	INTM
		RET  

;===========================================================================================
; 啞中斷服務程序
;
; 功能:	處理意外原因產生的中斷
;===========================================================================================
PHANTOM 	CLRC	INTM 	;允許實時監控程序中斷.通常此類中斷由不可屏蔽中斷引起
			B	PHANTOM     ;無效地址,錯誤數據頁以及缺失的連接段都是產生中斷的原因
							

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲视频 欧洲视频| 中文字幕在线一区| 色久优优欧美色久优优| 国产乱码精品一区二区三区av| 久久精品国产第一区二区三区| 视频一区二区三区中文字幕| 视频在线观看91| 欧美bbbbb| 韩国三级电影一区二区| 国产精品一区三区| 成人app网站| 色一区在线观看| 欧美日韩一区 二区 三区 久久精品| 欧洲一区二区三区在线| 欧美精品xxxxbbbb| 欧美电视剧免费全集观看| 2欧美一区二区三区在线观看视频| 久久色在线观看| 国产精品久久久久久久久免费桃花| 亚洲视频在线一区二区| 亚洲国产乱码最新视频| 久久精品国产**网站演员| 国产在线视视频有精品| 97久久精品人人做人人爽50路| 91视视频在线观看入口直接观看www| 色综合视频在线观看| 欧美日韩国产小视频| 精品盗摄一区二区三区| 亚洲欧洲av另类| 日韩高清在线电影| 懂色一区二区三区免费观看| 欧美羞羞免费网站| 欧美大片免费久久精品三p| 国产女同互慰高潮91漫画| 亚洲美腿欧美偷拍| 久久电影网站中文字幕| 99视频国产精品| 日韩欧美一卡二卡| 亚洲日本在线观看| 久久99久久精品| 日本精品视频一区二区三区| 精品va天堂亚洲国产| 亚洲素人一区二区| 国产精品夜夜嗨| 欧美性大战久久久| 中文字幕不卡在线| 麻豆精品视频在线观看| 在线中文字幕一区二区| xnxx国产精品| 五月天激情综合| 91欧美一区二区| 国产欧美日韩麻豆91| 日本aⅴ精品一区二区三区 | 欧美一区永久视频免费观看| 国产日产欧美一区二区视频| 日韩专区中文字幕一区二区| 99久久精品国产精品久久| ww久久中文字幕| 久久精品免费看| 欧美男生操女生| 一区二区在线观看免费| 成+人+亚洲+综合天堂| 久久综合久久综合亚洲| 蜜臀av性久久久久蜜臀aⅴ流畅| 欧美日韩在线不卡| 一区二区三区日韩精品视频| 国产91在线观看| 久久久99精品免费观看| 韩国女主播成人在线| 日韩欧美一区二区免费| 久久99精品一区二区三区| 日韩欧美卡一卡二| 麻豆国产欧美日韩综合精品二区 | 成人免费福利片| 国产欧美一区二区精品性| 精品中文字幕一区二区小辣椒| 91精品国产麻豆| 美女在线一区二区| 久久蜜桃av一区精品变态类天堂| 久久99国产精品免费| 精品国产青草久久久久福利| 麻豆成人综合网| 国产日韩欧美高清| av一区二区三区黑人| 亚洲视频在线一区观看| 在线观看视频一区二区欧美日韩| 一区二区三区电影在线播| 欧美在线观看一二区| 婷婷成人综合网| 精品免费国产二区三区 | 亚洲欧洲av一区二区三区久久| 成人av免费观看| 亚洲美腿欧美偷拍| 在线电影国产精品| 国产在线国偷精品产拍免费yy| 久久蜜臀中文字幕| 一本一道波多野结衣一区二区 | 久久99精品久久久久久动态图 | 国产酒店精品激情| 成人欧美一区二区三区小说| 在线免费观看成人短视频| 天天色天天操综合| 久久久久久久久久久电影| 91日韩一区二区三区| 日韩精品一区第一页| 久久综合色播五月| 色哟哟精品一区| 韩国女主播成人在线观看| 亚洲图片激情小说| 91精品国产入口在线| k8久久久一区二区三区| 亚洲成人tv网| 日本一区二区综合亚洲| 欧美人牲a欧美精品| 国产传媒日韩欧美成人| 亚洲一区二区精品久久av| 久久美女艺术照精彩视频福利播放 | 国产欧美久久久精品影院| 91麻豆国产福利精品| 久久精品72免费观看| 亚洲自拍都市欧美小说| 久久久久一区二区三区四区| 欧美日韩二区三区| 91视频免费播放| 懂色av噜噜一区二区三区av| 午夜精品在线视频一区| 亚洲欧洲国产日本综合| 久久女同精品一区二区| 日韩视频一区在线观看| 欧洲av在线精品| 播五月开心婷婷综合| 国产精品主播直播| 麻豆精品视频在线| 日本欧美一区二区在线观看| 一区二区三区在线播放| 中国av一区二区三区| 久久久噜噜噜久久人人看| 欧美成人三级电影在线| 91精品国产一区二区人妖| 欧美午夜精品久久久久久超碰 | 青青草原综合久久大伊人精品| 亚洲女人的天堂| 国产精品国产a| 久久先锋影音av鲁色资源| 日韩欧美一卡二卡| 欧美一区二区三区色| 欧美日韩国产一级二级| 精品视频在线视频| 欧美午夜视频网站| 欧美性生交片4| 欧美三级午夜理伦三级中视频| 色综合天天综合| 色综合天天在线| 欧美曰成人黄网| 日本精品裸体写真集在线观看| 一本久久a久久精品亚洲| 91在线视频免费观看| 色综合网色综合| 欧美手机在线视频| 538在线一区二区精品国产| 欧美一区二区视频在线观看| 91精品国产色综合久久不卡蜜臀| 欧美一区二区观看视频| 日韩欧美三级在线| 26uuu成人网一区二区三区| 国产日韩v精品一区二区| 国产精品久久久久久久久久久免费看 | 欧美电影精品一区二区| 久久人人超碰精品| 1024精品合集| 天天操天天综合网| 国产又黄又大久久| 国内精品视频666| 菠萝蜜视频在线观看一区| 欧美日韩一区三区四区| 日韩三级高清在线| 日本一区二区免费在线观看视频| 亚洲丝袜另类动漫二区| 日韩国产欧美三级| 国产成人综合在线| 在线观看亚洲精品视频| 精品国产乱码久久久久久牛牛 | 成人欧美一区二区三区视频网页| 伊人一区二区三区| 蜜臀精品一区二区三区在线观看 | 日韩亚洲欧美一区二区三区| 欧美精品一区二区三区高清aⅴ| 国产精品乱人伦中文| 天堂成人免费av电影一区| 国产成人av一区二区| 一本大道av一区二区在线播放| 日韩色在线观看| 国产精品成人网| 精品一区二区精品| 欧洲人成人精品| 欧美激情一区在线观看| 免费成人美女在线观看.| 97se亚洲国产综合自在线不卡 | 中文字幕欧美一区| 蜜桃精品视频在线|