PROYECTOS » Motor DC

'****************************************************************

'*  Name    : UNTITLED.BAS                                      *

'*  Author  : [select VIEW...EDITOR OPTIONS]                    *

'*  Notice  : Copyright (c) 2022 [select VIEW...EDITOR OPTIONS] *

'*          : All Rights Reserved                               *

'*  Date    : 25/02/2022                                        *

'*  Version : 1.0                                               *

'*  Notes   :                                                   *

'*          :                                                   *

'****************************************************************

''''DIRECCION DE RE3GISTROS'''

TRISA=133 : TRISB=134

PORTA=5 : PORTB=6

'''DEFINICION DE VARIABLES'''

FREC VAR BYTE    'VARIABLE FREC 255'

BANDERA VAR BIT  'VARIABLE VANDERA BIT'


''CONFIGURACION DE PUERTOS''

POKE 133,3  'PORTA=00000011(PA.0 Y PA.1 COMO ENTRADA)'

POKE 134,0  'PORTA=00000000(TOFO PORTB COMO SALIDAS)'


''DEFINICION DE ALIAS'''

INCRE VAR PORTA.0   'NOMBRE PIN INCREMENTA '

DECRE VAR PORTA.1   'NOMBRE DE DECREMENTA'

LED VAR PORTB.1     'NOMBRE DE PORTB.1'


'''ESTADOS INICIALES'''

FREC=125    'VALOR INICIAL DE FREC 50:


'''programa principal''

HIGH LED         'PRUEBA SALIDA LED'

PAUSE 500

LOW LED


INICIO:

        PWM PORTB.0,FREC,30   'ENVIO DE PULSOS PWM POR PB.O,FREC'

        LOW LED   'DESACTIVA LED'

        IF INCRE=0 THEN SUBIR  'INCREMENTAS PWM ,ENTONCES ETIQ SUBIR

        IF DECRE=0 THEN BAJAR  'DECREMENTAS PWM,ENTONCES ETIQ BAJAR)

        BANDERA=0                'BIT BANDERA=0'

        GOTO INICIO   

SUBIR:

        IF FREC>249 THEN AVISO     'SI FREC>248 , SALTO A TIQ AVISO'

        IF BANDERA=1 THEN INICIO 'SI BANDERA=1, SALTO A ETIQ INICIO)

        HIGH LED          

        BANDERA=1    ''ACTUALIZA VALOR DE BANDERA

        FREC=FREC+25  'INCREMENTA FREC EN 25'

        GOTO INICIO   

BAJAR:

        IF FREC<26 THEN AVISO    'SI FREC<26 , SALTO A TIQ AVISO'

        IF BANDERA=1 THEN INICIO 'SI BANDERA=1, SALTO A ETIQ INICIO)

        HIGH LED          

        BANDERA=1    'ACTUALIZA VALOR DE BANDERA

        FREC=FREC-25  'DECREMENTA FREC EN 25'

        GOTO INICIO 

AVISO:

        HIGH LED

        GOTO INICIO


END