Если оператор дает неправильные значения сигнала в Arduino из-за

Я пытаюсь передать сигнал на сервопривод от передатчика через Arduino DUE и написал такой код:

#include<Servo.h>

Servo servo1;

int ch1;


void setup() {
  // put your setup code here, to run once:

  pinMode(40,INPUT);
  pinMode(31,OUTPUT);
  servo1.attach(31);
  Serial.begin(9600);
  ch1 = 2000;
}

void loop() {
  // put your main code here, to run repeatedly:
ch1 = pulseIn(40,HIGH,25000);
 if (ch1 <= 2800 && ch1>= 1600)
 {

  Serial.print("Aileron:");
  Serial.println(ch1);

 }
   delay(100);
   }

Без оператора if я получаю значения в среднем 2200, если я вставлю, если значения оператора упадут до 1800. Я не понимаю, почему?

0 ответов

Другие вопросы по тегам