TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: distelg en 18 de Enero de 2006, 09:04:00

Título: Duda con input_x
Publicado por: distelg en 18 de Enero de 2006, 09:04:00
Estoy programando un PIC 16F84A con CCS y MPLAB IDE (no recuerdo las versiones) y cuando ejecuto un input_a (para leer el valor que tiene el port a, 3 por ejemplo 00000011 en binario) las salidas del port a que estaban en 1 se ponen en 0. El port a tiene configurado todos los pines como salida. A que se debe ? No tengo el codigo en este momento pero lo podira poner mas tarde ara que lo vean. Gracias.
Título: RE: Duda con input_x
Publicado por: pocher en 18 de Enero de 2006, 09:08:00
Hombre, si tienes configurado el porta como salidas, tendrás que usar la funcion output ¿no te parece?

La input es para leer entradas.

Un saludo
Título: RE: Duda con input_x
Publicado por: distelg en 18 de Enero de 2006, 11:06:00
Creo que no nos entendimos. El port A esta configurado como salida. Cuando yo quiero encender/apagar RA0, por ejemplo, uso output_a; pero si lo que quiero es ver el valor de RA0, uso input_a. El problema es que si antes de leer el valor presente en el port A con input_a,  RA0 era 1, despues de la lectura RA0 pasa a valer 0. La duda es, por que RA0, en este caso, cambia de valor despues de ejecutar input_a ? Gracias.
Título: RE: Duda con input_x
Publicado por: xootraoox en 18 de Enero de 2006, 14:56:00
mmm amigo queo que la instruccion que tu necesitas no es la que usas.... bit_test creo que seria la mas adecuada, en todo caso busca en la ayuda de ccs que te aseguro tendras un explicacion de como aplicarla

-==XooTRAooX==-
Título: RE: Duda con input_x
Publicado por: pocher en 18 de Enero de 2006, 23:00:00
Creo que lo mejor es que pongas el programa.

La verdad, no le encuentro mucho sentido a que el PIC quiera saber lo que vale una salida después de habérsela enviado.
Título: RE: Duda con input_x
Publicado por: antoniof en 19 de Enero de 2006, 01:42:00
Pues creo que al utilizar esa funcion lo que hace el compilador es configurar primero el puerto como entrada y luego leer su valor.

Utiliza la instruccion que ha puesto xootraoox.
Título: RE: Duda con input_x
Publicado por: lovando en 19 de Enero de 2006, 18:23:00
CCS 3.242 trae una funcion relacionada.

A new I/O function has been added:  value = INPUT_STATE(pin_xx);
This functions reads the I/O pin state without changing the direction
of the pin as INPUT() does.


Chavela