|
52
|
International / Español / Re: no puedo conectar Arduino a excel
|
on: November 27, 2012, 12:20:07 pm
|
|
La verdad que 500 ms es mucho tiempo para un delay si quieres tener algo a "tiempo real". Manejando directamente el puerto serie, yo creo que puedes conseguir muy buenos resultados. Minimiza esos delays.
Luego en excel, la forma de escribir en celdas es MUY importante. Lo mejor es ir guardando en un array e igualar el array a un rango. También no estar calculando todo el rato y actualizando (visualmente)....Todo esto en VBA. Busca por Application.Calculation, Application.ScreenUpdating, uso de rangos,.... Te puedo asegurar que estas cosillas importan y mucho si estas manejando gran cantidad de datos a la hora de hacerlas efectivas para Excel.
Te puedes crear unas funciones en VBA para pasar array a rangos y viceversa. Vas recibiendo datos, metiendolos a un array y cada cierto tiempo actualizas el rango, los cálculos, screenupdating,...
Saludos,
Igor R.
|
|
|
|
|
53
|
International / Español / Re: no puedo conectar Arduino a excel
|
on: November 26, 2012, 02:55:23 pm
|
|
Esto lo escribí hace ya bastante tiempo... No sé que versión de excel estarás utilizando. Creo que lo hice con Excel 2007. Mira que tengas el ActiveX referenciado en excel.
Saludos
Igor R.
|
|
|
|
|
56
|
International / Español / Re: pregunta mantener informacion en falla de energia????
|
on: November 08, 2012, 12:49:12 pm
|
No sé que tipo de programa tienes en mente, pero una idea puede ser hacerte una máquina de estados, ya que te resultaría relativamente sencillo volver donde estabas. Tendrías que ir guardando también todas las variables que quieras reponer al inicio. Ejemplo: Estado 1 => Led off y Estado 2=>Led On y la transición entre ellos es el estado de un pulsador. Tengo una variable llamada estado (byte) que indica en cual de los dos estados que estoy. Cada vez que cambio de estado, guardo en memoria no volátil dicha variable. Al inicio del programa, lo que haces es leer de memoria no volátil dicha variable, y ese será tu estado de inicio. El programa ejecuta las acciones que toque en cada estado, por lo que al iniciar irá al último estado guardado y seguirá su flujo normal. Incluso podrías tener un camino diferente si se ha ido la corriente, y hacer ciertas cosas que te interesen (ejemplo arranque suave de motores, etc). Esto ya es dependiendo de lo que estes haciendo.... Bueno, explicado rápidamente y algo sencillo. Eso si, necesitas tener un mecánismo que ante un corte, te de tiempo de guardar todos tus registros de control en memoria. http://arduino.cc/forum/index.php/topic,75826.0.htmlSaludos Igor R.
|
|
|
|
|