Работа с кнопками. В помощь новичку.

mag155
Offline
Зарегистрирован: 21.12.2017

есть такой скетч один диод работает второй нет каким образом привязать второй диод ???

int led2Pin = 12;
int ledPin = 13; // Светодиод подключенный к вход/выходу 13
int inPin = 7; // кнопка на входе 7
int in2Pin = 8;
int val = 0; // переменная для хранения значения

void setup()
{
pinMode(in2Pin,INPUT);
pinMode(led2Pin, OUTPUT);
pinMode(ledPin, OUTPUT); // устанавливает режим работы - выход для 13го вход/выхода (pin)
pinMode(inPin, INPUT); // устанавливает режим работы - вход для 7го вход/выхода (pin)

}

void loop()
{
val = digitalRead(in2Pin);
val = digitalRead(inPin); // считываем значение с входа
digitalWrite(ledPin, val); // устанавливаем значение на светодиоде равным значению входа кнопки
digitalWrite(led2Pin, val);

}

vk007
Offline
Зарегистрирован: 16.06.2015

Блин, вам в этой теме медом помазано? Что вы все срете сюда? Больше негде вопросы задавать?

Заведи еще одну переменную val2 для второго канала и будет тебе счастье.

 

К адмиистрации. Может, их всех сюда, как мух к котлетам", манит "В помощь новичку" в названии темы? Может, переименовать тему в что-то хотя бы типа "Работа с кнопками для начинающих" или вообще выбросить упоминание о новичках?

vk007
Offline
Зарегистрирован: 16.06.2015

Я уже дал один из вариантов ответа на твой вопрос - в посте #1353 читай второй абзац. Думаешь, после

mag155 пишет:

морда зажравшаяся 

тебе кто-то захочет подробней объяснять? К людям обращаться научись сперва.

Но я сегодня почему-то добрый. У тебя сейчас в переменную val сначала считывается состояние входа in2Pin, а потом сразу в эту же переменную - состояние входа inPin. При этом получается так, что val уже "не помнит" состояние входа in2Pin, потому что в ней уже состояние входа inPin.

Поэтому, или для входа in2Pin следует завести еще одну переменную, например val2 (по аналогии с val) и для второго канала работать с ней. Или поменять строки местами  в таком порядке:

val = digitalRead(in2Pin);
digitalWrite(led2Pin, val);
val = digitalRead(inPin); // считываем значение с входа
digitalWrite(ledPin, val); // устанавливаем значение на светодиоде равным значению входа кнопки

Правильно вставлять код в свои сообщения тоже научись.

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

ВСЕМ НОВИЧКАМ

В этой теме нужно задавать конкретные вопросы ПО КНОПКАМ. Всё остальное: светодиоды, дисплеи, моторчики и т.д. - создавайте отдельную тему и там спрашивайте. Не нужно засирать тему про кнопки всем подряд.

P.S. mag155, у Вас не с кнопками проблема, а с базовыми знаниями по программированию. Начните с раздела "Программирование" в верху сайта. Посмотрите видеоуроки Джереми Блюма, почитайте его книжку. Потом приходите с вопросами.

eXecutioner
eXecutioner аватар
Offline
Зарегистрирован: 09.01.2018

Всем Доброго времени суток!

Возник вопрос. По кнопке, точнее быть две КНОПКИ. (ON-ON)

Суть программы такова что:

1 ардуино.

2 задачи. 2 кнопки (вкл-вкл)

расписать что то не получилось вот Картинка  xD      

строго не судите ))))

https://mega.nz/#!JYcw2KJD!Gr4nAp1Di9w4rbhkVDcfnrf08IQuC6cGiORCsTTsrFY

 

Помогите пожалуйста.

Заранее всем Большое спасибо!

qwone
qwone аватар
Offline
Зарегистрирован: 03.07.2016

eXecutioner . И не зачем три раза повторять. Народ и с одного раза разберется.Решить эту задачу легко. Но не для вас. Вам даже объянить решение не реально будет из=за отсутвия базовых знаний. Как выучите базовые знания , так мы сможем Вам объяснить.

eXecutioner
eXecutioner аватар
Offline
Зарегистрирован: 09.01.2018

за 3 раза извиняюсь глук был.

вот что то типо такого....

#include <OneWire.h>

