Всем доброго времени суток, написал скетч, который по идее должен принимать сигнал от осциллографа и выдавать в зависимости от того пришел ли импульс сигнал на выход. Например, если на входе периодический рект сигнал амплитудой 2В, на выходе такой же сигнал, но почему-то не 5В, а 150 мв. Тестил без флагов, там все как должно быть. Может кто сталкивался с таким
boolean camera_flag = LOW;
int imp;
void setup() {
// put your setup code here, to run once:
pinMode(8, OUTPUT);
pinMode(10, INPUT);
Serial.begin(9600);
}
void loop() {
imp = digitalRead(14);
if (imp == 1 && flag == LOW) {
flag = HIGH;
digitalWrite(8, HIGH);
}
if (imp == 0 && flag == HIGH) {
flag = LOW;
digitalWrite (8, LOW);
}
}
Каждый смотрю на такие исходники и думаю - отупел я что ли и уже совсем не понимаю, зачем тут эти флаги… Компилятор, наверное, уже из психушки работает удаленно.
Это как раз нормально: все пины по умолчанию конфигурируются на вход. Непонятно только, зачем он что-то делает с 10 пином.
А вот что ненормально, это не описанная переменная flag - код вообще не должен компилироваться.