Autor Tema: Problemas con A4 como salida  (Leído 2610 veces)

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

Desconectado Algec

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 974
Problemas con A4 como salida
« en: 26 de Mayo de 2007, 13:02:15 »
No funciona una rutina con salida en A4 en proteus, si funciona si selecciono por ejemplo A0 pero no puedo entender donde esta el error, debe ser de configuracion. Os pego el codigo a ver donde falla

//code
#include <16F876.h>
#fuses XT,NOWDT,NOPROTECT,NOLVP,PUT,NODEBUG,BROWNOUT,NOCPD,NOWRT
#use delay(clock=1000000)



int tiempo =20;

// rutina de interrupcion si se gira el encoder

#INT_EXT
void giro (void){
  disable_interrupts(global);
 
 /////// EJE X //////////////
 
 If(input(PIN_C1))     // esta seleccionado X en el selector
      {     
      output_high(PIN_A3);    // desbloquea X

      // depende del sentido de giro del encoder fija el bit de direccion de X
      if(input(PIN_B1))
         output_high(PIN_A2);    // direccion a un lado
      else     
         output_low(PIN_A2);    // direccion a un lado

      // hace la salida del pulsos de X
      output_high(PIN_A1);
      delay_ms(tiempo);
      output_low(PIN_A1);
      delay_ms(tiempo);
      output_low(PIN_A3);    // bloquea X
      }
 /////// EJE Y //////////////
 
 If(input(PIN_C2))     // esta seleccionado Y en el selector
      {     
      output_high(PIN_C4);    // desbloquea Y
      // depende del sentido de giro del encoder fija el bit de direccion de Y
      if(input(PIN_B1))
         output_high(PIN_A5);    // direccion a un lado
      else     
         output_low(PIN_A5);    // direccion a un lado
     
     // hace la salida del pulsos de X
      output_high(PIN_A4);
      delay_ms(tiempo);
      output_low(PIN_A4);
      delay_ms(tiempo);
     
     
     output_low(PIN_C4);    // bloquea Y
      }
     
       /////// EJE Z //////////////
 
 If(input(PIN_C3))     // esta seleccionado Z en el selector
      {     
      output_high(PIN_C7);    // desbloquea Z
     
     // depende del sentido de giro del encoder fija el bit de direccion de Z
      if(input(PIN_B1))
         output_high(PIN_C6);    // direccion a un lado
      else     
         output_low(PIN_C6);    // direccion a un lado
     
     // hace la salida del pulsos de Z
      output_high(PIN_C5);
      delay_ms(tiempo);
      output_low(PIN_C5);
      delay_ms(tiempo);
      output_low(PIN_C7);    // bloquea X
      }
 enable_interrupts(global);
}

void main(){
   enable_interrupts(INT_EXT);
   enable_interrupts(global);
   while(TRUE){
 
   
  }
}
   
   
   
encode//

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18310
    • MicroPIC
Re: Problemas con A4 como salida
« Respuesta #1 en: 26 de Mayo de 2007, 13:06:14 »
Si no recuerdo mal ese pin es Schmitt Trigger y necesita de una pullup externa para funcionar.

Desconectado KALLITOS

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1256
Re: Problemas con A4 como salida
« Respuesta #2 en: 26 de Mayo de 2007, 14:08:19 »
Hola.

Correccion se llaman open colector y correcto llevan un pullup

Saludos
A un microcontrolador hay que sacarle hasta el ultimo byte....(YO)

Cómo puede ser que un pic24EP512 me quede corto de memoria, señores de MICROCHIP saquen pics con más memoria flash

Más de 45 mil lineas de codigo y aun no termino el equipo, asu mare!!

S34ML08G1TFI200 no necesito mas memoria externa.

Desconectado Algec

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 974
Re: Problemas con A4 como salida
« Respuesta #3 en: 26 de Mayo de 2007, 14:15:45 »
Bingo chicos, mil gracias.
Alguna salida mas necesita pull ups? casi es mejor usar otra salida si puedo reformando el esquema.

Desconectado KALLITOS

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1256
Re: Problemas con A4 como salida
« Respuesta #4 en: 26 de Mayo de 2007, 14:17:57 »
Dale una ojeada a la hoja de datos del pic para salir de dudas.
A un microcontrolador hay que sacarle hasta el ultimo byte....(YO)

Cómo puede ser que un pic24EP512 me quede corto de memoria, señores de MICROCHIP saquen pics con más memoria flash

Más de 45 mil lineas de codigo y aun no termino el equipo, asu mare!!

S34ML08G1TFI200 no necesito mas memoria externa.

Desconectado Algec

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 974
Re: Problemas con A4 como salida
« Respuesta #5 en: 26 de Mayo de 2007, 15:37:54 »
Venga gracias por todo, ya he cambiado a usar otra salida, no me convenia que quedase a positivo fijo.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18310
    • MicroPIC
Re: Problemas con A4 como salida
« Respuesta #6 en: 26 de Mayo de 2007, 16:26:07 »
Hola.

Correccion se llaman open colector y correcto llevan un pullup

Saludos
Tienes razón, gracias por la corrección