30.12.2018, 11:03 | #1 (permalink) |
Member
Регистрация: 22.04.2010
Сообщений: 320
Записей в дневнике: 3
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 363
|
Arduino: проблема с milis()
Код:
int ledPin = 11; unsigned long time; bool flag; int flash=10; void setup() { flag =false; ledPin = LOW; Serial.begin(9600); // Инициализируем общение c компьютером на скорости 9600 pinMode(ledPin, OUTPUT); } void loop() { long sensorValue1 = analogRead(A0);// Считываем значение с аналогового порта sensorValue1 = map(sensorValue1,0,1023,5990,119990);//Приводим значение к показателям от 5990 до 119990 int sensorValue2 = analogRead(A1);// Считываем значение с аналогового порта long sensorValue = sensorValue1 + sensorValue2; sensorValue=constrain(sensorValue,5990,119990);// Обрезаем лишки Serial.println(sensorValue);// Печатаем значение в мониторе порта if(digitalRead(ledPin) == LOW){ if(flag == false){ time=micros(); flag=true; } else{ if(micros()-time > sensorValue){ digitalWrite(ledPin, HIGH); flag = false; } } } else if (digitalRead(ledPin) == HIGH){ if(flag == false){ time=micros(); flag=true; } else{ if(micros()-time > 10){ digitalWrite(ledPin, LOW); flag=false; } } } } Код:
if(digitalRead(ledPin) == LOW){ if(flag == false){ time=micros(); flag=true; } else{ if(micros()-time > sensorValue){ digitalWrite(ledPin, HIGH); flag = false; } } } else if (digitalRead(ledPin) == HIGH){ if(flag == false){ time=micros(); flag=true; } else{ if(micros()-time > 10){ digitalWrite(ledPin, LOW); flag=false; } } Код:
if(digitalRead(ledPin) == LOW) Код:
if(flag == false) Код:
time=micros(); Код:
flag=true; Код:
if(micros()-time > sensorValue) Код:
digitalWrite(ledPin, HIGH); Так же построено если светодиод горит. На delay() всё работает. даже вот так Код:
if(digitalRead(ledPin) == LOW){ if(flag == false){ time=micros(); flag=true; } else{ if(micros()-time > sensorValue){ digitalWrite(ledPin, HIGH); flag = false; } } } else{ delayMicroseconds(10); digitalWrite(ledPin, LOW); |
30.12.2018, 11:03 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Просмотрите содержимое этих ссылок, может быть что то найдете Законченный проект на Arduino RGB Neopixel и Arduino Arduino |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|