arranque suave del motor de CC con PWM

0

Estoy usando un pic16f877A para conducir un motor de CC con PWM, el pwm funciona bien pero tengo un gran problema, entre el 0-30% del ciclo de trabajo del PWM El motor no funciona, solo vibra, sé que hay es una técnica llamada inicio suave para estas situaciones, pero no tengo una idea clara de cómo hacerlo a través del software (por cierto, estoy usando MPLab X IDE). ¿Hay alguien que pueda aconsejar sobre esto? Sé que hay algunas formas de implementarlo físicamente, pero preferiría que fuera a través del software El código que estoy usando para pwm es el siguiente:

list    P=16f876A   
INCLUDE <p16F876A.INC>  
__config _CP_OFF& _DEBUG_OFF& _WRT_OFF& _CPD_OFF& _LVP_OFF& _BOREN_OFF& _PWRTE_ON& _WDTE_OFF& _XT_OSC
org 0x00        
CLRW            
BCF STATUS,RP0  
RETARDO EQU 0x20

CLRF    PORTA       
CLRF    PORTC       
BSF STATUS,RP0  
MOVLW   0x01        
MOVWF   TRISA       
CLRF    TRISC       

MOVLW   0x0E        
MOVWF   ADCON1      

MOVLW   0xF9        
MOVWF   PR2     
BCF STATUS,RP0  

MOVLW   0xC1        
MOVWF   ADCON0
TIMER2
MOVLW   0x05        
MOVWF   T2CON       

MOVLW   0x0C        
MOVWF   CCP1CON     

CICLO   BSF ADCON0,2    
BTFSC   ADCON0,2    
GOTO    CICLO       

MOVF    ADRESH,W    
MOVWF   CCPR1L      
CALL    TEMPO       
GOTO    CICLO       

TEMPO   MOVLW   0x01        
MOVWF   RETARDO 
TEMPO1  MOVLW   0xFA
TEMPO2  ADDLW   -d'1'       
BTFSS   STATUS,Z    
GOTO    TEMPO2      
DECFSZ  RETARDO,F   
GOTO    TEMPO1      
RETURN
END
    
pregunta David Gonzalez

0 respuestas

Lea otras preguntas en las etiquetas