Показать сообщение отдельно
Старый 06.07.2016, 23:46   #30
xu56857
Московский модуль
 
Аватар для xu56857
 
Регистрация: 02.02.2015
Адрес: Москва
Сообщений: 942
Сказал(а) 'не согласен(а)'!: 9
Сказали 'не согласен'! 2 раз(а) в 2 сообщениях
Сказал(а) спасибо: 3,988
Поблагодарили 3,315 раз(а) в 638 сообщениях
Все 'Спасибо' этого пользователя. :
0 за это сообщение
0 Всего
Репутация: репутация неоспорима (3330)
По умолчанию

Цитата:
Сообщение от Alexmit Посмотреть сообщение
Хоть какой есть, добавьте в сообщение.
Вот, может кто нибудь , кто с ардуино на "ТЫ" подправит ))

Код:
//спидометр
#include "TM1637.h"
#define CLK 12// пин дисплея      
#define DIO 11// пин дисплея  
TM1637 disp(CLK,DIO);
unsigned long time;//время срабатывания первого датчика
unsigned long time1;//время срабатывания второго датчика
unsigned long T;// T=(time1-time)/1000  из милисекунд в секунды
unsigned long S1;
 int S;
void setup()
{
  disp.set(3);//яркость дисплея
  disp.init(D4056A);//D4056A is the type of the module
  pinMode(3, INPUT);//срабатывание датчика слева
  pinMode(4, INPUT);//срабатывание датчика справа
  pinMode(5, OUTPUT);//индикация срабатывания датчика слева
  pinMode(6, OUTPUT);//индикация срабатывания датчика справа
  pinMode(7, OUTPUT);//индикация "готов"
  
}

void loop()

{ 
  disp.display(0);
  
 { digitalWrite(7, HIGH);
   if (digitalRead(3) == LOW)  // условие на опрос левого датчика 3-й порт
   { time = millis();digitalWrite(5, HIGH);  digitalWrite(7, LOW);
     while (digitalRead(4) == HIGH)// счет времени пока не сработал правый датчик
    { }  time1 = millis();
    digitalWrite(6, HIGH); T=(time1-time); S1=31320/T; S=S1;
     disp.display(S);    delay(3000);}

  else if (digitalRead(4) == LOW)  // условие на опрос правого датчика 4-й порт
   { time = millis(); digitalWrite(6, HIGH); digitalWrite(7, LOW);
     while (digitalRead(3) == HIGH)// счет времени пока не сработал левый датчик
    { }  time1 = millis();
   digitalWrite(5, HIGH); T=(time1-time);  S1=31320/T;  S=S1;
   disp.display(S);   delay(3000);}
      }
   if (digitalRead(3) == HIGH && digitalRead(4) == HIGH)
{digitalWrite(7, HIGH);digitalWrite(5, LOW); digitalWrite(6, LOW);}
   else
     digitalWrite(7, LOW); 
 }
xu56857 на форуме  
Вверх
7 пользователя(ей) сказали cпасибо: