hola manito80 entra en esta pagina alli tienen ese pic, y muchas cosas mas, yo estoy trabajando en un pov voy bastante adelantado, ya puedo convertir imagenes o letras a radianes para que las imagenes y letras se vean perfectas..... al programa le falta pronto subire lo que he adelantado para que otros usuarios los usen, el programa calcula los 8 bit de cada imagen y los transforma a radianes, pero antes hay que ralizar un imagen en paint y guardarla en formato monocromatico, luego convertir la imagen a raw y de alli es que se procesa, la ideas es hacer todo en un solo programa, no he terminado ya que mi trabajo me consume tiempo y tampoco he podido buscar informacion de como medir el tiempo exacto de cuando se active el sensor para asi obtener el tiempo y encedido de los led si necesidad de programar los tiempo, la idea es que si el motor cambia de revolucion al imagen no se distorsione tanto y cambie el tiempo de encendido y apagado a la velocidad en que gire el motor...
estos es la parte de convertir las imagenes a codigos, vb 6
Private Sub Form_Load()
Dim angleincrement As Single
Dim anglecounter As Integer
Dim ringcounter As Integer
Dim ledspacing As Integer
Dim ledoffset As Integer
Dim imagesize As Integer
Dim origin As Integer
Dim x As Single
Dim y As Single
Dim fileoffset As Long
Dim pixel As String * 1
Dim outputstring As String
imagesize = 240 'tamaño de la imagen
angleincrement = 1.41176 '360 grados divididos entre 255 que seria la cantidad de leds en el radio
ledspacing = 5 'separacion entre leds [mm]
ledoffset = 0 'distancia entre el eje del motor y el 1er led,
angleincrement = angleincrement / 57.296 'convirte a radianes
origin = imagesize / 2 'divide la imagen entre 2, para tomar el centro de la imagen
Open "C:\willyfv.raw" For Binary As 1 'willyfv es la iamgen previamente convertida a formato raw
Open "C:\Users\willy\Desktop\C\willyfv.txt" For Output As 2 ' esta e sla direccion donde yo guarde el resultado, cambiarla a su gusto
' para mi diseño estoy usando 24 leds con una separacion de leds de 5 mm y la distancia del eje con el primer led e "0"
' ya que el primer led esta montando o centrado con el eje del motor
'los resultados que se obitienen bien sea puede usarse como registro de desplazamiento o en su defecto directamente al puerto del pic
' ejemplo:
' d= diodos led
' d24,d23,d22,d21,d20........d0 donde d0 es el primer diodo led que va desde abajo(eje) hasta arriba
' 01010101010101010101 como registro de desplazamiento(con cualquier pic)
' 01010101=29,01010101=29,0101=5
' usando un pic 16f877a puerto a= 29 puerto b= 29 y puerto c=5, puerto c(eje)....
' mejor usar asm ya que consume menos memoria que pic basic, yo trabajo en pic basic pero me di cuenta
' que asm es mejor para ahorrar espacio
For anglecounter = 0 To 254
outputstring = " "
For ringcounter = 24 To 1 Step -1
x = origin + (Sin(anglecounter * angleincrement) * ((ringcounter * ledspacing) + ledoffset))
y = origin + (Cos(anglecounter * angleincrement) * ((ringcounter * ledspacing) + ledoffset))
fileoffset = Int(x) + (imagesize * (imagesize - Int
))
Get #1, fileoffset, pixel
If Asc(pixel) = 0 Then
outputstring = outputstring + "1" & ","
Else
outputstring = outputstring + "0" & ","
End If
Next ringcounter
outputstring = outputstring
Print #2, outputstring
Next anglecounter
Close
End
End Sub
esto esat hecho en visual basic 6, no lo he probado en otro programa ya que tengo disponible vb 6 portable....
por ahora quiero ver como trabajar los tiempos y lo otro es enviar esos datos en forma serial y guardalos en una tabla sin necesidad de programa el pic cada vez que se quiera cambiar la imagen o textos a mostrar.....
se acepta todo tipo de ayuda..jajajaja
http://www.electronica.com.ve//vent...Csid=c74f73c6aa7111950f67584137611e77&x=0&y=0
toda la informacion y diseo para un 16f628a esta aqui,
http://www.ianpaterson.org/projects/spokepov20050704/index.htm