Configuara oscilador del p16f883

#1
Saludos...siempre he trabajado con el P16F873A pero ahora comence con el p16f883 pero tengo el problema de que no se como se configura el oscilador interno, por favor podria agregale lo que le hace falta para que me funcione. el codigo me mi programa es:
Código:
;Tomar una señal anologa del pin RA0(potenciometro) y enceder un 
;led de acuerdo al vol obtenido
;Led1 -> 0.0 - 1.5
;Led2 -> 1.5 - 3.0
;Led3 -> 3.0 - 50

D1        EQU 20H
D2        EQU 21H
          Include "P16F873A.inc"
          ORG 00H
INICIO    BSF    STATUS,RP0   ;cambiamos de banco
          BCF    STATUS,RP1
          CLRF   TRISB        ;Puerto B es salida
          BSF    TRISA,0      ;Puerto A es entrada  
          MOVLW  b'00001110'  ;Configuracion de ADCON (tabla)
          MOVWF  ADCON1       ;Configuracion al registro de ADCON1
          BCF    STATUS,RP0   ;Banco 1 al banco 0, donde esta el A
          CLRF PORTB
CICLO     MOVLW  b'01000001'  ;Configuracion ADCON1
          MOVWF  ADCON0      
          CALL   RETARDO
          BSF    ADCON0,2 
      
CONVERTIR BTFSC  ADCON0,2
          GOTO   CONVERTIR       
          MOVFW  ADRESH
COMP1     
          MOVLW d'77'
          SUBWF ADRESH,W
          BTFSC STATUS,C
          GOTO  COMP2
          GOTO  PRENDER1
PRENDER1
         BSF   PORTB,0
         BCF   PORTB,1
         BCF   PORTB,2
         GOTO  CICLO
COMP2     
          MOVLW d'153'
          SUBWF ADRESH,W
          BTFSC STATUS,C
          GOTO  COMP3
          GOTO  PRENDER2

PRENDER2
         BCF   PORTB,0
         BSF   PORTB,1
         BCF   PORTB,2
         GOTO  CICLO

COMP3     
          MOVLW d'220'
          SUBWF ADRESH,W
          BTFSC STATUS,C
          GOTO  CICLO
          GOTO  PRENDER3
   
PRENDER3
         BCF   PORTB,0
         BCF   PORTB,1
         BSF   PORTB,2
         GOTO  CICLO

RETARDO
                  ;9993 cycles
          movlw    0xCE
          movwf    D1
          movlw    0x08
          movwf    D2
RETARDO_0
          decfsz    D1, f
          goto    $+2
          decfsz    D2, f
          goto    RETARDO_0
                   ;3 cycles
          goto    $+1
          nop
                    ;4 cycles (including call)
         return
         END
Gracias
 
Última edición:

Temas similares

Arriba