Autor Tema: Protocolo pic16f84 - puerto paralelo  (Leído 5822 veces)

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

Desconectado vlad

  • Global Moderator
  • The Communiter-
  • *
  • Mensajes: 6351
    • Qualium.net
Re: Protocolo pic16f84 - puerto paralelo
« Respuesta #15 : noviembre 14, 2010, 02:59:07 am »
Lo que sucede es que antes mandaba la señal una vez a las mil porque no siempre coincidian las señales, esto generaba el retardo.

Ahora lo que sucede es que el PIC no esta produciendo bien el retardo del motor y como ahora hay aciertos en prácticamente cada loop de tu codigo C++, entonces acepta una nueva señal antes de lo debido.

Veo en tu ASM un .retardo10 y un .retardo_bajo, no veo donde estan definidos, ni como los implementaste, pero asumo que existen y es en base a NOOPs.

En todo caso te sugiero esta magnifica herramienta para calcular los retardos.
http://www.golovchenko.org/cgi-bin/delay

Sería 0.0022 segundos para el estado alto y 0.0178 segundos para el reposo.

No tomes en cuenta el retraso de la rutina porque hay que dejarla que sirva como "ajuste" ya que los motores no son "mecanicamente ideales" en todo caso.

Este retraso va a asegurar que el PIC no avance antes de haber movido el motor. Es por esto que te mencionaba que tu diseño actual no permitia mover mas de 1 motor a la vez.

Al menos asi vas a eliminar el temblor en los motores.