Уроки Ардуино #3 - условный оператор if и оператор выбора

Поделиться
HTML-код
  • Опубликовано: 11 фев 2017
  • В этом уроке по программированию Ардуино я расскажу вам про условный оператор if и про оператор выбора switch.. case. Логические операторы критически важны для дальнейшей работы с платформой Arduino, вы увидите это в следующих уроках.
    ▼ Текстовая версия ▼
    alexgyver.ru/lessons/conditions/
    ▼ Огромный стартовый набор GyverKIT ▼
    kit.alexgyver.ru/
    ▼ Уроки Arduino на сайте ▼
    alexgyver.ru/lessons/
    ▼ Модули и датчики с Али ▼
    alexgyver.ru/arduino_shop/
    ▼ Страница "Заметок Ардуинщика" ▼
    alexgyver.ru/arduino_lessons/
    Теги: #arduino #уроки #ардуино #alexgyver
    ●●●●●●●●●●●●●●●●●●●●
    ► Основной канал: / alexgyvershow
    ► Поддержать автора alexgyver.ru/support_alex/
    ► Официальный сайт: alexgyver.ru/
    ► Почта: alex@alexgyver.ru
  • НаукаНаука

Комментарии • 424

  • @Titan777Games
    @Titan777Games 7 лет назад +156

    Спасибо, твой вклад в развитие будет неотъемлемым, человечество тебя не забудет.(не троллинг)

    • @yevgenzt4322
      @yevgenzt4322 7 лет назад +1

      тоже самое и про твой троллинг!!

    • @Titan777Games
      @Titan777Games 7 лет назад +14

      +yevgen Zt какой ещё тролинг?? Я всерьёз, очень понравился урок сам сижу и повторяю на своей ардуинке.

    • @un_meg
      @un_meg 4 года назад +1

      Вы Kave Gonson верно? Если то идите в apergure scince или когда выйдет portal 3

  • @user-gc9ml1eg3o
    @user-gc9ml1eg3o 3 года назад +3

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

  • @malinkapg-hg8759
    @malinkapg-hg8759 3 года назад +4

    Огромадная благодарность за отличные уроки !

  • @altermoon6215
    @altermoon6215 5 лет назад +49

    Узнал о программировании на С++ больше, чем из курса по С++

    • @superspinner2313
      @superspinner2313 5 лет назад +1

      Alter Moonsy ну как сказать C++ я программирую на java и там всё также!

    • @hdfroggit3051
      @hdfroggit3051 3 года назад

      @@superspinner2313 потому что джава C подобный

    • @artegoser
      @artegoser 3 года назад

      @@hdfroggit3051 все языки имеют почти одинаковую структуру и если ты понял хоть один язык то следующие учить почти не надо будет

  • @Dimon_Iz_KopoJIeBA
    @Dimon_Iz_KopoJIeBA 4 года назад

    Случайно давным-давно попал на основной канал, так - посматривал. Зашёл сегодня сюда - и вот он, далёкий 88 год, компьютер Электроника не помню какой и почти Basic в пояснениях ))) Славное дело делаете, Алексей! Успехов вам!

  • @konstantinushakov3895
    @konstantinushakov3895 3 года назад

    как же офигенно интересно, давно облизывался что бы начать и вот, всё офигенно понятно по крайней мере если хоть отдалённо есть представление о с++

  • @sergeyv7342
    @sergeyv7342 3 года назад

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

  • @bluesbiker5480
    @bluesbiker5480 7 лет назад +31

    Пожалуйста больше уроков, единственный канал с прекрасными объяснениями!

  • @WakeUp4L1fe
    @WakeUp4L1fe 7 лет назад +52

    Использовать boolean (bool) лучше со значениями true и false
    C++ приравнивает ноль к false а любое число к true
    К примеру:
    bool x = 2;
    if (x == 1) then {
    Serial.println("истина");
    } else {
    Serial.println("ложь");
    }
    // В порт выведется слово истина, хотя присваивали двойку
    Еще стоило указать возможность использования одновременно нескольких условий switch оператора:
    switch (val) {
    case 1:
    case 2:
    Serial.println("1 или 2");
    break;
    case 3:
    Serial.println("3");
    break;
    }

    • @ArduNotes
      @ArduNotes  7 лет назад +28

      +WakeUp4L1fe ого спасибо, это не знал. Допишу в пособие, все равно его почти все смотрят)

    • @user-oh8ji3gt5j
      @user-oh8ji3gt5j 7 лет назад +9

      понимаю что еще рано, но очень жду что кто-то внятно расскажет про все интерфейсы подключений. UART I2C SPI.

    • @vladi_g
      @vladi_g 7 лет назад +3

      Никакого смысла в типе boolean тут нет, один хрен он целый байт занимает. Проще запомнить, что всё что не равно нулю это true, а ноль это false.

  • @user-zf8kl6js8j
    @user-zf8kl6js8j 3 года назад

    Спасибо за полезный видос. Лайк!

  • @Ren4ik7
    @Ren4ik7 4 года назад +2

    Большое тебе спасибо все ясно и понятно

  • @dmitrynikitin2649
    @dmitrynikitin2649 4 года назад +1

    Круто, спасибо тебе Гувер

  • @user-ze7zt1jp7h
    @user-ze7zt1jp7h 7 лет назад

    Супер, очень нравится.

  • @yevheniibatiievskyi
    @yevheniibatiievskyi 2 года назад

    Друг скинул проект для светового фейер шоу в цирке на Ардуинке. Сижу разбираюсь.) Классные уроки. Спасибо тебе огромное за доступность.)

  • @Vitec_ru
    @Vitec_ru 7 лет назад

    Ждем новых видео с нетерпением, в переди большая работа)

  • @TeaFilka
    @TeaFilka 8 месяцев назад

    Спасибо, лчень рада тому, что любой сможет постичь ардуино через ваши уроки)

    • @igorpopov5584
      @igorpopov5584 7 месяцев назад

      🥵🥵🥵🥵🥵🥵🥵🥵

  • @forest8281
    @forest8281 7 лет назад +2

    Все круто и понятно!
    спасибо)

  • @elenapoplos9537
    @elenapoplos9537 3 года назад

    Спасибо за видео и советы

  • @user-il6yd1qz3m
    @user-il6yd1qz3m 3 года назад +6

    Вот тут уже сложнее. Каждую команду и каждое выражение пересматриваю по несколько раз, чтоб догнать о чем речь идет. Но пока мой мозг хоть с трудом, но справляется. Спасибо большое за уроки. может когдато научусь ардуинить)))

  • @sasha_darrrling
    @sasha_darrrling 4 месяца назад

    спасибо тебе, очень помог

  • @krit2live441
    @krit2live441 4 года назад +3

    Спасибо брат

  • @user-jn3jw7ot5q
    @user-jn3jw7ot5q 7 лет назад

    Как всегда круто и познавательно! спасибо!!!

  • @RoyVak_YT
    @RoyVak_YT 2 года назад +1

    Просто топ!!!

  • @vansis2486
    @vansis2486 7 лет назад +18

    спасибо за подробные объяснения!))

  • @olehdenysov8699
    @olehdenysov8699 7 лет назад +9

    Спасибо автору за хорошее объяснение!

  • @terarioni3658
    @terarioni3658 7 лет назад +74

    Прошу урока меню на OLED + Энкодер!
    Кто за?

  • @AlieXAndreX
    @AlieXAndreX 7 лет назад

    Алекс спасибо за очередной урок!

  • @maksimb4935
    @maksimb4935 3 года назад +1

    Здравствуйте ! Я обучаюсь по вашим видео, очень крутой контент . Спасибо тебе землянин ) !
    Подскажите, операторами if, else , else if возможно построить меню или только switch подходит ?

  • @user-sf4em7vw9y
    @user-sf4em7vw9y 7 лет назад

    Урок супер! Спасибо тебе! Все законспектировал, жду новые уроки

  • @tikserziku
    @tikserziku 7 лет назад

    Полезный урок. Спасибо.

  • @jabraibrag5893
    @jabraibrag5893 2 года назад

    всё понятно круто от меня подписка лайк комент и колокольчик

  • @samuraimind828
    @samuraimind828 3 года назад +1

    Спасибо Алекс.
    Учусь можно сказать на твоих уроках)
    Больше похоже на твою дипломную конечно.
    Хотелось бы углубленный курс, за вменяемый прайс)
    Удобней конспектировать по роликам в тюб, чем из книг, аля с кул преподом, ЛОЛ=)))

    • @ArduNotes
      @ArduNotes  3 года назад +3

      Моя дипломная - космический спутник зондирования земли) учу людей только на канале, есть уроки на сайте, лично ни с кем не занимаюсь

  • @dantedmc6532
    @dantedmc6532 5 лет назад

    Посмотрев несколько видео я понял что этот язык очень похож на java, я давно хотел изучить программирование на arduino и теперь я думаю мне будет легче освоить, так как я учу java и много чего уже знаю, очень жаль что вы не делаете уроки по программированию на java так как вы все расставляете по полочкам и все очень понятно, я для себя не могу найти понятных уроков для java, по этому я скачиваю библиотеки, проекты и пытаюсь разобраться как это работает но если что то совсем не понятно или нужно освоить какие то функции просто ищу в интернете, для меня это удобно по тому что я от начала и до конца изучаю код и запоминаю а так же добавляю какие то свои функции.

    • @programing_from_null
      @programing_from_null Год назад

      Мне лично кажется, что Ардуино схож по синтаксису и с C,C++,C#,Java. Сам учу C# и за исключением небольших отличий там все тоже самое.

  • @happyman070487
    @happyman070487 7 лет назад

    круто! спасибо большое! Даешь следующий урок!)))

  • @dr.grinspoon7506
    @dr.grinspoon7506 7 лет назад

    Спасибо, очень здорово. Жду про математические функции (в часности про constrain) иногда путаница в них возникает)

  • @rushka6457
    @rushka6457 4 года назад +6

    для новичка в програмировании осень сложно в книге изучаем ардуино: инстременты и методы технического волшебства всё также подробно но легче усваивается

  • @orion4124
    @orion4124 5 лет назад

    Привет прошу сделай урок про погружение ардуино в глубокий сон.

  • @chelovek22
    @chelovek22 7 лет назад

    Мой "палец вверх в вашей копилке". Спасибо за образование. У вас педагогический талант.

    • @ArduNotes
      @ArduNotes  7 лет назад +1

      +Олег Абдусаламов спасибо) здесь решающую роль играет сценарий, который тщательно прорабатывается

  • @leol7339
    @leol7339 7 лет назад

    Алекс, сделай пожалуйста обзор работы мультисерво шита на 20+ серв. Желательно на примере гесапода или, лучше, октапода.

  • @FriendlyTeam
    @FriendlyTeam 2 года назад

    if(serial.available()) {
    val = serial.parseInt()
    list = [1,2,3]
    if (list.includes(val)){
    Serial.println("Вы ввели ${val}")
    } else {
    Serial.println("Мимо")}
    }
    Правильнее будет писать так и работать это будет быстрее, не серчай если тут есть ошибки, привёл грубый пример на JS , но концепция я думаю понятна

  • @sega00709
    @sega00709 Год назад

    То самое ощущение, когда в 12-14 лет по наитию кодил в Pawn, пытаясь сделать годный сервер в SAMP, а теперь видишь всё это до боли знакомое, хоть сейчас садись делать умный дом…
    А Питона я так и не смог в универе освоить и понять…

  • @Emmet_Brown
    @Emmet_Brown 5 дней назад

    Все вслушиваюсь в музыку, знакомая, но не могу понять откуда. Приятная. Может из игры Bobby Carrot, но не факт

  • @rec5526
    @rec5526 5 лет назад

    В теории вроде бы, что то где то понятно, но не понятно)) так как еще незнаешь где это можно пременить. Когда то учился сайты собирать открывал в блокноте код хтмл сторонего сайта искал в нем джава скрипт или фрейм с русскими буквами или цифрами от div до /div заменял на свои. А здесь типо уравнений получается где не нужно весь код писать а кусочек условия... Интересная штука буду методом тыка изучать

  • @ravgim3954
    @ravgim3954 2 года назад +1

    Почему при использовании Serial.parseInt() после ввода цифры и нажатия Enter автоматом через 1-2 секунды вводится ноль?

  • @TheAntimim
    @TheAntimim 4 года назад +9

    3:02 "давайте получим данные спорта" ... в голове забурлили варианты того зачем могут быть нужны спортивные данные.

  • @superspinner2313
    @superspinner2313 5 лет назад

    Большое спасибо! Всё понятно

  • @SerjLabLive
    @SerjLabLive 4 года назад

    Добрый день, вопрос будет ли работать если использовать вот так вот переменную в принте через точку? if (val > 19) {
    Serial.println("Вы ввели ".val);
    else
    Serial.println("Мимо");
    }

  • @fpvgo2862
    @fpvgo2862 6 лет назад

    Какую программы ты используешь чтобы быстро переводить набранное на английском в русский. И какие кнопки ты нажимаешь для быстрого построения выражения и авто задания отступов. Знаешь ли какие нибудь фишечки синтаксического сахара у Arduino IDE?

  • @oleksiidmytriiev2450
    @oleksiidmytriiev2450 3 года назад +3

    Почему в мониторе при вводе например "1" пишет "вы ввели 1" и сразу же "мимо". Т.е. два ответа на 1 запрос...

    • @genatin12
      @genatin12 3 года назад +1

      тоже с этим столкнулся, щас понял, в мониторе порта нужно выбрать "нет конца строки"

    • @oleksiidmytriiev2450
      @oleksiidmytriiev2450 3 года назад

      @@genatin12 спс, попробую.

  • @heliumrussia6291
    @heliumrussia6291 4 года назад

  • @meiier
    @meiier Год назад +2

    Нужны практические примеры. Без примеров это сухая теория, которую трудно понять

  • @user-ls8pt5rw3v
    @user-ls8pt5rw3v 2 года назад +2

    Тот момент когда работаешь с JavaScript и смотришь в х2 скорости что бы не упустить что в С чего не знал.

  • @dimonozawr34
    @dimonozawr34 2 года назад

    if мы уже видели в ранних роликах)

  • @MarkMM84
    @MarkMM84 4 года назад

    Такой вопрос, как через If сравнивать состояние выхода?
    Пример: if (61

  • @guseinchavtarayev4870
    @guseinchavtarayev4870 6 лет назад

    привет!мне очень нравиться как обьясняешь но хотел бы тебя попрасить о помощи ,я хочу сделать что бы при нажатии на кнопку 1 или же на букву что бы загорался свето диод, как можно это сделать ?вот на видео мы указываем переменную и если она равно чему то,то будет выполнент код а как можно сделать что бы указал именно пин моде?вот допустим int val=pinMode(2,INPUT); и что бы тогда переменя понимала чтоя обрщаюсь именно к пин моду,,,можно сделать что то подобное ?извини за вопрос просто очень нужно мне

  • @yurnest1851
    @yurnest1851 7 лет назад

    Такой вопрос, как соединить 2 скетча? Один на то, чтобы включать светодиод и после выключать. Другой - мигание светодиода путём автоматического включения и выключения быз кнопки. В общем, чтобы через кнопку включать мигание, а после выключить?
    Премного благодарен.

  • @user-op2lc3gg4p
    @user-op2lc3gg4p 4 года назад +12

    проверял ваши примеры, всегда в ответе получаю на 2 ответа, на if и на else. может у меня неисправный ардуино. Пример Ваш переписал один к одному.

    • @Volka0071
      @Volka0071 4 года назад +19

      Ниже пишут, что в мониторе порта надо внизу в первой вкладке выбрать "Нет новой строки". У тебя похоже стоит "NL (Новая строка)". Мне помогло

    • @kroliki_i_korgi
      @kroliki_i_korgi 4 года назад

      @@Volka0071 мне тоже помогло! От души!

    • @_TaktiK_
      @_TaktiK_ 4 года назад

      открой фигурную скобку после if и закрой ее перед else тоже самое с else то что должно исполняться в фигурные скобки

    • @user-xz9dx3sw3f
      @user-xz9dx3sw3f 3 года назад

      Такая же проблема

    • @oddyschannel624
      @oddyschannel624 3 года назад

      @@Volka0071 огромное спасибо, помог!

  • @user-kq7ju4st6s
    @user-kq7ju4st6s 4 года назад

    Подскажите пожалуйста, как включить отображение нумерации строк кода?

  • @sergeitannenberg503
    @sergeitannenberg503 5 лет назад

    Привет Alex, вот вбил в голову себе вопрос, какая разница между if и while, по сути они одинаковые, выполняют то что в скобках при верном условии, но всетаки, что и в каких случаях лучше использовать

  • @marik5344
    @marik5344 7 лет назад

    Побольше выпусков и подробностей, с нетерпением жду, ты наверное единственный кого даже приятно слушать, и я бы хотел с тобою как-то связаться, я новичок в этой сфере, очень хочу осуществить проект умного дома, как раз строем дом, если будет возможность рассмотри программу "Blynk"

  • @yevgenzt4322
    @yevgenzt4322 7 лет назад

    норм все - можно пару уроков по вифи есп8266 и есп32 это как то уже сегодня - тренд на ИОТ, а ардуинка потихоньку отходит. хотя ардуино это основа - азы.

  • @dma-eb9zd
    @dma-eb9zd 5 лет назад

    В школе C# изучаем. Рад что пригодилось)))

  • @user-xc1bm9bz7f
    @user-xc1bm9bz7f Месяц назад

    Спасибо! Я написал 5 программу а это мая первая игра.
    void setup() {
    pinMode(2, OUTPUT);
    pinMode(3, OUTPUT);
    pinMode(4, OUTPUT);
    pinMode(A4, INPUT);
    pinMode(5, OUTPUT);
    pinMode(6, OUTPUT);
    pinMode(7, OUTPUT);
    }
    void loop() { { {
    digitalWrite(2,1);
    delay(1000);
    digitalWrite(2,0);
    digitalWrite(3,1);
    delay(1000);
    digitalWrite(3,0);
    digitalWrite(4,1);
    delay(1000);
    digitalWrite(4,0);
    }
    digitalWrite(5,1);
    analogRead(A4==1);
    digitalWrite(5,0);
    digitalWrite(6,1);
    delay(2000);
    digitalWrite(6,0);
    }
    if ((4,HIGH) && (5,HIGH)) {
    digitalWrite (7,HIGH);
    }
    }

  • @kedradissey9456
    @kedradissey9456 2 года назад +1

    Через if или switch всегда приходят два ответа. Если верное значение, пишет его и то что в default, если попадает значение в default, то он два раза прихоит. Куда копать?

  • @kirifan3850
    @kirifan3850 5 лет назад

    Блин как же приятно понимать о чем тут говорят ! Спасибо шарпику..

  • @kiri3913
    @kiri3913 3 года назад +1

    А как сделать так, чтобы после первого ответа "вы написали 2" (к примеру) ты о5 пишешь 2 и он отвечает уже другое, ну что-то вроде "вы опять ввели 2" ??

  • @vergotv3038
    @vergotv3038 7 лет назад +1

    круто

  • @maxwellhawk
    @maxwellhawk 6 лет назад

    Алекс есть вопрос о Serial.available. Я так понимаю обьем 64байта и Serial.available долна возвращать число. В общем я попытался его узнать, но каждый раз выбивало ошибку при загрузке на ардуино. Тогда я написал следующий код:
    if (Serial.available()) {
    Serial.print ("Ok");
    }else{
    Serial.print ("Not Ok");
    }
    Ответ был Not Ok. Хотя я ничего в память не грузил и кроме этого когда никаких переменных не вводилось. Может я что-то не так понял или не правильно код написал? Это мой первый день с ардуино, так что вот... Пока что не понятно почему Serial.available = 0

  • @golovolomiktv4184
    @golovolomiktv4184 3 года назад

    Эх мне бы такого учителя по физике

  • @superwaflia9833
    @superwaflia9833 6 лет назад

    А что тройного равно как в php нету? Для проверки на равенство и соотношения типов.

  • @sergeystal15
    @sergeystal15 7 лет назад

    ты лучший )

  • @irinairina3002
    @irinairina3002 4 года назад

    блин, просмотрела три раза момент, не понимая почему же правая более красивая? потом заметила надпись, что левая:) я аж напряглась

  • @paSKer007
    @paSKer007 3 года назад +1

    Кто подскажет, все сделал как на видео, но после ввода любого значения через полсекунды вводит пустое поле? с предыдущим уроком было также...

  • @demson.official
    @demson.official 3 года назад

    Покажи пожалуйста как написать програму на лампу настроения?

  • @kirillpetrakov3282
    @kirillpetrakov3282 7 лет назад +7

    Небольшое дополнение:
    в си и си++ любое число не равное 0 считается как истина, и только 0 - это ложь соответственно.
    Вообще, использование большого числа конструкций if не очень хорошо, если есть вариант обойтись без него, в частности, при проектировании того же меню. Согласен, использование конструкций if это первое, что скорее всего приходит в голову, при проектировании меню, но это далеко не лучшее решение.

    • @ArduNotes
      @ArduNotes  7 лет назад +5

      +Kirill Petrakov но я же сказал что свитч лучше подходит для этих целей. Правильно?

    • @kirillpetrakov3282
      @kirillpetrakov3282 7 лет назад

      в каких-то случаях конечно конструкция switch интереснее if, но что касается именно меню, то чтобы проектировать полноценное древовидное меню с практически неограниченной вложенностью нужно использовать структуры. Конечно, если нужно отслеживать 2 или 3 состояния программы это из пушки по воробьям, и можно действительно обойтись более тривиальными решениями нежели использование структур.
      Конструкции ветвления - это неотъемлемая часть программ, однако линейный ход программы проще воспринимается. Огромные каскады вложенных друг в друга if-ов очень сложно читать и отследить, что куда зачем и почему, что порой может запутать разработчика, я уже молчу про то как это воспринимается другим человеком, который смотрит на подобные вещи).

    • @ArduNotes
      @ArduNotes  7 лет назад

      структуры, это которые struct?

    • @SaryarqaProduction
      @SaryarqaProduction 6 лет назад

      The Daniil можешь дать вк?

  • @igorpodol5480
    @igorpodol5480 7 лет назад +6

    спасибо за подробное разжевывание материала ...
    я вообще в школе учил бейсик потом паскаль ...
    в си вот эти моменты мне немного были не понятны ..
    продолжайте пожалуйста с той же точностью передавать материал ...
    а будет урок по созданию например собственной библиотеки и ее написания
    для чего-нибуть экзотического !? :)

    • @ArduNotes
      @ArduNotes  7 лет назад +4

      +igor podol спасибо) написание библиотеки очень комплексная задача, поэтому урок про это будет одним из последних

    • @igorpodol5480
      @igorpodol5480 7 лет назад

      спасибо ..понятно ... возможно даже несколько уроков-циклов ...

    • @ZhenyaKa
      @ZhenyaKa 7 лет назад

      Разве есть принципиальная разница между паскалем, бейсиком, си в плане написания кода?
      операторы и команды просто обозначаются по-разному. Логика работы одинаковая же

    • @frtp3691
      @frtp3691 6 лет назад

      между "окой" и "фурой с прицепом" тоже нет принципиальной разницы.и там,и там-транспорт.однако переход с одного на другое-сложноват. сможете сходу накодить управление шаговиками и вывод на 7 сегментник на бейсике? :)

    • @user-bh9vi8fv9n
      @user-bh9vi8fv9n 5 лет назад

      Разве в паскале не джава?

  • @Basilews
    @Basilews 3 года назад

    Подскажите if можно вложить в if?

  • @dimazot2158
    @dimazot2158 6 лет назад

    просто СПАСИБО ЗА РАЗЖЕВАННУЮ ИНФОРМАЦИЮ

  • @user-wb8vh4wg8n
    @user-wb8vh4wg8n 7 лет назад +2

    круто! молодец! я первый!

  • @kostyayaskevich6920
    @kostyayaskevich6920 6 месяцев назад +1

    int val;
    void setup()
    {
    Serial.begin(9600);
    }
    void loop()
    {
    if ( Serial.available() )
    {
    val = Serial.parseInt();
    Serial.println(val);
    }
    }
    Ввожу в COM порте значение переменной. Значение отображается, затем в следующей строке появляется ноль. Почему ?

  • @vanes-xxx5819
    @vanes-xxx5819 7 лет назад

    Алекс доброго времени суток, хотел давно задать тебе один вопрос. Вот во всех своих поделка ты используешь ардуино, канал «заметки ардуинщика» открыл, но эту платформу часто ругают в интернете не считая ее серьезной для разработок. Скажи каково твое мнение на этот счет? Стоит ли всерьез заняться ардуиной ?

    • @ArduNotes
      @ArduNotes  7 лет назад +3

      +Иван Мормышев доброй ночи. Так пишут только суровые программисты, которые занимаются разработкой всяких хитровыебанных систем. Естественно с высоты своего опыта работы с мощными контроллерами они видят, что ардуино слабая и медленная платформа. Но для наших, бытовых целей ей просто нет равных. Плевать что упрощенный язык очень неэффективно использует ресурсы микроконтроллера. Зато он простой и удобный, как конструктор. Если ардуино вдруг станет мало, то переучиться на более мощную платформу будет немного проще чем с нуля. Но в то же время под управлением ардуино летают квадрокоптеры с gps.
      Лично я считаю всех этих людей зазнавшимися хейтерами, которые не могут поставить себя на место обычного человека, который хочет сделать своему любимому цветку в горшке систему автополива . И не хочет для этого учить ассемблер и часами залипать в даташиты.
      Мне порой очень хочется снять видео, где я буду просто бомбить по этому поводу и очень негативно высказываться в адрес людей, которые говорят что ардуино - ерунда. Но делать я этого, конечно, не буду

    • @vanes-xxx5819
      @vanes-xxx5819 7 лет назад

      Заметки Ардуинщика огромное спасибо за ответ, теперь мне есть над чем работать.

    • @user-ih4me7wb5q
      @user-ih4me7wb5q 7 лет назад

      Иван Мормышев
      Скажу больше, у меня на предприятии работает сеть телеметрии на ардуино! дёшево и сердито!

  • @alexeibelousov3279
    @alexeibelousov3279 7 лет назад +3

    Небольшое добавление по условиям. Существует и укороченная запись условий (a > b) ? c == true : c==false; Если А больше B то С равно истина, иначе С равно ложь..Так же имеет место запись присваивания переменной значения результата сравнения: c == (a > b);

    • @ArduNotes
      @ArduNotes  7 лет назад +1

      +Alexei Belousov спасибо, добавлю в пособие

    • @vladislavmirkos4050
      @vladislavmirkos4050 6 лет назад

      (a > b) ? c == true : c==false ! Это называется тернарный оператор

    • @alk2345
      @alk2345 5 лет назад

      опять же как и с кейсом, если у тебя идет условия, вложенные в условия, то: -что свитч кейс не читабелен; -что ()?: не читабельно...

  • @user-cp7ld6dq8x
    @user-cp7ld6dq8x 3 года назад +2

    Таймкод 3:35 что нужно сделать, чтобы при повторном вводе 1 или 5, в порте не отображалась повторно надпись "Вы ввели 1 или 5" ? Чтобы внезависимости от того чтобы ты не нажимал, высвечивались по очереди фразы верно/мимо ?

    • @dancing_master
      @dancing_master 3 года назад

      String mess = "верно";
      void setup(){
      Serial.begin(9600);
      }
      void loop() {
      String worD = "";
      while (Serial.available() > 0){
      delay(2);
      worD += String(char(Serial.read()));}
      if (not(worD == "")){
      Serial.print(worD +' ');
      Serial.println(mess);
      if (mess == "верно"){
      mess = "мимо";
      }else{
      mess = "верно";
      }
      }
      }

    • @user-cp7ld6dq8x
      @user-cp7ld6dq8x 3 года назад

      @@dancing_master поздно)

    • @dancing_master
      @dancing_master 3 года назад

      @@user-cp7ld6dq8x , а почему не так : -поздно коллега))ахахаха)
      Ладно це жарт! На цілий місяць відстаю від Вас ,буду продовжувать навчання.

  • @user-dy2ys2rn7e
    @user-dy2ys2rn7e 3 года назад +2

    Привет! Спасибо тебе за замечательный курс, очень доходчиво все объясняется! Есть вопрос - Начал учиться на плате RobotoDyn Uno v3 возможно плата неисправна и не верно интерпретирует код. В окне com порта после ввода цифры 1, или 5 (выполняется условие if), но следом сразу же выполняется команда else, т.е. в порте сначала появляется текст "Вы ввели число 1 или 5
    ", а через секунду появляется "Мимо!"
    Вот мой код:
    byte val;
    void setup() {
    Serial.begin(9600); //Вывод на монитор порта
    }
    void loop() {
    if (Serial.available()) {
    val = Serial.parseInt();
    if (val == 1 || val == 5) {
    Serial.println ("Вы ввели число 1 или 5");
    } else {
    Serial.println ("Мимо!");
    }
    }
    }

    • @randomguyjustpassingby
      @randomguyjustpassingby 3 года назад

      У меня абсолютно такая же проблема, нашлось решение?

    • @user-gt6on4ym2z
      @user-gt6on4ym2z 3 года назад

      @@randomguyjustpassingby зае***ли почитайте комментарии к видео - найдёте ответ - главное 2-3 ответа , а вопрос один и тот же задали уже раз 50 наверное!

    • @randomguyjustpassingby
      @randomguyjustpassingby 3 года назад

      @@user-gt6on4ym2z именно так и сделал и нашёл ответ, проблема решена. А если вам было не лень залезать сюда и жаловаться на это, то проблема уже ваша

  • @DzuAbu
    @DzuAbu 5 лет назад +1

    Приветствую! Делаю первые шаги по Вашим урокам. Сегодня, повторяя урок, не могу найти в чём у меня ошибка. А именно при использовании val, у меня выскакивает обе строки, сперва -Вы ввели 1 или 5 , а потом -Мимо или наоборот. Перепроверил несколько раз, переписал заново. Результат прежний. Подскажите, в чём причина?

    • @pozdnishev88
      @pozdnishev88 4 года назад +1

      В мониторе порта (COM,) в самом низу окна, выбери "Нет конца строки"

  • @decotto
    @decotto 10 месяцев назад

    У меня вопрос, в видео есть строчка. val = Serial.parseint(); это как я понимаю объявление переменной, в уроке она так и работает но у меня пишет ошибку если я не установлю тип данных Пример : int val = Serial.parseint(); почему так? И еще у меня в Com порте сразу после вывода ответа появляется в следующей строке появляеться надпись мимо даже если я указываю значение в нужном диапазоне. Как её убрать?

  • @user-jm9jq7yj4k
    @user-jm9jq7yj4k 4 года назад +4

    Почему лайки пропадают? Я зашёл сегодня- его нет. Еще зашёл. И опять лайк пропал!

  • @user-vn3xq5rz4m
    @user-vn3xq5rz4m 3 года назад

    Добрый день! А как исправить проблемы с кодировкой? У меня вместо сообщений "Вы ввели 1 или 5" и "Мимо!" вылазиют иероглифы.

  • @Sergei_DIY
    @Sergei_DIY 3 года назад

    ))) Бэйсик вспомнил

  • @odintsov83
    @odintsov83 3 года назад

    А платы по ссылке ещё и спаивать надо???

  • @arakeldesign
    @arakeldesign 7 лет назад +1

    Какая операция обрабатывается быстрее if или switch ? У меня в коде переменная А равна число от 0 до 9, и в зависимости от переменной выполняется определенная операция. Выполнено с оператором if и else if. Так как код выполняет динамическую индикацию на семисегментром дисплее, мне интересен, если использовать структуру switch/case, получится увеличить скорость динамической индикации или нет?

    • @user-bh9vi8fv9n
      @user-bh9vi8fv9n 5 лет назад

      Какая разница? Это ведь не одно и тоже!

  • @SmartEnot
    @SmartEnot Год назад

    Что делать если не отображаются цифры в КОМ порте как у тебя? Вводишь в строке цифру и ноль эмоций? Версия IDE 2.0.3

  • @valeriy_tikhonov
    @valeriy_tikhonov Год назад +1

    Доброго времени суток! У меня возвращается 2 раза "Мимо!". И даже после "Вы ввели 1 или 5". При получении цифр тоже были лишняя цифра "10"

    • @atom7189
      @atom7189 11 месяцев назад

      В мониторе COM порта поставьте "Нет конца строки".

  • @DmitryPatrushev-wd5fq
    @DmitryPatrushev-wd5fq 7 лет назад

    Напиши про nRF24l01 еще! В плюсах ты писал, что есть функции достукивая до приемника и тд и тп, как это все реализуется?

    • @ArduNotes
      @ArduNotes  7 лет назад

      +Дмитрий Патрушев там в настройках все прописано уже) считай в моих скетчах по умолчанию достукивание стоиь

    • @DmitryPatrushev-wd5fq
      @DmitryPatrushev-wd5fq 7 лет назад

      Беру твой скетч из примера - работает. Переписываю под свои данные - не работает. Так и не смог достукивание пока написать. Он уже на стадии if(radio.write(&data, sizeof(data))) {} некорректно работает: устройство, которые принимает, успешно принимает данные и выводит на экран, значит они были отправлены, но условие не срабатывает

    • @DmitryPatrushev-wd5fq
      @DmitryPatrushev-wd5fq 7 лет назад

      Если интересно, radio.write() возвращает первые 3 раза единицу, а потом ноль. Адрес переписывал в разных вариантах, но баг присутствует до сих пор.

  • @madtweetdiy6308
    @madtweetdiy6308 7 лет назад +1

    Я 2

  • @serggorelii7897
    @serggorelii7897 7 лет назад

    Чувак,запили видос про меню!Хотя бы простенький пример,с 2-3 кнопками и lcd дисплеем!

    • @ArduNotes
      @ArduNotes  7 лет назад +1

      +Serg Gorelii после цикла уроков

    • @serggorelii7897
      @serggorelii7897 7 лет назад

      Круто!Спасибо)))

    • @CondorMGN74
      @CondorMGN74 7 лет назад

      С сенсорным TFT дисплеем тоже было бы интересно посмотреть, например, построение многоуровневого меню.

    • @yevgenzt4322
      @yevgenzt4322 7 лет назад

      еще и на веб морде - почему не назвать урок - как запилить пару кнопок на вебморде да еще и с MQTT))?????

    • @nachalo....
      @nachalo.... 4 года назад

      @@ArduNotes и прошло 3 года 🤣😆

  • @BloxepVan
    @BloxepVan 5 лет назад +1

    Здоров, набираю согласно твоему коду на if или switch не важно и у меня после каждого действия обязательно выполняется команда если, не важно верно не верно введено значение в порт, все равно выводит если. допустим вводишь "1", он говорит да верно "ввели 1" и затем сразу пишет "неверно" не пойму прикола

    • @dmytro1234
      @dmytro1234 5 лет назад +1

      То же такая проблема!

  • @user-qp3xm6yc8l
    @user-qp3xm6yc8l 6 лет назад

    Размер скетча в двоичном коде 2 560 байт (из14 336 байт максимум) это то что внизу после кампеляцыи скетч правельный

  • @dunmerstudio9112
    @dunmerstudio9112 Год назад +1

    у меня почему то сом порт выдает 2 записи последовательно. еще когда с прошлым видео с числами игрался выдавало число, а потом еще какое то число, то отрицательное, то 0. а сейчас при посыле 1 или 5, сперва выдает первую строчку, потом мимо. при посыле другого числа, два "мимо" один за другим.

  • @user-bq5si2sj6i
    @user-bq5si2sj6i 7 лет назад

    Не поможешь с скетчем на 2 контактное реле?
    Проблема в том что перед выключением первого реле за пару секунд с начало включается второе вере а потом лишь выключается первое.
    Что в скетче не так? или это железо?
    int R2 = 7;
    int R1 = 8;
    void setup() {
    // put your setup code here, to run once:
    pinMode(R1, OUTPUT);
    pinMode(R2, OUTPUT);
    }
    void loop() {
    // put your main code here, to run repeatedly:
    digitalWrite(R1,1);
    delay(1000);
    digitalWrite(R1,0);
    delay(1000);
    digitalWrite(R2,1);
    delay(1000);
    digitalWrite(R2,0);
    delay(1000);
    }