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

📄 pwm_int.asm

📁 HT45RM03A 在電動自行車控制器中的應用
💻 ASM
字号:
;;**************************************************************************
isr_Pwm:
	mov		isr_acc1,a
	mov		a,status
	mov		isr_status1,a
	
	clr             F_Timer1_En_Bak
	sz              intc1.2
	set             F_Timer1_En_Bak
	
	
	mov		a,11111001b
	andm		a,intc1
	mov		a,11111011b
	andm		a,intc0
	
	set		intc0.0
;;-----------------------------------------------


        sz             F_StartUp_delay1s 	
	jmp	       L_ExitPwm


;==============================================================================================	
;;-----------------------------------------------
;
;-----------------------------------------------
	mov		a,R_Speed
	sub		a,C_SpeedLC		
	sz		c
	jmp		L_LimitCurrentTo10A_Pwm
	clr		F_OverCurrent	           ;	
	clr		R_OverCurrentTime
	clr		F_LimitCurrent
	jmp		L_CheckPwmValue_Pwm
;---------------------------------------------------	


;F_OverCurrent=1 
;---------------------------------------------------	
L_LimitCurrentTo10A_Pwm:
	snz		F_LimitCurrent
	jmp		L_CheckPwmValue_Pwm

	mov		a,R_CurrentTmp		 
	sub		a,C_Current10A
	sz		c
	jmp		L_IncPwm_Pwm
	jmp		L_DecPwm_Pwm
;==============================================================================================	



	
	
;==============================================================================================	
;
;;-----------------------------------------------
L_CheckPwmValue_Pwm:
	sdz		R_SpeedUpTime              ;
	jmp		L_ExitPwm

	mov		a,50                       ;C_SpeedUpTime            ;C_SpeedUpTime  equ	5		 
	mov		R_SpeedUpTime,a

;----------------------------------------------------
	mov		a,R_PwmH                   ;
	sub		a,R_PwmHBak                ;
	sz		c
	jmp		L_IncPwm_Pwm
;----------------------------------------------------


L_DecPwm_Pwm:				         ;DEC PWM。。。	
	mov		a,R_PwmHBak
	xor		a,C_PwmMin               ;20
	sz		z
	jmp		L_ExitPwm

	dec		R_PwmHBak
	mov		a,R_PwmHBak
	mov		pwmh,a
	jmp		L_ExitPwm
	
	
L_IncPwm_Pwm:		                          ; PWM。。。			
	mov		a,R_PwmHBak
	xor		a,C_PwmMax                ;244
	set		F_PwmMax
	sz		z
	jmp		L_ExitPwm
	clr		F_PwmMax
	
	inc		R_PwmHBak
	mov		a,R_PwmHBak
	mov		pwmh,a	
;==============================================================================================	







;;-----------------------------------------------
L_ExitPwm:	
	clr		intc0.0

	snz		F_EntryInt     ;
	jmp		L_ExitPwm1
	mov		a,11111001b
	andm		a,intc1
	mov		a,11111011b
	andm		a,intc0	
	jmp		L_ExitPwm2

L_ExitPwm1:
	mov		a,00000010b
	orm		a,intc1
	
	sz             F_Timer1_En_Bak
	set	       intc1.2
	
	mov		a,6
	orm		a,intc0

L_ExitPwm2:	
	mov		a,isr_status1
	mov		status,a
	mov		a,isr_acc1
	reti
;;**************************************************************************


PUBLIC   R_CurrentTmp

⌨️ 快捷键说明

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