Уроки Arduino #5 - работа с цифровыми портами и подключение кнопки

Sdílet
Vložit
  • čas přidán 26. 03. 2017
  • В этом уроке будем изучать работу с цифровыми портами Ардуино, научимся подавать и считывать цифровые сигналы при помощи функций digitalRead и digitalWrite, а также изучим режимы работы цифровых портов Ардуино. Основываясь на усвоенном материале, подключим к Arduino кнопку, и научимся считывать нажатия.
    ▼ Текстовая версия ▼
    alexgyver.ru/lessons/digital/
    ▼ Огромный стартовый набор 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
  • Věda a technologie

Komentáře • 468

  • @kiri3913
    @kiri3913 Před 3 lety +86

    я который затрахался искать нужный резистор, выпаивал его с платы...... а потом мне сказали про встроенный

  • @Igor_the_Uncle
    @Igor_the_Uncle Před 4 lety +139

    не думал, что когда-то буду так радоваться загорающемуся диоду на микросхеме

    • @user-rg7zv8fn1x
      @user-rg7zv8fn1x Před 4 lety +5

      ааааа я аж плакал когда прочитал +++++++++++++++++++++++

    • @Ixitor
      @Ixitor Před 4 lety +1

      @@user-rg7zv8fn1x ))))))))))))))))

    • @user-zx9sr8xc7e
      @user-zx9sr8xc7e Před 3 lety

      Добрый день! Сделайте пожалуйста видео как сделать сервотестер штобы углы отклонения сервомашинки можно было видеть на экране монитора.

    • @sergeygorshenin9321
      @sergeygorshenin9321 Před 3 lety +12

      Когда я первый раз запрограммировал моргание светодиода лет 20 назад, и он заморгал, я поумал, что это совпадение, и на этой ноге всегда все моргает и лишь изменив delay я понял что я повелитель моргания

  • @user-dg8rn1bk7w
    @user-dg8rn1bk7w Před 3 lety +122

    Что бы там ни говорили "серьёзные дядьки-программисты", осознание того, что светодиод загорелся потому, что это микроконтроллер выполнил, написанный тобой, программный код, доставляет огромную радость! Алекс, спасибо за твои уроки! Смотрю и учусь потихоньку, восторгаясь открытиями :)

    • @fokinDim
      @fokinDim Před rokem +2

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

    • @agilov
      @agilov Před rokem +14

      @@fokinDim но ведь программа, написанная на языке ассемблера, - это тоже скрипт для ассемблера. Вот если хочется писать "настоящий код", тогда уже машинными кодами в бинарном виде. Все остальное так - детские поделки всяких ассемблер скриптеров-недоучек. А если по существу, так все эти ваши ужимки на программируемом чипе - это неэффективно, программы надо паять прямо в железе nand-гейтами, тогда работать будет быстро. Это точно тру.

    • @fokinDim
      @fokinDim Před rokem +1

      @@agilov @agilov нет, ассемблер это не скрипт! это и есть машинный код определенного процессора/контроллера, просто в виде лучше читаемой мнемоники.
      например, эти записи совершенно тождественны. это одно и то же:
      org $A000
      ld a, FF
      call $1000
      A000: 3E
      A001: FF
      A002: CD
      A003: 00
      A004: 10
      A005:
      но я кажется понял, о чём вы: если вы выставляете кусок на асме (да хоть в 0x0000h кодах) среди скрипта в си-компиляторе приложений под операционные системы (!) и такой радостный думаете, что на этом куске процессор, для которого вы пишите реально откроет вам свои регистры, какие вы назначили, флаги, адресное пространство .. то хаха, скорее всего - нет.
      но это не отменяет факта, что ассемблер - это и есть машинный код.

    • @agilov
      @agilov Před rokem +4

      @@fokinDim все верно ассемблер это не скрипт, ассемблер это программа, которая читает скрипт написанный на языке ассемблера, интерпретирует его и на выходе выдает последовательность машинных комманд уже на чистом машинном языке. Если мне не верите - почитайте вот эту статью например: ru.wikipedia.org/wiki/Ассемблер. Прошу прощения, конечно, что срываю покровы и разрываю шаблоны, но файл с текстом на языке ассемблера это скрипт и с этим ничего не поделать, придется с этим жить.

    • @kruknimbalt2787
      @kruknimbalt2787 Před rokem +3

      @@fokinDim А вы - душите без особой на то причины

  • @user-lx7yj2gk8i
    @user-lx7yj2gk8i Před 3 lety +22

    спустя 2 дня и кучи нервов этот чертов светодиод начал загораться с кнопки!!!!! паск*уда)))))

  • @maks_parh
    @maks_parh Před 7 lety +7

    Где были эти уроки, когда я решился попробовать дуинки и писать скетчи... Без понимания простых вещей даже сайт с описанием команд не особо помогал. А теперь вот смотрю выпуски, имея маленькое понимание происходящего, да познаю новое) большое спасибо!

  • @5508_Astar
    @5508_Astar Před 2 lety +5

    Какой же ты молодец, фантастически качественный контент! Тысячу раз благодарю!

  • @dos6920
    @dos6920 Před 2 lety +2

    Спасибо! Благодоря этим уроком время от времени делаю всякие полезные штучки!

  • @user-gr7bb1oe6y
    @user-gr7bb1oe6y Před 5 lety +2

    Спасибо Гайвер сделал урок счастья до конца дня.

  • @user-pe9zx4sk7y
    @user-pe9zx4sk7y Před 2 lety +2

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

  • @user-os8gu6xf6i
    @user-os8gu6xf6i Před 7 lety +2

    Добротные уроки, спасибо!

  • @andrushkoandrushko
    @andrushkoandrushko Před 4 lety +7

    Автор, огромная благодарность тебе за твои уроки. Все понятно и приятно слушать. Обнял!

  • @user-kl8pn6ok4w
    @user-kl8pn6ok4w Před 2 lety +10

    Самое главное даже ребёнку в 12 лет все понятно. Я поражаюсь до них доходит быстрее, чем до некоторых взрослых. Классно приподносишь материал. Респект!

    • @user-wj1ze7mw9g
      @user-wj1ze7mw9g Před rokem +4

      какие умны дети мне 40 лет нихрена не понятно

    • @christinacath4816
      @christinacath4816 Před 6 měsíci

      Так детский мозг более пластичен и готов ко всему новому. Я помню в младших классах запоминала английские слова чуть ли не с первого раза, а сейчас так не могу, надо напрягаться немного.

  • @vitaliyhusti
    @vitaliyhusti Před rokem +1

    Огрооомнейшее спасибо, Алекс!

  • @user-hr4zi7li6i
    @user-hr4zi7li6i Před 7 lety

    Ураа! Новая серия! Божеж, ты можешь, прям счастье!

  • @UserNr1
    @UserNr1 Před 3 lety +1

    Алекс) спасибо за труды!

  • @user-hn9qe4ys2k
    @user-hn9qe4ys2k Před 7 lety +9

    спасибо за input_pullup а то я уже замучился с этими резисторами (много кнопок), теперь буду знать

  • @kuotuk
    @kuotuk Před 6 lety +1

    Спасибо за помощь) благодаря тебе все заработало)

  • @user-xk8ew6xf1r
    @user-xk8ew6xf1r Před 4 lety +4

    Спасибо за видео.
    Можно дополнить, что если включить между А5 и 5+ резистор (по примеру резистора между А5 и GND), то получим INPUT_PULLUP с внешним резистором (А5 "притянется" к 5+). То же самое произойдет со всеми остальными входами, они перестанут "дребезжать" и притянутся туда куда включат резистор.

  • @Golem-xy1iw
    @Golem-xy1iw Před rokem

    Спасибо, все очень понятно. Очень хорошо объяснил

  • @sergpecherskyi859
    @sergpecherskyi859 Před 4 lety +1

    Мужик, ты крутой, спасибо тебе!

  • @vitalibergen6096
    @vitalibergen6096 Před 4 lety +2

    спасибо за твои уроки трудновата но потихоньку вкуриваю

  • @PRO100KBAC
    @PRO100KBAC Před 7 lety

    ура! неужели видео!

  • @elenapoplos9537
    @elenapoplos9537 Před 3 lety

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

  • @user-fr5rz3gb9u
    @user-fr5rz3gb9u Před 7 lety

    Спс, я ждал этого урока

  • @user-mp8vr3ro3j
    @user-mp8vr3ro3j Před 3 lety

    Ты великий ардуинщик, желаю тебе удачи

  • @Titan777Games
    @Titan777Games Před 7 lety +8

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

  • @user-zf8kl6js8j
    @user-zf8kl6js8j Před 3 lety

    Лайк за зачётный видос!

  • @vicitacal11
    @vicitacal11 Před 7 lety +6

    Ну где ты был когда я мучился с кучей резисторов?? Оказывается можно так просто программно это всё сделать!

  • @user-od8ei6mx6l
    @user-od8ei6mx6l Před 4 měsíci

    Огромное спасибо!

  • @user-lr8ho4km4d
    @user-lr8ho4km4d Před 4 lety

    Алекс, ты МОЛОДЕЦ!!! У меня есть то набор, который ты показывал(или рекламировал))) и ещё дополнительно куча барахла к нему. Вот я в JavaScript - прошареный паца, а в c++ вообще 0. Половину того, что ты рассказываешь я знаю. Только немного отличается.

  • @user-bp5ft5ux8m
    @user-bp5ft5ux8m Před 6 lety +1

    Спасибо!!!!!!!!!!

  • @urigor9312
    @urigor9312 Před 7 lety +2

    Алекс, расскажи пожалуйста подробнее про интерфейс I2C. Как подключить к ардуино сразу несколько устройств по данному интерфейсу.

  • @backseatboys1538
    @backseatboys1538 Před 7 lety

    Начинаю понимать.

  • @vladimirgornyy5823
    @vladimirgornyy5823 Před 7 lety

    Отлично, как всегда на высоте

  • @georgijwlassow7430
    @georgijwlassow7430 Před 5 lety

    Спасибо.

  • @karoche-tv
    @karoche-tv Před 2 měsíci +1

    😅 отлично но здесь надо было добавить в описании подтягивающий резистор входу Ардуино. Но и так понятно. Но выходным ненужны ли стягивающие? Потому что они тоже могут давать наводки или нет? Потому что если один выход равно 1 а другой выход 0. То будут ли неверные показатели??😊

  • @TheYorick37
    @TheYorick37 Před 7 lety +87

    Жаль, редко уроки. Пока следующего ждёшь- предыдущий забудешь))

    • @ArduNotes
      @ArduNotes  Před 7 lety +16

      +Юрий Замятин очень время быстро летит. Вы сидите ждете, а я как будто вчера монтировал 4ый. Универ, мать его

    • @user-gc3ef3vw6n
      @user-gc3ef3vw6n Před 7 lety +3

      в армию пойдешь долг отдавать? тогда вообще долго ждать придется. а потом и вовсе забить можешь на канал.

    • @TheYorick37
      @TheYorick37 Před 7 lety

      Алекс, я понимаю, учёба- основное.

    • @ArduNotes
      @ArduNotes  Před 7 lety +2

      +Donald Trump нет, я лейтенантом выйду

    • @ArduNotes
      @ArduNotes  Před 7 lety +23

      +Юрий Замятин учеба не основное. Просто никто не любит получать пиздюлей и тройки

  • @amadofernandez3095
    @amadofernandez3095 Před 4 lety

    Ты красавчик

  • @AlexStraga
    @AlexStraga Před 7 lety

    Жаль с универом у тебя нет времени на уроки ) пока ждал уже сам разобрался с шаговиком, лсд и некоторыми другими штуками ) Но все равно то-то полезное, но узнаю. Благодарю )

  • @vnishukov
    @vnishukov Před 6 lety +17

    Алекс, спасибо за материал. Только по синтаксису хотел бы тебе на заметку сказать, что есть практики написания "читаемого" кода, в котрых рекомендуется, например, в обязательном порядке, ставить фигурные скобки для конструкций иф-элс, и прочее-прочее (есть дажее штуки типа tslint и типа того, которые подсвечивают "кривой" синтаксис в средах разработки).... В том числе различные принципы типа DRY и тому подобное. Думаю тебе, как человеку увлеченному, полезно будет ознакомиться, хотя бы для общего развития + опять же плюс в карму от бородатых трукодеров :) Код станет более читаемый и понятный. Это не претензия и не нравоучение - просто заметка бывалого программиста :) В остальном - спасибо! Большое дело делаешь, и делаешь хорошо!

    • @llllNEOllllchannel
      @llllNEOllllchannel Před 5 lety +2

      vsem pohui

    • @serg1567
      @serg1567 Před 4 lety +6

      @@llllNEOllllchannel я не все, мне нужны скобки и комментарии.

    • @mad_t
      @mad_t Před rokem +1

      Это все правильно и хорошо, но Arduino IDE просто заставляет ненавидеть чистый код со всеми ее через задницу работающими отступами, глючащими подсказками и прочими "прелестями".

  • @imper1324
    @imper1324 Před 7 lety

    спс за видос

  • @gibdd_yar
    @gibdd_yar Před 7 lety +23

    Сделай ,пожалуйста, следующий урок по подключению дисплеев к ардуино и их программированию

  • @Chuviw
    @Chuviw Před 7 lety +3

    В самом последнем скетче: строку boolean button1 и далее - упразднить. Cледующую за ней строку тоже стоит упразднить (ибо 13 порт - выходной, и зачем мы с него что-то читаем - непонятно).
    Условие if - упразднить.
    добавить digitalWrite(13,!digitalRead(A5));

    • @ArduNotes
      @ArduNotes  Před 7 lety +1

      +Chuviw да знаю. Это не готовый код, это просто пример работы

  • @islamsherikov4869
    @islamsherikov4869 Před 3 lety

    супер

  • @s_m_repetitor
    @s_m_repetitor Před 6 lety

    Привет. Очень интересно все это. Ты обещал рассказать как сделать блютуз передатчик для контроллеров без танцев с бубном))). Поделись плиз.

  • @user-nt4ki1th6x
    @user-nt4ki1th6x Před 5 lety

    Алекс, давно за твоей работой наблюдаю, молодец. Спасибо тебе. У меня вопрос такой покажи как выводить тактовую частоту процессора разделив её на переменную равную от 2 до 128. Спасибо

  • @FreedomOutcast
    @FreedomOutcast Před 5 lety

    Блин, ну ты даешь! Я поставил видео на паузу, написал код как ты показал - так все начало глючить при приближении руки к плате. Полез в нет, ничего толком не нашел, задолбал после посетителей форума амперки - и тогда нашел эти два варианта с резистором и через пуллап. После этого как все начало получатся продолжил смотреть ролик - и ты все через 30 сек сказал!)

  • @takkak_c
    @takkak_c Před 7 lety

    сделай видео про инфрокрастный приёмник

  • @user-rg7zv8fn1x
    @user-rg7zv8fn1x Před 4 lety

    когда на практике пришло осознание нахера подтягивать к земле резистором питание, прям кайфанул :-D

  • @351866057
    @351866057 Před 6 lety

    Быстро все объясняешь, на скорости 0.75 только можно уловить суть. А так отличные видео, с книгой по ардуино сидел неделю, так и ничего не понял, а тут все понятно. Спасибо, ждем новые видео. С термодатчиками бы что нибудь и датчиками влажности.

    • @vbprogr10
      @vbprogr10 Před 2 lety +1

      Я смотрю на скорости 2

  • @mikdandys
    @mikdandys Před 7 lety

    Александр, расскажи как создавать классы и использовать их в сложных программах.

  • @nikel097_
    @nikel097_ Před 7 lety +1

    Алекс, дай пожалуйста ссылку, чтобы почитать и понять, зачем и когда и насколько Ом подключать резисторы?! (что здесь, что при работе с масфет-транзисторами - не пойму) Буду очень признателен!

  • @sergeygordich
    @sergeygordich Před 4 lety

    Вот это совсем другой вид уроков! я заново все учу и выкидую стили других уроковедов!
    Я думал что кнопке нужно +5 вольт всегда на ее распознавание и подачи тока на цель. светодиод скажим!

  • @grosshypno
    @grosshypno Před 3 lety +1

    Сударь, вы изумительные видео снимаете. Я восхищён до охуения. Премного благодарю вас.

  • @user-lq6gl1up4z
    @user-lq6gl1up4z Před 3 lety +10

    4:38 странно, у меня изначально не по нулям, а с лева 1, а справа 0. Почему так?

    • @jnsee5916
      @jnsee5916 Před 2 lety +1

      у меня тоже, не могу найти проблему

  • @MrLemonnandpepper
    @MrLemonnandpepper Před 5 lety

    Алекс, а какая мощность рассеивания у встроенного резистора (ВР) в Ардуинках? Я правильно понимаю, что ВР всегда будет работать штатно (ведь ток управления копеечный должен быть...), и можно все пины управления/чтения на всех навешанных модулях притягивать через него?

  • @ThePaveltalk
    @ThePaveltalk Před 5 lety +12

    у меня почему-то, пока к пину не подключить нагрузку( светодиод например) то в мониторе показывает 1 на цифровых пинах

  • @xeither289
    @xeither289 Před 2 lety +1

    БОГ ЕСТЬ ЛЮБИТЕ БОГА И СВОИХ БЛИЖНИХ!!!☦❤🙏

  • @Werbard
    @Werbard Před 7 lety +1

    Алекс, а что по поводу встроенной поддтяжки входов, есть ограничения? Читал рассуждения на тему выжигания ног МК... Не будет ли надежнее использовать внешние резисторы? Что думаешь на этот счет?

    • @ArduNotes
      @ArduNotes  Před 7 lety

      +Вячеслав Бард думаю что такой херни у меня никогда не случалось

  • @user-xk9dk3gh4j
    @user-xk9dk3gh4j Před 7 lety +3

    ставлю лайк даже еще не смотря

  • @serg1567
    @serg1567 Před 4 lety +2

    Важная мелочь - к аналоговым пинам можно подключать дискретные сигналы, и обрабатывать их.

  • @astaroth813
    @astaroth813 Před 3 lety +2

    Всё очень интересно и понято. Спасибо большое за урок!
    Кстати, у меня одного проблема с контактами, когда подключаю к белой плате? Контакт то есть, то его нет. Если делаю всё напрямую, то норм, а на плате как-то странно...

    • @ArduNotes
      @ArduNotes  Před 3 lety +1

      Да, контакты изнашиваются, можно их достать поджать

  • @Mirz0_
    @Mirz0_ Před 2 lety

    Напряжение высокого уровня не равно 5В из-за защитного диода на входе питания от USB, он находится прямо под разъёмом.

  • @dmitryv6156
    @dmitryv6156 Před 4 lety +1

    Для новичков. Итоговый код будет более оптимален в таком виде:
    boolean but;
    void setup() {
    Serial.begin(9600);
    pinMode(A5, INPUT_PULLUP);
    pinMode(13, OUTPUT);
    }
    void loop() {
    if (but == digitalRead(A5)) {
    but = !digitalRead(A5);
    digitalWrite(13, but);
    Serial.print("Button: ");Serial.println(but);
    }

    }
    Не будет постоянной отправки данных на 13 пин и в консоль, в которой не будет постоянного мерцания значений.

    • @igorchernov8038
      @igorchernov8038 Před rokem

      Объясните пожалуйста, для чего нужны циклы if, если можно на светодиод напрямую выводить состояние с кнопки?

  • @schabanow
    @schabanow Před 2 lety

    Недавно узнал: "тактовая кнопка" на самом деле ТАКТИЛЬНАЯ кнопка. )) Т.е. такая кнопка, которая отзывается кликом на нажатие (обеспечивает оператору тактильные ощущения = осязание события нажатия кожей пальца ). Даже не знаю, зачем я всё это написал. Всё равно всё останется как есть. +1 за труды, всех благ!

  • @anushervon004
    @anushervon004 Před 7 lety +1

    Алекс, я так обрадовался когда ты начал делать эти уроки. Ждал каждый, но пока они выходили выучил всё сам. Перерывы чертовски долгие. Я понимаю тебе сложно, но выбери определённую тему. Страдают все! И люди с квадрокоптерами и всякие оружейники и Ардуинщики и чёрт возьми даже вейперы!!!

  • @BortEngineerDude
    @BortEngineerDude Před 7 lety +13

    Я с тобой не соглашусь по портам. Один порт объединяет несколько пинов. На ардуино нано доступно три порта: PORTD(цифровые пины D0-D7), PORTB(цифровые пины D8-D13), PORTC(аналоговые пины А0-А5). Вместо того, чтобы возиться с каждым пином по отдельности, иногда легче задавать значение всего порта сразу, к примеру, при управлении семи-сегментным дисплеем в режиме развёртки напрямую от ардуино.

    • @ArduNotes
      @ArduNotes  Před 7 lety +3

      +Engie вот такой инфы я еще нигде не видел....

    • @BortEngineerDude
      @BortEngineerDude Před 7 lety +7

      Вот информация на официальном сайте arduino:
      www.arduino.cc/en/Reference/PortManipulation
      Следует заметить, что управление портами напрямую работает быстрее, нежели digitalWrite или digitalRead, об этом написано тут, например:
      www.billporter.info/2010/08/18/ready-set-oscillate-the-fastest-way-to-change-arduino-pins/

    • @user-jq7tc7qi5z
      @user-jq7tc7qi5z Před 6 lety

      где-то есть видео как ускорить программы написанные в "ардуино иде" в 20 раз.

  • @vadimgikov6713
    @vadimgikov6713 Před 3 lety

    Круто я купил плату Wawgat - она дешевле ардуинки ( моя первая для тестов ) и она со всем справляется на 5 !

  • @justr4390
    @justr4390 Před 7 lety +1

    Алекс, сделай скрытый дверной замок с RFID модулем, чтобы его снаружи двери не было видно. Хочу себе в квартиру сделать как дополнительный замок, но пока с ардуинкой дел не имел, жду пока приедет с алика ;)

    • @ruslan_mexanoid
      @ruslan_mexanoid Před 7 lety

      Я видел подобный ролик на ютубе, но там прям колхоз

    • @justr4390
      @justr4390 Před 7 lety +1

      Всё, что не смотрел - всё колхоз. По этому и предложил Алексу снять )

  • @trsteep
    @trsteep Před 7 lety

    Блин так же мудрил с кнопкой, она еще долго ловит случайные срабатывания, потом узнал про резистор (на 10 ом не было, поставил какой был) и стало норм, но я подумал что неужели такую фигню не предусмотрели создатели, а вон оно что INPUT_PULLUP =)

  • @michaelphoenix4742
    @michaelphoenix4742 Před 2 lety +1

    отлично работает от USB, но когда питаю от кроны 9В через входы Vin и GND то не работает. Как правильно подключать кнопку при использовании внешнего питания?

  • @kirillbestlasers4816
    @kirillbestlasers4816 Před 6 lety +1

    Лулз словил от постоянно моргающего "Butt" на пятой минуте. XD

  • @user-me4ks2km3r
    @user-me4ks2km3r Před 7 lety

    Здравствуйте! Не могли бы вы сделать что-то типа сигнализации, работающей через модуль NRF24L01 с вибродатчиком? При вибрации идет сигнал на ардуино и загорается светодиод на 3-4 секунды. Буду благодарен! Смотрю все ваши видео, так вот и сам хочу что-то смастерить.

  • @user-rq8iz9fr2e
    @user-rq8iz9fr2e Před 7 lety

    Здоров Саня! Такой вопрос. Как к одной ардуино, (допустим нано) подключить и реле на 8 выходов, от 8 ми кнопок, и градусник, и сервопривод, от резистора, все одновременно. имею в виду как скетч выглядит...

  • @EpoxyArt
    @EpoxyArt Před rokem

    If (button1 = 1) digitalWrite(13, 1);
    else digitalWrite(13, 0);
    От этих строк меня, програмиста с двадцатилетним стажем, ПОКОРОБИЛО!
    Оно, конечно, работает, но лучше написать просто:
    digitalWrite(13, button1);

  • @kex0723
    @kex0723 Před 7 lety +2

    Не совсем понял про подтягивающий резистор, точнее про принцип его работы. Почему он убирает "ошибки"?

    • @dmitrij34
      @dmitrij34 Před 7 lety +2

      У проводов есть паразитная емкость. Убираем провод - заряд остаётся. С резистором по другому - у него огромное сопротивление, и когда подключены настоящие 5 вольт, то он не может спустить весь ток на землю (ардуино видит высокий сигнал), но когда мы выдернули провод - резистор спускает маленький остаточный заряд на землю (ардуино видит слабый сигнал 0v или LOW). С pullup резистором всё примерно так же, но притягиваем не к земле, а к 5 вольтам. Как то так.

    • @ArduNotes
      @ArduNotes  Před 7 lety +2

      +kkjey wheiss он не убирает ошибки. Он устанавливает на пине четко понятное для микроконтроллера напряжение. Без подтяжки пин висит в воздухе, и ловит всякие наводки

  • @veytplay9824
    @veytplay9824 Před 2 lety

    Спасиб

  • @dh0ine
    @dh0ine Před 6 lety +5

    Хотелось бы подробнее узнать о нюансах ардуинки и основах электроники, для понимания, а не для запоминания.
    Например, не понятно откуда берётся питание 5v в последней схеме на входе pinMode(A5, INPUT_PULLUP). Как я понял, вписывая "INPUT_PULLUP", мы не просто добавляем подтягивающий резистор, а ещё напряжение 5v на входной пин. То есть, ардуинка замыкает 5v и пин и постоянно выдаёт логическую единицу на любом пине, где прописано "INPUT_PULLUP".

    • @ARIMF
      @ARIMF Před 6 lety +3

      Пулап и есть подключение (подтягивание) пина внутренним резистором к пяти вольтам. То есть на пине они есть и стабильно читаются как логическая единица. Однако при прямом замыкании пина на землю кнопкой на нем получается логический ноль.

    • @user-wl7qy6xl6s
      @user-wl7qy6xl6s Před 5 lety +1

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

  • @_COSAR_
    @_COSAR_ Před 2 lety

    Класc👍👍👍

  • @user-vu1sv9on4q
    @user-vu1sv9on4q Před 5 lety +1

    Serial.print("Button1: " + (String)but1 + ", Button2: " + (String)but2 + "
    ");
    То же самое, только занимает одну строку.
    оператор + объединяет строковые значения тоже.

    • @kirznervadim7072
      @kirznervadim7072 Před 5 lety

      + "
      " удаляй, и используй println ) .. Но за объединение строк и чисел спасибо!

  • @beenmayer7700
    @beenmayer7700 Před 3 lety

    Здравствуйте! можно ли к одному цифроаому порту подключить несколько кнопок сразу?

  • @Valeriy_Polyakov
    @Valeriy_Polyakov Před 5 lety +2

    А я вот написал digitalWrite(6, button); и результат такой же, как и у тебя. светодиод загорается при нажатии кнопки.
    у меня короче.

  • @chotut9005
    @chotut9005 Před 7 lety

    Подскажите название исполнителя джазовой музыки в ваших роликах.

  • @user-oo3oe1he4g
    @user-oo3oe1he4g Před 4 lety +1

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

  • @estos8650
    @estos8650 Před 5 měsíci

    На 5:15 пин D13 работает корректно потому что по умолчанию на схеме к нему подключен светодиод через резистор?

  • @stavo4182
    @stavo4182 Před 7 lety +10

    PULLUP можно использовать один раз? Или сколько угодно, и не перегрузится ли резистор?

    • @user-gm8dh5yw8t
      @user-gm8dh5yw8t Před 6 lety

      10ком, даже если 20 портов не страшно, до 50ма не дойдет

    • @Bagasl
      @Bagasl Před 4 lety

      @@user-gm8dh5yw8t ты, я смотрю, шаришь в электронике, резистор для чего там нужен?

    • @deceiveitself7275
      @deceiveitself7275 Před 4 lety +1

      @@Bagasl чтобы не спалить плату, если + 5 вольт соединить с - 5 вольт (землёй или gnd) без резистора получится короткое замыкание.

    • @Bagasl
      @Bagasl Před 4 lety

      @@deceiveitself7275 с резистором же такое же КЗ просто ток меньше, не?

    • @deceiveitself7275
      @deceiveitself7275 Před 4 lety +1

      @@Bagasl Нет. КЗ это короткое замыкание, при котором по элементам цепи идёт недопустимо большой ток, в следствии чего как правило элемент выходит из строя. А резистор ограничивает этот ток до приемлемых величин

  • @shahaman5694
    @shahaman5694 Před 3 lety +2

    Спасибо. Но хотелось бы обьяснения почему с подключением резистора сигнал начал читаться нормально. И почему когда мы используем PULLUP нам не нужны +5V, а вместо этого мы подключаем к земле. Откуда у нас тогда высокий сигнал идет?

    • @ArduNotes
      @ArduNotes  Před 3 lety +1

      Высокий сигнал идёт с pullup

  • @spajalnikom
    @spajalnikom Před 7 lety

    Хорошие уроки и понятно.Можно желательно все подробней обяснять например зачем двойное равно и т.д.

    • @ArduNotes
      @ArduNotes  Před 7 lety

      +Arduino esp это объяснялось в прошлых уроках. Если я буду объяснять все заново в каждом выпуске, никакого прогресса не будет вообще

  • @sened6723
    @sened6723 Před 4 lety +1

    Когда уже будет проект ЧПУ......жду не могу прям

  • @bogbank1355
    @bogbank1355 Před 4 lety

    У меня слишком короткий провод от ардуинки, поэтому приходится работать под столом)Можно ли его как-то удлинить?

  • @user-pr8bo7yy8l
    @user-pr8bo7yy8l Před 3 lety

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

  • @user-pq4xj1rw7g
    @user-pq4xj1rw7g Před 3 lety

    Всё круто работает всегда на видео но у меня всё как всегда) точ в точ программу написал как на видео но при попытке проверить скетч ошибка
    'button1' was not declared in this scope

  • @vswift
    @vswift Před 5 lety

    Алекс, у меня Arduino NANO. Я установил все программы, всё работает, но у меня не горит светодиод зелёным на ардуинке как у Вас на видео. Это проблема или нет?

  • @plan4mum
    @plan4mum Před 5 lety

    сыну пригодилось в создании опрыскивателя для цветов

  • @1darkl1ght
    @1darkl1ght Před 4 lety

    В чем разница подключения кнопки к arduino по 2 проводам и по 3 проводам кроме числа проводов?

  • @st1HiTmaN
    @st1HiTmaN Před 5 lety +1

    Почему то у меня D12 и D13 по умолчанию в ком порте выдают 1, даже в сетапе вводил digitalWrite(13, 0) после компиляции и загрузке все равно выдает 1 и зажигает светодиод. Зато с А5 все нормально, работает как в видео...

  • @fukhell684
    @fukhell684 Před 3 lety

    а 2х контактный геркон можно подключить через input_pullup?

  • @LITWINBY
    @LITWINBY Před 5 lety +1

    А если подключить кнопку через резистор могу ли я узнать его сопротивление в режиме input_pullup при нажатии на кнопку?

    • @ARIMF
      @ARIMF Před 5 lety

      Через аналоговый пин можно. Загугли омметр на ардуино

  • @user-si9nc7vd2v
    @user-si9nc7vd2v Před rokem +1

    Привет, Алекс! Никак не могу понять почему на моменте 4:52 у тебя на второй кнопке сигнал равен нулю. Ведь ты убрал старую прошивку, на которой подавал на D13 низкий сигнал. Разве светодиод на плате не должен снова гореть и сигнал быть единицей на Button2 ?

    • @kudriy787
      @kudriy787 Před rokem

      тоже самое, плюсую

  • @user-zj4qg9iy3o
    @user-zj4qg9iy3o Před 4 měsíci +1

    4:39 написал код идентично, только порты другие, т.к. использую мегу 2560. в мониторе на button2 показывает 1. В чем причина может быть?