Autor Tema: sincronizacion de varios modulos  (Leído 1772 veces)

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

Desconectado harrisón

  • PIC10
  • *
  • Mensajes: 12
sincronizacion de varios modulos
« en: 29 de Abril de 2016, 08:34:49 »
Hola, busque mucho por temas referente al ds1307 pero no acabo de encontrar lo que necesito, tampoco tengo que tirar de este chip. Resulta que quiero sincronizar varios modulos que controlan figuras de luces, tienen que encenderse todos al mismo tiempo e irse apagando para ir creando la figura todas iguales, el tema es que se sincronicen inalambricamente para no tener que tirar cable de figura en figura ya que van a estar por calles y separadas, entonces lo que pense es poner un reloj real para ir contando los segundos y hacer un reset a al modulo para que vuelva empezar el ciclo, es decir, si una figura dura 10s en completar el ciclo pues hacer un reset, entonces la pregunta es, como puedo sacar los pulsos de cada segundo del ds1307 y creo que va a ser dificil poner todos los modulos esactamente igual, que no varien ningun segundo... que se os ocurre para esto, los tutoriales que veo es para ponerlo en hora y despues leer la hora con un display pero yo no quiero meter lcd ni nada, solo queria tener el ds en hora y que me de pulsos de segundero... como lo veis?

Saludos.

Desconectado stk500

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4917
Re:sincronizacion de varios modulos
« Respuesta #1 en: 29 de Abril de 2016, 09:57:39 »
Hola  Harrison,

Ya leiste este temas http://www.todopic.com.ar/foros/index.php?topic=26934.0
porque te podria Guiar el codigo que esta puesto alli , eso modificarlo para tu uso ya que se trata de una Alarma con DS1307.


Saludos

Desconectado harrisón

  • PIC10
  • *
  • Mensajes: 12
Re:sincronizacion de varios modulos
« Respuesta #2 en: 29 de Abril de 2016, 12:33:29 »
Lo leí por encima, voy a mirarlo con más calma pero no me convence mucho... me estoy planteando comprar relojes digitales de estos baratitos, los pongo a hora y quito una señal del interior para hacer reset, porque si tengo poner otro pic para controlar el ds1307 ya me parece bastante, pensaba que el ds una vez programado iba a dar pulsos en forma de segundero, entonces ya estaba, no necesitaba display ni nada...

Desconectado Stban

  • PIC12
  • **
  • Mensajes: 78
Re:sincronizacion de varios modulos
« Respuesta #3 en: 29 de Abril de 2016, 14:37:39 »
Hola a todos,

aportando algo sobre el DS1307, tiene un pin que puedes usar para tu proyecto y lo puedes programas para que te mande pulsos cada segundo, es el SQW/OUT. Lo ajustas en la direción 7, poniendo $10

Saludos...

Desconectado harrisón

  • PIC10
  • *
  • Mensajes: 12
Re:sincronizacion de varios modulos
« Respuesta #4 en: 02 de Mayo de 2016, 07:26:43 »
Ah, pues estupendo  :mrgreen: ahora el problema es programarlo,  :? yo le cargue a traves de arduino uno un programa que vi en un tutorial, me recomendais alguno para cargarle? y donde aparezca la direccion 7 que dice steban porque así a primeras no me entero, yo suelo programar con flowcode. a ver si me podeis echar una mano, gracias  :)

Desconectado Stban

  • PIC12
  • **
  • Mensajes: 78
Re:sincronizacion de varios modulos
« Respuesta #5 en: 02 de Mayo de 2016, 20:21:00 »
Hola Harrisón,

en realidad no es complicado, yo uso PicBasic PRO y Proton IDE, y en estos compiladores es muy sencillo usando el comando I2Cout Dpin, Cpin, Control, { Address }, [ OutputData ] en Proton puedes escribir el dato; por ejemplo:

Device = 16F819 
Xtal = 4
All_Digital= TRUE

Symbol SDA = PORTA.0
Symbol SCL = PORTA.1
 
Dim seco As Byte ;definir tamaño de variable segundos 1 a 255
Dim minu As Byte ;variable para los minutos
Dim hour As Byte ;variable para las horas
Dim dayW As Byte ;variable día de la semana
Dim dayM As Byte ;variable día fecha del mes
Dim month As Byte ;variable mes
Dim year As Byte ;variable año de 2 dígitos
Dim ctrl As Byte ;variable para control

grabarRTC:
seco = $00 ;setear 00 segundos
minu = $30 ;setear 30 minutos
hour = $13 ;setear las 13 horas
dayW = $2  ;setear día lunes, D=1, L=2, M=3, M=4, J=5, V=6, S=7
dayM = $22  ;setear día 27 del mes
month = $7  ;setear mes septiembre
year = $14  ;setear año 04
ctrl = $10 ;control %00010000 para encender el led conectado en SQW/OUT cada 1 seg.
I2Cout SDA, SCL, %11010000, 0, [seco, minu, hour, dayW, dayM, month, year, ctrl]
DelayMS 10 ;retardo para finalizar grabación

end

Como te das cuenta, empieza a escribir a partir de la dirección de memoria 0 hasta el 7, es deccir, el dato seco se escribe en 0, minu en 1 ... y ctrl en 7.

Aunque puedes escribir uno por uno:
I2Cout SDA, SCL, %11010000, 0, [seco]
I2Cout SDA, SCL, %11010000, 1, [minu]
I2Cout SDA, SCL, %11010000, 2, [hour]
I2Cout SDA, SCL, %11010000, 7, [ctrl]

Una disculpa pero no manejo Arduino y ni el compilador Flowcode, pero me imagino que hay una función o código que haga algo parecido...

Otro detalle es sobre la salida SQW/OUT es que es de colector abierto...

Saludos.

Desconectado harrisón

  • PIC10
  • *
  • Mensajes: 12
Re:sincronizacion de varios modulos
« Respuesta #6 en: 03 de Mayo de 2016, 13:55:33 »
Hola, gracias por la ayuda antes de nada :). Le estuve dando vueltas al asunto y no me acaba de convencer, va a ser muy dificil tener todos los ds1307 funcionando clavaos me refiero al segundo dado que voy a contar los segundos para completar el ciclo de la figura, porque al tener que programarle la hora va a ser chungo ponerlo igual y si tengo que poner display con todo lo que conlleva ya me sale más barato comprar un temporizador de estos de enchufe y buscar la manera de sacar una señal de ellos, o si no de un reloj digital tipo casio. otra opcion que se me ocurre es poner un receptor rf en cada modulo y con un mando hacer un reset cuando esten todos montados para que arranquen al mismo tiempo, no se, le estoy dando vueltas...


 

anything