#define pin 4
OneWire ibutton (pin); // Пин D11 для подлючения iButton (Data)
byte addr[8];
byte ReadID[8] = { 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x2F }; // "Универсальный" ключ. Прошивается последовательность 01:FF:FF:FF:FF:FF:FF:2F

const int buttonPin = 5;
const int buttonPin1 = 6;

const int ledPin = 7;
const int ledPin1 = 8;

const int greenLed = ledPin;
const int redLed = ledPin1;



int buttonState = 0;
int writeflag = 0;
int readflag = 0;
int val = 0;






void setup() {
  pinMode(ledPin, OUTPUT);
  pinMode(buttonPin, INPUT);
  
  pinMode(ledPin1, OUTPUT);
  pinMode(buttonPin1, INPUT);
  
  Serial.begin(115200);



  
}

void loop() 
{ 
    int regim=1; 
    int flag=0;
    int regimm=1;
     digitalWrite(ledPin1, HIGH);
     digitalWrite(ledPin, HIGH);
     if(digitalRead(6)==HIGH&&flag==0)
     { 
       regim++;   
       flag=1; 
         
        
          
        if(regim>1)
        { 
          regim==1;
        } 
       
     } 
       
        if(digitalRead(6)==LOW&&flag==1)
          { 
          
          flag=0;//обнуляем переменную "knopka" 
          } 

/////////////////////////////////
////////////////////////////////
///////////////////////////////
     if(digitalRead(5)==HIGH&&flag==0)
     { 
       regimm++;   
       flag=1; 
         
        
          
        if(regimm>1)
        { 
          regimm==1;
        } 
       
     } 
       
        if(digitalRead(5)==LOW&&flag==1)
          { 
          
          flag=0;//обнуляем переменную "knopka" 
          } 
     
     
      
   

/////////////////////////////////////       
    if(regimm==1)//первый режим 
    { 

    
      //  для зелёного цвета
      digitalWrite(greenLed, HIGH);
      delay(500);  
      digitalWrite(greenLed, LOW);   
      delay(500); 





        

    } 

///////////////////////////////////// 
/////////////////////////////////////       
    if(regim==1)//Второй режим 
{ 
  if (!ibutton.search (addr)){//read attached ibutton and asign value to buffer
    ibutton.reset_search();
    delay(200);
    return;
 }
 
  Serial.print(millis()/1000);
  Serial.print("> ");
  for (byte x = 0; x<8; x++){  
    Serial.print(addr[x],HEX); //print the buffer content in LSB. For MSB: for (int x = 8; x>0; x--) 
     Serial.print(" ");
  }
 
  //compute crc//
  byte crc;
  crc = ibutton.crc8(addr, 7);
  Serial.print("CRC: ");
  Serial.println(crc,HEX);
  if ( Serial.read() == 'w' ){
    ibutton.skip();ibutton.reset();ibutton.write(0x33);
    Serial.print("  ID before write:");
    for (byte x=0; x<8; x++){
      Serial.print(' ');
      Serial.print(ibutton.read(), HEX);
    }
    // send reset
    ibutton.skip();
    ibutton.reset();
    // send 0xD1
    ibutton.write(0xD1);
    // send logical 0
    digitalWrite(10, LOW); pinMode(10, OUTPUT); delayMicroseconds(60);
    pinMode(10, INPUT); digitalWrite(10, HIGH); delay(10);
    
    Serial.print('\n');
    Serial.print("  Writing iButton ID:\n    ");
    // Hardcode here your desired ID //
    // 01 D5 9F DC 02 00 00 96
    byte newID[8] = {0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF};
                     
    ibutton.skip();
    ibutton.reset();
    ibutton.write(0xD5);
    for (byte x = 0; x<8; x++){
      writeByte(newID[x]);
      Serial.print('*');
    }
    Serial.print('\n');
    ibutton.reset();
    // send 0xD1
    ibutton.write(0xD1);
    //send logical 1
    digitalWrite(10, LOW); pinMode(10, OUTPUT); delayMicroseconds(10);
    pinMode(10, INPUT); digitalWrite(10, HIGH); delay(10);

  }
} 

int writeByte(byte data){
  int data_bit;
  for(data_bit=0; data_bit<8; data_bit++){
    if (data & 1){
      digitalWrite(pin, LOW); pinMode(pin, OUTPUT);
      delayMicroseconds(60);
      pinMode(pin, INPUT); digitalWrite(pin, HIGH);
      delay(10);
    } else {
      digitalWrite(pin, LOW); pinMode(pin, OUTPUT);
      pinMode(pin, INPUT); digitalWrite(pin, HIGH);
      delay(10);
    }
    data = data >> 1;
  }
  return 0;
}   
}





