Autor Tema: COnfiguracion I/O  (Leído 1754 veces)

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

Desconectado _CMaGNo_

  • PIC10
  • *
  • Mensajes: 27
COnfiguracion I/O
« en: 04 de Mayo de 2006, 12:20:12 »
Hola. Quisiera cambiar la configuracion de entrada y salida de un bit del puerto C en diferentes partes del programa. No se si lo que estoy haciendo es correcto ...

#byte TRISC 0x0087
.
.
.
#bit XOUT = TRISC.2    // PIN C2
.
.
.
XOUT = 1 // Pin C2 Entrada
.
.
.
XOUT = 0 // Pin C2 Salida

Es correcto? ... existe alguna otra manera de hacer lo que quiero?. Gracias!


Desconectado _CMaGNo_

  • PIC10
  • *
  • Mensajes: 27
Re: COnfiguracion I/O
« Respuesta #1 en: 04 de Mayo de 2006, 13:52:59 »
En otras palabras, quiero hacer en CCS C el equivalente en ensamblador a ...

BSF TRISC,2

Se que con la funcion set_tris_c modifico todos los bits del puerto, pero solo necesito modificar 1  :mrgreen:

Desconectado marcegoncba

  • PIC10
  • *
  • Mensajes: 17
Re: COnfiguracion I/O
« Respuesta #2 en: 04 de Mayo de 2006, 14:01:08 »
El CCS en el modo estándar de manejo de I/O (no en el fast I/O) se encarga el solo de los TRIS sin necesidad de hacer nada más que declarar el pin que querés leer o escribir. Consultá el manual del mismo o en el help los apartados:
INPUT()
OUTPUT_BIT()
y sus temas relacionados.

En modo fast I/O si necesitas declarar vos los TRIS porque CCS no realiza la verificación previa.

Saludos
Marcelo

Desconectado _CMaGNo_

  • PIC10
  • *
  • Mensajes: 27
Re: COnfiguracion I/O
« Respuesta #3 en: 04 de Mayo de 2006, 14:06:15 »
Lo que pasa es que estoy usando el modulo PWM para generar pulsos por el pin C2, asi que en ciertos momentos debo poner el bit C2 como entrada para "anular" los pulsos y en otra parte del programa los debo restaurar poniendo C2 como salida. Por esta razon no puedo configurar las I/O con las directivas #use ya que debo estar cambiando entre entrada y salida continuamente.

Desconectado kain589

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 324
Re: COnfiguracion I/O
« Respuesta #4 en: 04 de Mayo de 2006, 15:24:18 »
Si lo que buscas es eliminar los pulsos basta con que pongas setup_ccp1(CCP_OFF) si solo pretendes eliminar los pulsos esto te bastara y despues cuando quieres restablecer los pulsos setup_ccp1(CCP_PWM) este metodo sirve y no tienes que configurar de nuevo ni el timer2 ni el duty;si tambien lo quieres usar como entrada no te servira
Saludos desde Córdoba, españa

Desconectado _CMaGNo_

  • PIC10
  • *
  • Mensajes: 27
Re: COnfiguracion I/O
« Respuesta #5 en: 04 de Mayo de 2006, 16:28:54 »
Creo que es una buena solucion a mi problema, gracias kain, no habia tenido en cuenta lo que dices  :mrgreen:


 

anything