elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Informática
| |-+  Electrónica
| | |-+  Arduino: Cronómetro
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Arduino: Cronómetro  (Leído 9,600 veces)
@synthesize
Wiki

Desconectado Desconectado

Mensajes: 640


Another Brick in the Wall


Ver Perfil WWW
Arduino: Cronómetro
« en: 31 Mayo 2010, 02:34 am »

Código
  1. int seg =0;
  2. int mix =0;
  3. int hor =0;
  4. int b;
  5.  
  6. void setup()
  7. {
  8.  Serial.begin(115200);
  9.  
  10.  hor =17;  // Actual
  11.  mix =58;
  12.  seg =45;
  13.  b=1000;
  14. }
  15.  
  16. void loop()
  17. {
  18.  
  19.  int a =millis();
  20.  
  21.  if (a==b)
  22.  {
  23.    b+=1000;
  24.    seg++;
  25.  
  26.  
  27.    if (seg==60)
  28.    {
  29.      seg =0;
  30.      mix++;
  31.    }
  32.  
  33.    if (mix==60)
  34.    {
  35.      mix =0;
  36.      hor++;
  37.    }
  38.  
  39.    if (hor==23)
  40.    {
  41.      hor =0;
  42.      mix =0;
  43.      seg =0;
  44.    }
  45.    Serial.flush();
  46.    mostrar(hor, mix, seg);
  47.  }
  48. }
  49.  
  50. void mostrar (int hox, int mixx, int sex)
  51. {
  52.  Serial.print(hox);
  53.  Serial.print(";");
  54.  Serial.print(mixx);
  55.  Serial.print(";");
  56.  Serial.print(sex);
  57.  Serial.print("\n");
  58. }

¿Alguien me ayuda a mejorarlo? XD


En línea

Silici0

Desconectado Desconectado

Mensajes: 217


Insider


Ver Perfil
Re: Arduino: Cronómetro
« Respuesta #1 en: 31 Mayo 2010, 02:54 am »

Que tal, por si te ayuda encontré un proyecto de cronómetro en:
http://sites.google.com/site/lsdiosarduino/Proyectos-Arduino/cronometro01

El usa la función millis() una segunda vez para ver el retardo del bucle y hacer una rectificación para hacerlo mas preciso.

Código:
  time2 = millis();            //comprueba el tiempo al final del loop
  time2=time2 - time1;       //calcula la diferencia
  if (time2 >=90 ){
    time2=50;
  }
  clock=90-time2;            //hace la rectificacion con delay
  delay(clock);
 
  printtime();                 //Imrpime el tiempo en el LCD


En línea

"Lo que posees acabará poseyéndote."
.
..:
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda: Arduino + java
Electrónica
carepapa 1 5,218 Último mensaje 29 Noviembre 2011, 03:59 am
por carepapa
arduino
.NET (C#, VB.NET, ASP)
kokokoko 0 2,800 Último mensaje 2 Marzo 2012, 15:51 pm
por kokokoko
Leonardo, llega a la familia Arduino
Noticias
wolfbcn 0 2,073 Último mensaje 25 Julio 2012, 21:30 pm
por wolfbcn
Iniciarme con arduino 'virtual'
Electrónica
lucaslopez0000 1 4,717 Último mensaje 4 Marzo 2013, 18:12 pm
por m0rf
Cronometro con arduino y 7 segmentos
Programación C/C++
HIDE_95 3 3,395 Último mensaje 17 Mayo 2017, 21:42 pm
por MAFUS
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines