La salida PIC es alta antes de que se establezca alta automáticamente

1

Estoy creando un proyecto pic simple que usa un PIC16F877A y he notado algo que parece extraño. Antes de usar cualquier código para cambiar el estado de los pines conectados al puerto b, los pines del puerto b ya están altos. Aquí está el código que estoy usando en alta tecnología con todo lo demás eliminado para demostrar el problema. Me preguntaba si era normal que los pines comenzaran en alto antes de colocarse en ese estado. Si ese es el caso, podría establecer PORTB en 0 al principio para resolver el problema, solo quería asegurarme de que no había nada malo. Esto parece ser causado por la línea TRISB = 0xFF pero no entiendo por qué, dado que ese registro solo ajusta el clima, el pin es una entrada. Si alguien lo solicita, puedo publicar mi diagrama de circuito, pero esperaba evitar tener que dibujar un esquema.

#include<htc.h>
#define _XTAL_FREQ 8000000
__CONFIG(UNPROTECT & PWRTDIS & WDTDIS & HS & LVPDIS); 

int main()
{
    TRISB = 0X00;

    while(1)
    {

    }
}
    
pregunta popgalop

2 respuestas

0

Al reiniciar, todos los pines del puerto están configurados como entradas. Si flotan alto, y luego los configura como salidas, estarán manejando alto. Por lo tanto, es mejor establecer todos los pines en su estado predeterminado antes de escribir en los registros TRIS para establecerlos como salidas.

    
respondido por el James C
1

PORTB se establece en un valor desconocido en el encendido. Hitech C no hace nada para cambiar eso al inicio.

LospullupsdébilesenPORTBestándeshabilitadosenelencendidodeformapredeterminada.

    
respondido por el Spehro Pefhany

Lea otras preguntas en las etiquetas