Вот для датчика движения... Если в поле зрения датчика появляется движущийся объект - загорается светодиод на 13 порту. Код (Text): int ledPin = 13; // Светодиод на 13 порту int inPin = 3; // ИК Датчик движения void setup() { pinMode (ledPin, OUTPUT); pinMode (inPin, INPUT); } void loop() { if (digitalRead(inPin) ==HIGH) { digitalWrite(ledPin, HIGH); delay(250); digitalWrite (ledPin, LOW); } } И ультразвуковой дальномер... Программа подключает дальномер, и тправляет снимаемые показания через сериал (можете открыть сериал монитор и наблюдать=). И когда расстояние больше 50см - загорается светодиод на 13 порту.. Код (Text): int inputPin=4; // Echo int outputPin=5; // Trig int ledpin=13; void setup() { Serial.begin(9600); pinMode(ledpin,OUTPUT); pinMode(inputPin, INPUT); pinMode(outputPin, OUTPUT); } void loop() { digitalWrite(outputPin, LOW); delayMicroseconds(2); digitalWrite(outputPin, HIGH); delayMicroseconds(10); digitalWrite(outputPin, LOW); int distance = pulseIn(inputPin, HIGH); distance= distance/58; Serial.print(distance); Serial.print(" "); Serial.print("cm"); Serial.print(" "); delay(1000); if (distance >=50) { digitalWrite(ledpin,HIGH); } else digitalWrite(ledpin,LOW); } Жду спасибки=)
Только в первом примере: паузу забыли между: Код (Text): digitalWrite(ledPin, HIGH); digitalWrite (ledPin, LOW); Не успеете заметить.
ультразвуковой дальномер... Вроде работает нормально. Только периодически появляются отрицательные значения на serial и диод гаснет. При этом датчик не двигаю, смотрит на стену. Расстояние примерно 2,5м.