Como testear éste PIC

BUenas, he montado en una placa perforada un circuito para el PIC 16F876A. Al conectar el PIC he probado los 5V de la patilla Vdd y la MCLR, los 0V de las Vss. También he visto que por las patillas 9 y 10 (donde conecto el xtal de 4MHz) entran 0.27V y 0.63V de continua. Por ahora ¿todo bien?.

Estoy usando como plataforma software piklab e icprog. Piklab me compila el código con Sdcc y me da el .hex.

/* Plantilla generada por Piklab */
#include <pic16f876a.h>

/* ----------------------------------------------------------------------- */
/* Bits de configuración: adapte los parámetros a su necesidad */
typedef unsigned int word;
word at 0x2007 CONFIG = _XT_OSC & _WDT_OFF & _PWRTE_OFF & _BODEN_ON & _LVP_ON & _CPD_OFF & _WRT_OFF & _DEBUG_OFF & _CP_OFF;

void main() {

TRISA = 0x00;
RA0=1;
RA1=0;
RA2=1;
RA3=0;
while(1);
}


IcProg me lo graba y me dice que todo OK. Pero al poner el polímetro en RA0 y RA2 no veo los 5V que necesitaría.

1. Alguna sugerencia???
2. Puede estar quemado el PIC si el IcProg me dice que bien.
3. Puedo medir 5 voltios en una patilla que NO está conectada a nada?
4. Algún alma caritativa con un hex para 16F876A con el que testear el circuito.
 
Última edición:
Si ICProg dice OK, el pic debería estar bueno.
El código podría estar errado.

Para saber si el xtal funciona es necesario utilizar un osciloscopio.

Espera un rato que te revise el código alguien con más práctica que yo y ver que te dice.

Saludos:
 
Al poner el ADCON1 a 6 pones el PCFG a "1111" Lo que configuras como salidas digitales. Si no pones esto tus salidas son analogicas y cuando sacas un 1 por el puerto no te aparece.

El código en ensambrador sería:

LIST P=P16F876A
#INCLUDE P16F876A.INC
ORG 0X0
GOTO PRINCIPAL
ORG 0X05
PRINCIPAL
BANKSEL TRISB
MOVLW 0
MOVWF TRISA
MOVLW 0x6
MOVWF ADCON1
BANKSEL PORTA
MOVLW B'00000101'
MOVWF PORTA
BUCLE
GOTO BUCLE
END

Si no quieres cambiar tu codigo en vez de utilizar el Puerto A utiliza el Puerto B. Te tiene que funcionar
 
Última edición:
Al poner el ADCON1 a 6 pones el PCFG a "1111" Lo que configuras como salidas digitales. Si no pones esto tus salidas son analogicas y cuando sacas un 1 por el puerto no te aparece.

El código en ensambrador sería:

LIST P=P16F876A
#INCLUDE P16F876A.INC
ORG 0X0
GOTO PRINCIPAL
ORG 0X05
PRINCIPAL
BANKSEL TRISB
MOVLW 0
MOVWF TRISA
MOVLW 0x6
MOVWF ADCON1
BANKSEL PORTA
MOVLW B'00000101'
MOVWF PORTA
BUCLE
GOTO BUCLE
END

Si no quieres cambiar tu codigo en vez de utilizar el Puerto A utiliza el Puerto B. Te tiene que funcionar

Graciassss. Lo pruebo en cuantito llegue a casa.
 
Atrás
Arriba