Go Down

Topic: CUADRO DE INSTRUMENTOS DE UN VEHICULO A DISPLAYS (Read 19153 times) previous topic - next topic

maxid

El que pregunta aprende, el que responde aprende a responder.

surbyte

#61
Nov 06, 2014, 10:43 pm Last Edit: Nov 06, 2014, 10:51 pm by surbyte
Proteus

a punto de poner processing y ver como cambia la cosa.
Bueno, decepción, esperaba que x processing le enviaras datos pero veo que lo haces directamente x vía física.
Deberé alterar la simulación, poner un DB9 Serial y hacer todo para que presente ahi.
Igual no soluciona el problema de los displays.

Mañana sigo, hoy tengo trabajo que entregar.

pincho41700

joser surbyte,
tanta complicacion tiene para simular los led, no sabia que fuese tan camplicado.

surbyte

Ninguna complicación. Solo que pensé que algo hacias con processing pero solo mostras lo que yo veo por los leds.
El problema de los leds es que sin dejo pines sin conectar hace cosas raras. nada mas. Le asigné conexiones a cada uno y ya se porta mejor. Estoy viendo.


surbyte

Pincho tenemos seguidores que reclaman que pasa con el proyecto, yo hice avances.
Solucionado displays. Ya andan bien.
Processing me defraudó pero funciona jajaja.
Modifiqué la rutina que lee los RPM, ahora cuando le ingreso una señal con el simulador la lee con gran precisión.

Esta es la rutina
Adjunta abajo

Se ingresa por pin2 y usa la interrupción externa y el timer como lo hace pincho.

Luego edito y pongo de donde la saque.

Los módulos LED de Proteus deben manejarse con cuidado.
No intenté usar LEDs 7seg simples a ver que pasa.

Pronto subo los cambios.

pincho41700

ya se que tenemos seguidores, con solo ver el numero de visitas ya es una alegria.

Estoi un poco callado porque estoi haciendo el menu, (que ya esta funcionando , pero no hay quien lo pare), y estoi en guerra con el arduiono, jajaj.

Te veo la rutina de RPM y debatimos.

surbyte

Jejeje tu rutinita querido NO FUNCIONA!!!
Al menos a mi en mi simulador.

Yo recibo NUMEROS GIGANTESCOS.
La mía es exacta. asi que ahora que la integre ya verás!! Como destrocé tu rutina ISR. Ya lo dije, la tomé de otro usuario.

pincho41700

COMOOOOOOOOOOOOO,
 
eso no puede ser, jajaj
en el circuito funciona muy bien , ya no se en el simulador, lo tuyo todavia no lo he probado , ya te dire.

He conseguido ya el menu que funcione bien, un poco bruto pero funciona. Te dejo el Menu

Code: [Select]


#define TIEMPOMAX 5000
#define TIEMPOMIN 400

boolean Boton;
boolean flagPulsado;
boolean flagSoltado;
boolean flagDiferencia;

unsigned long Pulsado;
unsigned long Soltado;
 long Diferencia;
 
int Km=123;
int Menu=0;

int estadoAnterior = 0;
int estadoActual;
int contador = 0;
const int pin=4;         // aquí el pin digital que se quiere leer

void setup() {
  // put your setup code here, to run once:
Serial.begin(9600);
pinMode(pin, INPUT);
Pulsado=0;
Soltado=0;
Diferencia=0;
flagPulsado=1;
}

void loop() {
  // put your main code here, to run repeatedly:
  estadoActual = digitalRead(pin);
  if (estadoAnterior != estadoActual)  // ha habido un cambio de estado
  {
    contador++;                          // cuenta los cambios de estado
    //Serial.println(contador);
    int validarPar = contador % 2;       // solo queremos los cambios pares
    if (validarPar != 1)                 // si el cambio es par
    {
      Boton=1;
    }
    else Boton=0;
   
    estadoAnterior = estadoActual;
  }
 
 
  ///////////////////////////////////////
 
  if(Boton==1 && flagPulsado==1){//cuando el boton se pulsa
    Pulsado=millis();
    flagPulsado=0;
    flagSoltado=1;
  }
 
  if(Boton==0 && flagSoltado==1){//cuando el boton se suelta
    Soltado=millis();
    flagSoltado=0;
    flagPulsado=1;
    flagDiferencia=1;
  } 
 
  Diferencia=Soltado-Pulsado;
 
  if(flagDiferencia){
    if(Diferencia<TIEMPOMIN )Menu++;
    if(Diferencia>TIEMPOMAX )Km=0;
    flagDiferencia=0;
 
  }
   
 
 
 
 
  Serial.print(Boton);
  Serial.print(" , ");
  Serial.print(Pulsado);
  Serial.print(" , ");
  Serial.print(Soltado);
  Serial.print(" , ");
  Serial.print(Diferencia);
  Serial.print(" , ");
  Serial.print(Km);
  Serial.print(" , ");
  Serial.println(Menu);
 
 
}





surbyte

De nuevo pincho... yo se que es TU PROYECTO, no el mío, pero comparte la idea de lo que vas a hacer antes de hacerlo.
El menú hará tal cosa.. necesito 3 submenúes asi o asá.

Bien. No importa.. ya te lo modificaré también jajajaja
Finalmente tendremos versión Pincho y versión Surbyte.

Go Up