Autor Tema: Problema con el puerto_a del pic 18f4520  (Leído 2561 veces)

0 Usuarios y 3 Visitantes están viendo este tema.

Desconectado jezus

  • PIC10
  • *
  • Mensajes: 44
Problema con el puerto_a del pic 18f4520
« en: 04 de Septiembre de 2009, 00:50:05 »
Hola, estoy haciendo un proyecto con el microcontrolador PIC18F4520 y estoy desesperado!!configuro el puerto A como salida y nada mas empezar la simulacion (proteus), se activan los pines A0 y A1....no tengo control sobre ellos y no se por qué!! :x
Son las entradas de los comparadores, no se si eso tiene algo que ver. La direccion de este puerto supongo que es la 0x05,no? (#byte puerto_a=0x05)
Bueno, agradeceria cualquier sugerencia..gracias!

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Problema con el puerto_a del pic 18f4520
« Respuesta #1 en: 04 de Septiembre de 2009, 01:00:14 »
Si tiene comparadores, asegúrate de deshabilitarlos, y si tiene conversor analógico/digital asegúrate que todos los pines estén con i/o digitales.


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado jezus

  • PIC10
  • *
  • Mensajes: 44
Re: Problema con el puerto_a del pic 18f4520
« Respuesta #2 en: 04 de Septiembre de 2009, 08:58:22 »
Lo he probado pero no hay manera..tienes algun ejemplo de codigo con este pic donde uses este puerto como I/O digitales?

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Problema con el puerto_a del pic 18f4520
« Respuesta #3 en: 04 de Septiembre de 2009, 09:03:04 »
En que lenguaje estas programando?
No contesto mensajes privados, las consultas en el foro

Desconectado jezus

  • PIC10
  • *
  • Mensajes: 44
Re: Problema con el puerto_a del pic 18f4520
« Respuesta #4 en: 04 de Septiembre de 2009, 12:56:40 »
En que lenguaje estas programando?

En c con el compilador ccs. Acabo de cambiarlo por el pic 18F442 y me ocurre igual, la cosa cambia si uso el 16f877 ya que funciona correctamente...El caso es que quiero manejar un array de pulsadores y por tanto tengo que ir activando las salidas (conectadas al puertoA).
En la imagen esta el código(es una función) y el pic...como puedes ver A0 y A1 están activados desde un principio sin que yo lo quiera y....no tengo ni idea de porque ocurre esto, estoy haciendo mil cambios pero sigue igual, se supone que esto me pasa con los pic de la familia 18F que la verdad nunca he trabajado con ellos.

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Problema con el puerto_a del pic 18f4520
« Respuesta #5 en: 04 de Septiembre de 2009, 13:06:54 »
... se activan los pines A0 y A1....no tengo control sobre ellos y no se por qué!! :x...

mira en el datasheet que otras opciones tienen eso pines y busca deshabilitarlos como te dice suky

La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Problema con el puerto_a del pic 18f4520
« Respuesta #6 en: 04 de Septiembre de 2009, 13:07:35 »
Configura como salida solo los pines A0, A1, puede ser usando:
#use fixed_io(a_outputs=PIN_A0, PIN_A1)

Después en el main:
Código: C
  1. void main(){
  2.    setup_adc_ports(NO_ANALOGS|VSS_VDD);
  3.    setup_adc(ADC_OFF);
  4.    setup_comparator(NC_NC_NC_NC);
  5.    setup_vref(FALSE);
  6.    output_a(0x00);


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado jezus

  • PIC10
  • *
  • Mensajes: 44
Re: Problema con el puerto_a del pic 18f4520
« Respuesta #7 en: 04 de Septiembre de 2009, 14:09:37 »
Muchas gracias!!ya he resuelto el problema!!
Sigo teniendo otra duda...la dirección del puerto c en este pic sabeis cual es??he estado mirando en su datasheet (porque la 0x07 no es seguro)...pero no la he encontrado, pero bueno,eso no es muy importante, ya que con la instrucción "input_c()" puedo preguntar el valor del puerto en cualquier momento.
Gracias de nuevo!! :mrgreen: :mrgreen:

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: Problema con el puerto_a del pic 18f4520
« Respuesta #8 en: 04 de Septiembre de 2009, 14:14:54 »
No te preocupes, porque para determinar su estado realizas input_c(), o para un solo pin, input(PIN_C0). Para cargar algún valor usas output_c(), o para un solo pin output_low, output_high(), etc  ;-)
No contesto mensajes privados, las consultas en el foro


 

anything