Autor Tema: Display POV 48 Led  (Leído 1613 veces)

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

Desconectado Byakuya

  • PIC10
  • *
  • Mensajes: 38
Display POV 48 Led
« en: 10 de Febrero de 2018, 14:05:47 »
Hola buen dia, bueno, estoy comenzando a plantear los cálculos previos para el diseño de un POV y quería ver si me ayudan un poco. he comprado este dispositivo, el cual tenia posibilidad de insertar un maximo de 40 imagenes por Usb,  he borrado el dispositivo, y estoy intentando hacer algo simple, el diseño de la PCB es de 44 Cm de largo, por un ancho de 1Cm, usando led de 3mm separados 7mm entre led y led.

Como Driver para controlar 24 leds se han usado el registro 74HC595 un total de 3 chips, y para 24 leds restantes se han conectado directo al MicroControlador. el sensor para el cruce por cero es un Hall. conectado a un pin de interrupcion en el microcontrolador. Alguno quiere proponer alguna idea seria bien recibida... Por donde comenzar.


« Última modificación: 13 de Febrero de 2018, 23:21:34 por Byakuya »

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:Display POV 48 Led
« Respuesta #1 en: 10 de Febrero de 2018, 14:41:21 »
Suponiendo que el control de velocidad es independiente.

Comenzaria:

- Haciendo circulos. Esto evita pensar en el cruce por 0, y podes tranquilamente probar todos los leds, es decir podes hacer que el circulo vaya decrementando poco a poco su radio.
- Tratar de hacer pasos, volviendo al circulo, tomar desde el cruce por 0, activar un led, y luego desactivarlo luego de cierto tiempo. Esto es para tener una referencia temporal, interesante seria poder hacer 1/4 de vuelta, 1/2 vuelta, 3/4 y luego entero Y que cambie a cada segundo.

De aca pienso que lo que se trata es crear una funcion que me transforme una "imagen" plana facil de editar, por un array que sea facil de mostrar.
Entonces vos te dedicas unicamente a actualizar esta imagen plana (array ), para el texto seria simple de hacer, lo mas complejo es esa funcion que transforme lo que uno quiere respecto al tiempo y velocidad de giro.
Espero haberme hecho entender.

Desconectado Byakuya

  • PIC10
  • *
  • Mensajes: 38
Re:Display POV 48 Led
« Respuesta #2 en: 10 de Febrero de 2018, 15:07:38 »
Hola gracias por responder, he logrado identificar las conexiones, el microcontrolador no es Pic pero creo que si todo se hace pensando en lenguaje C podria llevarnos a algo, el Micro Tiene un Cristal a 8 MHZ internamente podrian configurarse algunos Pll para subirlo a su maximo que es 72 MHZ estos son los pines y el programa de prueba para el POV  :lol: .

Código: [Seleccionar]
//*************** Led Verde Superior

#define V1  PC15
#define V2  PA1
#define V3  PA2
#define V4  PA3
#define V5  PA4
#define V6  PA5
#define V7  PA6
#define V8  PA7

//**************** Led Azul

#define B1  PB0
#define B2  PB1
#define B3  PB2
#define B4  PB3
#define B5  PB4
#define B6  PB5
#define B7  PB6
#define B8  PB7

//*****************Led Rojo

#define R1  PB8
#define R2  PB9
#define R3  PB10
#define R4  PB11
#define R5  PB12
#define R6  PB13
#define R7  PB14
#define R8  PB15

//****************Pines dedicados a los Regitros
#define Data   PA10 
#define Clock  PA9
#define Latch  PA8

const int LEDVerde[ ] = {V1,V2,V3,V4,V5,V6,V7,V8};   // Se define Arreglo  8 led Superiores
const int LEDAzul [ ] = {B1,B2,B3,B4,B5,B6,B7,B8};
const int LEDRojo [ ] = {R1,R2,R3,R4,R5,R6,R7,R8};  //se define arreglo 8 led centro de circulo

// Todos los led estan conectados a VCC y se encienden en Cero

void main (void)
{
  //0  Apagamos 24 Leds conectado a los puertos del Micro
 for (i = 0; i < rows; i++){ output_bit(LEDVerde[i], 1); 
                                         output_bit(LEDAzul [i],  1);
                                         output_bit(LEDRojo [i],  1);
                                        delay(100); }

  //1 Endendemos 24 Leds
 for (i = 0; i < rows; i++){ output_bit(LEDVerde[i], 0); 
                                         output_bit(LEDAzul [i],   0);
                                         output_bit(LEDRojo [i],  0);
                                        delay(100); }

}




[/youtube]
« Última modificación: 10 de Febrero de 2018, 15:28:50 por Byakuya »

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:Display POV 48 Led
« Respuesta #3 en: 10 de Febrero de 2018, 15:38:30 »
Y el programa jamas tuvo un loop infinito. Que micro es ?

Desconectado Byakuya

  • PIC10
  • *
  • Mensajes: 38
Re:Display POV 48 Led
« Respuesta #4 en: 10 de Febrero de 2018, 15:51:50 »
tema cerrado
« Última modificación: 17 de Febrero de 2018, 12:58:42 por Byakuya »

Desconectado Byakuya

  • PIC10
  • *
  • Mensajes: 38
Re:Display POV 48 Led
« Respuesta #5 en: 13 de Febrero de 2018, 23:18:24 »
tema cerrado
« Última modificación: 17 de Febrero de 2018, 12:58:26 por Byakuya »

Desconectado KILLERJC

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8242
Re:Display POV 48 Led
« Respuesta #6 en: 13 de Febrero de 2018, 23:55:33 »
Realmente no usaria Keil o IAR por que son pagos, me iria a una version gratuita. Y con STMCubemx mucho mas facil para empezar un proyecto desde la nada.

Por la forma que lo estas programando parece como si fuera el entorno arduino.