Estoy trabajando con un 18f452
Haciendo caso a los foreros paso de usar el clásico PORTX para setear los pines y se los encargo al poderoso LATX que según las mentes privilegiadas dicen que es ma mejó
Perfecto
Tengo SPI, UART, entradas/salidas digitales y entradas analógicas.
Pero que raro, el micro me está logeando datos como si las entradas digitales estuviesen a 0, o sea en mi caso = activadas.
Mido entrada y tienen 5v, todas con su respectiva resistencia de pullup.
Miro la eeprom donde guardo los datos leidos y allí está con fecha y hora de que el pin se puso a 0.
Que coj...
Esto con el 16f877a no me lo hacía, que le pasa?
Consulto el horóscopo del día y me dice que cosas extrañas ocurrirán en el entorno de mi trabajo. Miro de reojo al encargado para ver si se ha decidido pasarse a la "vereda" de enfrente, pero no. Sigue igual.
Me doy cuenta que TODAS las entradas están leyendo datos y me digo: que un pin se haga el loco , vaya y pase. Pero todos?
Cojo un pin de entrada al azar y le cambio la directiva a PORT.
Voilá!
El pin susodicho ya no graba datos, mientras el resto continúa en su rebelión empecinada.
Cambio TODOS los pines a PORT, los de entrada, salidas, SPI, etc etc.
El micro dijo: Vos te pensas que yo nací ayer? A mi no me engañás así nomás! Y entonces se rebelaron la SPI, UART etc etc.
Era un caos.
Llegamos a un acuerdo. Yo le dije: "Ni pa tí ni pa mi, te pongo los pines de entrada digital con PORT y los de salida con LAT. Quedamos así?"
Y entonces reinó la paz.
El 18f 452 y Pibe fueron felices y comieron perdices.
Moraleja: No te metas con un pic y sus traicioneros LATs