Ошибка 

Key_master_v2_2regim_TEST_v1:164: error: 'writeByte' was not declared in this scope

       writeByte(newID[x]);

                         ^

Key_master_v2_2regim_TEST_v1:178: error: a function-definition is not allowed here before '{' token

 int writeByte(byte data){

                         ^

Key_master_v2_2regim_TEST_v1:195: error: expected '}' at end of input

 }

 ^

exit status 1
'writeByte' was not declared in this scope

 

НО без выбора вариантов работает...

#include <OneWire.h>

#define pin 4
OneWire ibutton (pin); // Пин D11 для подлючения iButton (Data)
byte addr[8];
byte ReadID[8] = { 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x2F }; // "Универсальный" ключ. Прошивается последовательность 01:FF:FF:FF:FF:FF:FF:2F

const int buttonPin = 5;
const int buttonPin1 = 6;

const int ledPin = 7;
const int ledPin1 = 8;

int buttonState = 0;
int writeflag = 0;
int readflag = 0;
int val = 0;

void setup() {
  pinMode(ledPin, OUTPUT);
  pinMode(buttonPin, INPUT);
  
  pinMode(ledPin1, OUTPUT);
  pinMode(buttonPin1, INPUT);
  
  Serial.begin(115200);
}

void loop() {

  buttonState = digitalRead(buttonPin);
  if (buttonState == HIGH) {
    readflag = 1;
    writeflag = 1;
    digitalWrite(ledPin, HIGH);
    val++;
    if (val > 6) val = 6;
    Serial.print(val);
    delay(500);
  }
  else {
    val = 0;
  }


  if (!ibutton.search (addr)) {
    ibutton.reset_search();
    delay(50);
    if (val <= 5) return;
    val = 0;
  }

  digitalWrite(ledPin, HIGH);
  delay(50);

  for (byte x = 0; x < 8; x++) {
    Serial.print(addr[x], HEX);
    if (readflag == 0) {
      ReadID[x] = (addr[x]);
    }
    Serial.print(":");
  }

  byte crc; // Проверка контрольной суммы
  crc = ibutton.crc8(addr, 7);
  Serial.print("CRC: ");
  Serial.println(crc, HEX);
  digitalWrite(ledPin, LOW);

  if ((writeflag == 1) or (Serial.read() == 'w')) {
    ibutton.skip(); ibutton.reset(); ibutton.write(0x33);
    Serial.print("  ID before write:");
    for (byte x = 0; x < 8; x++) {
      Serial.print(' ');
      Serial.print(ibutton.read(), HEX);
    }
    // send reset
    ibutton.skip();
    ibutton.reset();
    // send 0xD1
    ibutton.write(0xD1);
    // send logical 0
    digitalWrite(pin, LOW); pinMode(pin, OUTPUT); delayMicroseconds(60);
    pinMode(pin, INPUT); digitalWrite(pin, HIGH); delay(10);

    Serial.print('\n');
    Serial.print("  Writing iButton ID:\n    ");
    byte newID[8] = { (ReadID[0]), (ReadID[1]), (ReadID[2]), (ReadID[3]), (ReadID[4]), (ReadID[5]), (ReadID[6]), (ReadID[7]) };
    ibutton.skip();
    ibutton.reset();
    ibutton.write(0xD5);
    for (byte x = 0; x < 8; x++) {
      writeByte(newID[x]);
      Serial.print('*');
    }
    Serial.print('\n');
    ibutton.reset();
    // send 0xD1
    ibutton.write(0xD1);
    //send logical 1
    digitalWrite(pin, LOW); pinMode(pin, OUTPUT); delayMicroseconds(10);
    pinMode(pin, INPUT); digitalWrite(pin, HIGH); delay(10);
    writeflag = 0;
    readflag = 0;
    digitalWrite(ledPin, LOW);
  }
}

int writeByte(byte data) {
  int data_bit;
  for (data_bit = 0; data_bit < 8; data_bit++) {
    if (data & 1) {
      digitalWrite(pin, LOW); pinMode(pin, OUTPUT);
      delayMicroseconds(60);
      pinMode(pin, INPUT); digitalWrite(pin, HIGH);
      delay(10);
    } else {
      digitalWrite(pin, LOW); pinMode(pin, OUTPUT);
      pinMode(pin, INPUT); digitalWrite(pin, HIGH);
      delay(10);
    }
    data = data >> 1;
  }
  return 0;
}

 

qwone
qwone аватар
Offline
Зарегистрирован: 03.07.2016

eXecutioner . Ну могу тогда изучите эту тему.http://arduino.ru/forum/programmirovanie/klassy-arduino-po-qwone-dlya-chainikov.

Разумеется вам придется адаптировать работу задач под этот способ. Могу помочь. Но обратным инженерингом из вашего кода не смысла мне заниматься. Опять же откройте свою тему. Потому что меня с моими классами из этой темы гонят#305. Хотя подымитесь повыше в этой теме и можете немного почитать .#1310

eXecutioner
eXecutioner аватар
Offline
Зарегистрирован: 09.01.2018

спасибо большое.

Изучаю....)) 

 

eXecutioner
eXecutioner аватар
Offline
Зарегистрирован: 09.01.2018

qwone пишет:

eXecutioner . Ну могу тогда изучите эту тему.http://arduino.ru/forum/programmirovanie/klassy-arduino-po-qwone-dlya-chainikov.

Разумеется вам придется адаптировать работу задач под этот способ. Могу помочь. Но обратным инженерингом из вашего кода не смысла мне заниматься. Опять же откройте свою тему. Потому что меня с моими классами из этой темы гонят#305. Хотя подымитесь повыше в этой теме и можете немного почитать .#1310

 

Классно Спасибо. 

То что нужно )!!!

fedonkin
fedonkin аватар
Offline
Зарегистрирован: 18.09.2017

Всем ку! 

Есть две кнопки button1 и button2. Есть нагреватель, который через реле включается. Термистор считывает показания температуры и записывает в переменную sensetherm.

button1 - уменьшает температуру, а button2 - увеличивает температуру

Допустим температура на датчике (нагервателе) 25 грудусов, я с помощью кнопки button2 хочу поднять её до 50 с шагом 5 градусов.(т.е. одно нажатие +5 градусов)

Как мне это осуществить? Если есть пример с кодом, то будет просто великолепно :)

 

fedonkin
fedonkin аватар
Offline
Зарегистрирован: 18.09.2017

Сделал, спасибо)

Mobile_Repair
Offline
Зарегистрирован: 13.01.2018

Всем привет. Ребят поправте скетч, плиииз. В програмировании совсем нуб. Сильно не пинайте))

Вообщем есть тактовая кнопка, три светодиода, сервомотор и сообственно сама ардуино_уно.

Задача такова. При однократном нажатии на кнопку загарается первый светодиод (второй и третий не горят) и серва начинает движение на 90 градусов, потом задерживается в этом положении на 2 сек и обратно движется в исходное положение, движение сервы циклично - без остановки. 

При повторном нажатии первый светодиод выключается и загарается второй светодиод (третий тоже не горит). Серва двигается на 90 градусов, далее задержка в этом положении УЖЕ на 4 сек и обратно движется в исходное положение, движения сервы снова цикличны - без остановки. 

Ну и при третьем нажатии загарается третий светодиод (первые два не горят). Аналогичные движения тольео с задержкой в 6 секунд.

Использовал готовые скетчи из разных статей. Вообщем получилось только переключать режимы "включения" светодиодов. Но если в режим добавить команды управления сервы, переключение перестаёт работать. 

