Autor Tema: problema con la configuracion pic16f887  (Leído 2464 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado 300

  • PIC10
  • *
  • Mensajes: 10
problema con la configuracion pic16f887
« en: 14 de Noviembre de 2011, 18:00:51 »
hola hice un programa para el pic 16f887 es la primera vez que lo use pues lo necesitaba y no encontre el 16f873 que ya estaba usando se que este tiene unas diferencias como que se alimenta de los dos lados y tiene un oscilador interno  pero tengo el problema de que no me corre ya en el pic no puedo ni correr el programa mas sencillo de con un led en proteeus todo marcha bien la simulacion funciona tengo la sospecha que sea la configuracion de el oscilador o algo asi si alguien me puede ayudar aqui dejo el codigo.

;; ****G  E  N  E  R  A  L****  ;;
   LIST   P=16F887
   #INCLUDE   <P16F887.INC>
   __CONFIG _CONFIG1, _LVP_OFF & _FCMEN_ON & _IESO_OFF & _BOR_OFF & _CPD_OFF & _CP_OFF & _MCLRE_ON & _PWRTE_ON & _WDT_OFF & _INTRC_OSC_NOCLKOUT
   __CONFIG _CONFIG2, _WRT_OFF & _BOR21V
 
   CBLOCK 0X20
   PDel0, PDel1, PDel2
   ENDC
   ORG 0x000
   BSF STATUS,RP0
   CLRF TRISC
   MOVLW 0X3F
   MOVWF TRISB
   MOVLW 0X3F
   MOVWF TRISD
   BCF STATUS,RP0
   
   CLRF PORTC
INI BTFSS PORTD,2
   GOTO INI
   BTFSC PORTD,3
   GOTO PRACTICA1
   BTFSC PORTD,4
   GOTO PRACTICA2
   BTFSC PORTD,5
   GOTO PRACTICA3
   BTFSC PORTD,6
   GOTO PRACTICA4
   BTFSC PORTD,7
   GOTO PRACTICA5
   GOTO INI
   
PRACTICA1 ;;;;;;;;
;;;;;;;; P-P MAXIMO CICLO UNICO PP  ;;;;;;;;
;PASO 1   
   BTFSS PORTD,2
   GOTO INI
S1   MOVLW B'00010101'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO S1
   MOVLW B'00000001'
   MOVWF PORTC
;PASO 2   
S2   MOVLW B'00010110'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO S2
   MOVLW B'00000111'
   MOVWF PORTC
;PASO 3   
S3   MOVLW B'00101010'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO S3
   MOVLW B'00000110'
   MOVWF PORTC
;PASO 4   
S4   MOVLW B'00101001'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO S4
   MOVLW B'00000100'
   MOVWF PORTC
;PASO 5   
S5   MOVLW B'00100101'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO S5
   MOVLW B'00000000'
   MOVWF PORTC
   GOTO PRACTICA1

PRACTICA2
;;;;;;;;  BANDERAS PARO PRIORITARIO  ;;;;;;;;
;PASO 1   
   BTFSS PORTD,2
   GOTO INI
F1   MOVLW B'00010101'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO F1
   MOVLW B'00000001'
   MOVWF PORTC
;PASO 2   
F2   MOVLW B'00010110'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO F2
   MOVLW B'00000111'
   MOVWF PORTC
;PASO 3   
F3   MOVLW B'00101010'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO F3
   MOVLW B'00000101'
   MOVWF PORTC
;PASO 4   
F4   MOVLW B'00100110'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO F4
   MOVLW B'00000000'
   MOVWF PORTC
   GOTO PRACTICA2

PRACTICA3
;;;;;;;;  P3 2 pistones PP  ;;;;;;;;
;PASO 1   
   BTFSS PORTD,2
   GOTO INI
G1   MOVLW B'00000101'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO G1
   MOVLW B'00000011'
   MOVWF PORTC
;PASO 2   
G2   MOVLW B'00001010'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO G2
   MOVLW B'00000000'
   MOVWF PORTC
;PASO 3   
G3   MOVLW B'00000101'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO G3
   MOVLW B'00000001'
   MOVWF PORTC
;PASO 4   
G4   MOVLW B'00000110'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO G4
   MOVLW B'00000011'
   MOVWF PORTC
;PASO 5   
G5   MOVLW B'00001010'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO G5
   MOVLW B'00000010'
   MOVWF PORTC
;PASO 6   
G6   MOVLW B'00001001'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO G6
   MOVLW B'00000000'
   MOVWF PORTC
   GOTO PRACTICA3

PRACTICA4
;;;;;;;;  BANDERAS PARO PRIORITARIO  ;;;;;;;;
;PASO 1   
   BTFSS PORTD,2
   GOTO INI
H1   MOVLW B'00010101'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO H1
   MOVLW B'00000001'
   MOVWF PORTC
;PASO 2   
H2   MOVLW B'00010110'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO H2
   MOVLW B'00000111'
   MOVWF PORTC
   CALL T10S
;PASO 3   
H3   MOVLW B'00101010'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO H3
   MOVLW B'00000101'
   MOVWF PORTC
;PASO 4   
H4   MOVLW B'00100110'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO H4
   MOVLW B'00000000'
   MOVWF PORTC
   GOTO PRACTICA4
   

PRACTICA5
;;;;;;;;  2 PISTONES  ;;;;;;;;
;PASO 1   
   BTFSS PORTD,2
   GOTO INI
P1   MOVLW B'00000101'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO P1
   MOVLW B'00000011'
   MOVWF PORTC
;PASO 2   
P2   MOVLW B'00001010'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO P2
   MOVLW B'00000000'
   MOVWF PORTC
   CALL T10S
;PASO 3   
P3   MOVLW B'00000101'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO P3
   MOVLW B'00000001'
   MOVWF PORTC
;PASO 4   
P4   MOVLW B'00000110'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO P4
   MOVLW B'00000011'
   MOVWF PORTC
;PASO 5   
P5   MOVLW B'00001010'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO P5
   MOVLW B'00000010'
   MOVWF PORTC
;PASO 6   
P6   MOVLW B'00001001'
   SUBWF PORTB,W
   BTFSS STATUS,Z
   GOTO P6
   MOVLW B'00000000'
   MOVWF PORTC
   GOTO PRACTICA5

T10S  movlw     .167      ; 1 set numero de repeticion  (C)
        movwf     PDel0     ; 1 |
PLoop0  movlw     .41       ; 1 set numero de repeticion  (B)
        movwf     PDel1     ; 1 |
PLoop1  movlw     .72       ; 1 set numero de repeticion  (A)
        movwf     PDel2     ; 1 |
PLoop2  clrwdt              ; 1 clear watchdog
        decfsz    PDel2, 1  ; 1 + (1) es el tiempo 0  ? (A)
        goto      PLoop2    ; 2 no, loop
        decfsz    PDel1,  1 ; 1 + (1) es el tiempo 0  ? (B)
        goto      PLoop1    ; 2 no, loop
        decfsz    PDel0,  1 ; 1 + (1) es el tiempo 0  ? (C)
        goto      PLoop0    ; 2 no, loop
PDelL1  goto PDelL2         ; 2 ciclos delay
PDelL2  clrwdt              ; 1 ciclo delay
        return              ; 2+2 Fin.

END   

Desconectado 300

  • PIC10
  • *
  • Mensajes: 10
Re: problema con la configuracion pic16f887
« Respuesta #1 en: 14 de Noviembre de 2011, 18:02:39 »
a
« Última modificación: 14 de Noviembre de 2011, 23:30:29 por 300 »

Desconectado alejandrojcr

  • PIC10
  • *
  • Mensajes: 14
Re: problema con la configuracion pic16f887
« Respuesta #2 en: 17 de Noviembre de 2011, 10:51:16 »
Hola saludos creo que ese pic no tiene oscilador interno yo tambien lo estoy utilizando para un proyecto y yo le coloco su oscilador, el 16f877 que estoy utilizando funciona a 4Mhz. pero tengo un probema con el pwm que ya postie a que tal si alguna idea o te puedes pasar por el http://www.todopic.com.ar/foros/index.php?topic=36736.0

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: problema con la configuracion pic16f887
« Respuesta #3 en: 17 de Noviembre de 2011, 11:57:55 »
  El compañero 300 está utilizando un PIC16F887 que sí tiene oscilador interno. En tu caso, el 16F877 efectivamente no tiene oscilador interno.
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado alejandrojcr

  • PIC10
  • *
  • Mensajes: 14
Re: problema con la configuracion pic16f887
« Respuesta #4 en: 18 de Noviembre de 2011, 09:32:22 »
Ah ok si es verdad no vi bien

Desconectado tapi8

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1506
Re: problema con la configuracion pic16f887
« Respuesta #5 en: 18 de Noviembre de 2011, 09:44:15 »
Creo que te falta configurar los puertos como digitales:

BANKSEL ANSEL ;
CLRF ANSEL ;digital I/O para PORTA

Para PORTB es el ANSELH-

Prueba a ver que pasa.


 

anything