Código Afinador
Código Afinador
Código Afinador
int Nivelant=0;
int Conteo=0;
int Tiempo;
int Tiempoini;
int Tiempoant;
int Periodo=0;
int Frecuenciaprom=0;
int Sumperiodos=0;
int c = 0;
int tiempo_ini;
int tiempo1;
int Dato=0;
void Display();
int Calc_Periodo();
int frecuenciaprom();
int Frecuencias[100];
void setup() {
}
void loop() {
Calc_Periodo();
//Periodo=2300;
//frecuenciaprom(Periodo);
if (Conteo<100){
Frecuencias[Conteo] = Periodo;
Display(1000/Periodo);
else{
if (c<=100){
Dato = c*100+Frecuencias[c];
Display(Dato);
// delay (500);
// c ++;
if (c == 0){
tiempo_ini = millis();
c++;
tiempo1 = millis();
tiempo_ini = tiempo1;
c++;
else{
Conteo = 0;
c = 0;
Periodo = Sumperiodos/100;
//Sumperiodos = 0;
int Calc_Periodo(){
int voltaje_HallSens;
//voltaje_HallSens = analogRead(HallSens_pin);
// Nivel = 0;
//}
//else {
// Nivel = 1;
Nivel = digitalRead(43);
if (Nivelant != Nivel){
if (Conteo == 1){
Tiempo = millis();
Conteo ++;
Tiempoant = Tiempo;
Nivelant = Nivel;
return Conteo;
return Periodo;
/*----------------DISPLAY----------*/
current = millis();
else {
if (number == 0){
digit[0] = tbl[0];
digit[1] = tbl[0];
digit[2] = tbl[0];
digit[3] = tbl[0];
n%= 4;
PORTC = digit[n];
PORTB = VECT_C[n];
n++;
} /* Display */
/*---------------frecuencia promedio------------*/
int c=0;
int tiempo_ini;
int tiempo1;
int tiempo2;
if (Conteo<100){
Frecuencias[Conteo] = p;
else{
if (c<=100){
Display(Frecuencias[c]);
tiempo1 = millis();
tiempo_ini = tiempo1;
tiempo_ini = tiempo1;
c++;
else {
Conteo = 0;
c= 0;
//Frecuenciaprom = 1000/(Sumperiodos/100);
Conteo = 0;
return Frecuenciaprom;