#include <Servo.h> // подключаем библиотеку для работы с сервоприводом
Servo servo; // объявляем переменную servo типа "servo"
int regim=1;
int flag=0;
void setup()  
{
servo.attach(12); //привязываем привод к порту 12
pinMode(10,OUTPUT);   
pinMode(9,OUTPUT); 
pinMode(8,OUTPUT); 
}
void loop()
{
if(digitalRead(14)==HIGH&&flag==0)//если кнопка нажата  
                                  // и перемення flag равна 0 , то ...
{
regim++;  
flag=1;  //это нужно для того что бы с каждым нажатием кнопки
         //происходило только одно действие
         // плюс защита от "дребезга"  100%
                
if(regim>4)//ограничим количество режимов
{
regim=1;//так как мы используем только одну кнопку,
        // то переключать режимы будем циклично        }
}
}
if(digitalRead(14)==LOW&&flag==1)//если кнопка НЕ нажата
                                 //и переменная flag равна - 1 ,то ...
{
flag=0;//обнуляем переменную "knopka"
}
 
if(regim==1)//первый режим
{
digitalWrite(10,LOW);//все светодиоды выключены
digitalWrite(9,LOW);
digitalWrite(8,LOW);
//здесь может быть любое ваше действие
}
if(regim==2)//второй режим
{
digitalWrite(10,HIGH);//включае красный светодиод
digitalWrite(9,LOW);
digitalWrite(8,LOW);
servo.write(0); //ставим вал под 0
delay(2000); //ждем 2 секунды
servo.write(90); //ставим вал под 90
delay(2000); //ждем 2 секунды
//здесь может быть любое ваше действие
}
if(regim==3)//третий режим
{
digitalWrite(10,LOW);
digitalWrite(9,HIGH);//включае синий светодиод
digitalWrite(8,LOW);
servo.write(0); //ставим вал под 0
delay(4000); //ждем 4 секунды
servo.write(90); //ставим вал под 90
delay(4000); //ждем 4 секунды
//здесь может быть любое ваше действие
}
if(regim==4)//четвертый режим
{
digitalWrite(10,LOW);
digitalWrite(9,LOW);
digitalWrite(8,HIGH);//включается зеленый светодиод
servo.write(0); //ставим вал под 0
delay(6000); //ждем 6 секунды
servo.write(90); //ставим вал под 90
delay(6000); //ждем 6 секунды
//здесь может быть любое ваше действ
}
}

Помогите, плииииз.

bwn
Offline
Зарегистрирован: 25.08.2014

Mobile_Repair пишет:

Помогите, плииииз.

Во первых 1354, далее "Вставка кода", далее "Серва", далее "Мигаем без делей", и на сладкое "Создание темы". И не благодарите.

Vintick
Offline
Зарегистрирован: 16.01.2018

Помогите начинающему! Хочу в код из первого поста добаить кнопку для обратного переклчения и не получается.Что я делаю не так ?

int regim = 1;
int flag = 0;

void setup()
{
  pinMode(A3, OUTPUT);
  pinMode(A4, OUTPUT);
  pinMode(A5, OUTPUT);

}

void loop()

{
 {
  if (digitalRead(7) == LOW && flag == 0) //если кнопка нажата
    // и перемення flag равна 0 , то ...
  {
    regim++;
    flag = 1;

    //это нужно для того что бы с каждым нажатием кнопки
    //происходило только одно действие
    // плюс защита от "дребезга"  100%
  }

  if (digitalRead(7) == HIGH && flag == 1) //если кнопка НЕ нажата
    //и переменная flag равна - 1 ,то ...
  {

    flag = 0; //обнуляем переменную "knopka"
  }

  if (regim > 6) //ограничим количество режимов
  {
    regim = 1; //так как мы используем только одну кнопку,
    // то переключать режимы будем циклично
  }
 }
 {
  if (digitalRead(6) == LOW && flag == 0) //если кнопка нажата
    // и перемення flag равна 0 , то ...
  {
    regim--;
    flag = 1;

    //это нужно для того что бы с каждым нажатием кнопки
    //происходило только одно действие
    // плюс защита от "дребезга"  100%
  }

  if (digitalRead(6) == HIGH && flag == 1) //если кнопка НЕ нажата
    //и переменная flag равна - 1 ,то ...
  {

    flag = 0; //обнуляем переменную "knopka"
  }


  if (regim < 1) //ограничим количество режимов
  {
    regim = 6; //так как мы используем только одну кнопку,
    // то переключать режимы будем циклично
  }
 }




  if (regim == 1) //первый режим
  {
    digitalWrite(A5, HIGH); //включае красный и зелёный светодиоды
    digitalWrite(A4, LOW);
    digitalWrite(A3, HIGH);

  }
  if (regim == 2) //второй режим
  {
    digitalWrite(A3, LOW); //выключаем все светодиоды
    digitalWrite(A5, LOW);
    digitalWrite(A4, LOW);

  }

  if (regim == 3) //третий режим
  {

    digitalWrite(A4, LOW); //включае зеленый светодиод
    digitalWrite(A5, LOW);
    digitalWrite(A3, HIGH);

  }

  if (regim == 4) //четвертый режим
  {

    digitalWrite(A4, HIGH); //включаем синий светодиод
    digitalWrite(A3, LOW);
    digitalWrite(A5, LOW);

  }

  if (regim == 5) //пятый режим
  {

    digitalWrite(A5, LOW); //включае зеленый и синий светодиоды
    digitalWrite(A3, HIGH);
    digitalWrite(A4, HIGH);

  }

  if (regim == 6) //шестой режим
  {

    digitalWrite(A5, HIGH); //включае красный светодиод
    digitalWrite(A4, LOW);
    digitalWrite(A3, LOW);

  }

}

 

Vintick
Offline
Зарегистрирован: 16.01.2018

Вопрос снимается. Просто для каждой кнопки надо было назначить свой флаг.

int regim = 1;
int flag_A = 0;
int flag_B = 0;

void setup()
{
  pinMode(A3, OUTPUT);
  pinMode(A4, OUTPUT);
  pinMode(A5, OUTPUT);

}

void loop()

{
 {
  if (digitalRead(7) == LOW && flag_A == 0) //если кнопка нажата
    // и перемення flag равна 0 , то ...
  {
    regim++;
    flag_A = 1;

    //это нужно для того что бы с каждым нажатием кнопки
    //происходило только одно действие
    // плюс защита от "дребезга"  100%
  }

  if (digitalRead(7) == HIGH && flag_A == 1) //если кнопка НЕ нажата
    //и переменная flag равна - 1 ,то ...
  {

    flag_A = 0; //обнуляем переменную "knopka"
  }

  if (regim > 6) //ограничим количество режимов
  {
    regim = 1; //так как мы используем только одну кнопку,
    // то переключать режимы будем циклично
  }
 }
 {
  if (digitalRead(6) == LOW && flag_B == 0) //если кнопка нажата
    // и перемення flag равна 0 , то ...
  {
    regim--;
    flag_B = 1;

    //это нужно для того что бы с каждым нажатием кнопки
    //происходило только одно действие
    // плюс защита от "дребезга"  100%
  }

  if (digitalRead(6) == HIGH && flag_B == 1) //если кнопка НЕ нажата
    //и переменная flag равна - 1 ,то ...
  {

    flag_B = 0; //обнуляем переменную "knopka"
  }


  if (regim < 1) //ограничим количество режимов
  {
    regim = 6; //так как мы используем только одну кнопку,
    // то переключать режимы будем циклично
  }
 }




  if (regim == 1) //первый режим
  {
    digitalWrite(A5, HIGH); //включае красный и зелёный светодиоды
    digitalWrite(A4, LOW);
    digitalWrite(A3, HIGH);

  }
  if (regim == 2) //второй режим
  {
    digitalWrite(A3, LOW); //выключаем все светодиоды
    digitalWrite(A5, LOW);
    digitalWrite(A4, LOW);

  }

  if (regim == 3) //третий режим
  {

    digitalWrite(A4, LOW); //включае зеленый светодиод
    digitalWrite(A5, LOW);
    digitalWrite(A3, HIGH);

  }

  if (regim == 4) //четвертый режим
  {

    digitalWrite(A4, HIGH); //включаем синий светодиод
    digitalWrite(A3, LOW);
    digitalWrite(A5, LOW);

  }

  if (regim == 5) //пятый режим
  {

    digitalWrite(A5, LOW); //включае зеленый и синий светодиоды
    digitalWrite(A3, HIGH);
    digitalWrite(A4, HIGH);

  }

  if (regim == 6) //шестой режим
  {

    digitalWrite(A5, HIGH); //включае красный светодиод
    digitalWrite(A4, LOW);
    digitalWrite(A3, LOW);

  }

}

 

vanechka_leb
Offline
Зарегистрирован: 18.01.2018

Помогите пожалуйста!!!! Есть условие, нажать и удерживать кнопку, потом через n-ое кол-во секунд её отпустить, и время, которое удерживалась кнопка, появилось в маниторе потов как некая константа, например x.

DetSimen
DetSimen аватар
Онлайн
Зарегистрирован: 25.01.2017

я тоже хочу себе манитор потов. Чтоб выводилась туда некая константа, чтоб рубашку менять вовремя.

vanechka_leb
Offline
Зарегистрирован: 18.01.2018

не к месту это было, если уж помочь не можешь, то мимо пройди........