Pull to refresh

Comments 12

Хорошо бы для новичков на блок-схеме показывать как работает программа. А то все эти "if(But && !Now)" "if(!Now) { Light = !Light;" "But = Now;" сильно сбивают с толку своей непонятностью. И желательно писать предназначение переменных более понятно, например "checkButton" "checkLight" "pinButton" "pinLed".
Плюс имеет гораздо меньший размер внутри линзы по сравнению с минусом.

Далеко не правило, бывает по-разному.
Мне, как максимально новичку в ардуино (да и электротехнике) не понятно, как мы приходим к тому, что вот здесь мне нужен резистор. И на не просто какой-то, а конкретно на 10 кОм.
Не на 20 и не на 5
Было бы круто, если бы автор писал, как именно мы приходим к тому, что нам нужны сторонние элементы в цепи
спасибо
Это подтягивающий резистор. Когда кнопка разомкнута, на дискретный вход подается минус с GND. Нужен он для того, чтобы не было ложных срабатываний, из-за наводок например, когда вы подносите руку к Arduino. Номинал обычно выбирается из стандартных: 10, 15 или 20 кОм.
Вообще, тут показана плохая практика с кнопкой, когда она коммутирует "+" на вывод контроллера. Разницы по электрическим причинам то нет, но когда дело доходит до практики на плате кнопку очень неудобно вешать на тонкий проводок подводящий "+" к ней. Общий же провод обычно предоставлен по всей плате в виде большого полигона, риска оторвать тонкую дорожку к которой припаяна SMD или обычная кнопка во время эксплуатации гораздо меньше.
Номинал выбирается из справочника Стеля. Слишком маленький номинал — будет большой ток во время нажатия кнопки, что для батарейного устройства как бы довольно плохо. Слишком большой номинал — будут пролазить наводки электростатические… вот и выходит на практике в качестве компромисса номинал в 10кОм +- лапоть. Иногда этого мало и нужно уменьшать номинал(соседство с силовыми цепями с крутыми фронтами), а иногда ровно наоборот — нужно увеличивать номинал т.к. батарейка не бесконечная а кнопка предполагается очень долго нажатой. Вплоть до того что подтяжка включается ТОЛЬКО на время проверки состояния кнопки.
Немного не понял, что плохого в подаче "+" на дискрет Arduino, и причем здесь разводка платы, проводки и риск оторвать тонкую дорожку.
Справочник Потолковского тоже сгодится.
Не из-за наводок вешается резистор, а что бы явно выставить уровень по-умолчанию, иначе у вас может быть что угодно, вход плавающий. И резистором лучше вешать на питание, а не на землю, так как есть ток утечки вывода и его ёмкость может зарядиться и вызвать ложное срабатывание, если резистор достаточно велик.
Я не автор, но могу сказать, что к этим вещам приходят на основе понимания электротехники…
Я про резистор и диод вот что могу сказать
Если говорить о диоде и резисторе, то надо знать, что на диоде падает примерно постоянное напряжение. А напряжение питания мы прикладываем немного больше, чем надо. Весь излишек напряжения упадет на резисторе или на соединительных проводах (кои тоже можно считать за очень маленький резистор). У резистора есть сопротивление (которое мы вольны выбирать), есть остаток напряжения, который упадет на нем — что из этого получается (для человека, у которого закон Ома в подкорке, это очевидно)? Да ток же, который обтекает все элементы схемы — и резюк, и источник питания, и наш ненаглядный диод. Вот так, вооружившись законом Ома, мы подбираем сопротивление резистора — который определяет ток, текущий через всю схему. Не просто там абы как ограничивает, а именно определяет — мы задаем вполне конкретный ток, питающий диод.
Почему нельзя превышать ток через диод? Потому что от него напрямую зависит мощность, выделяемая на диоде. Если мощность превысит некий предел, диод сгорит к едрене-фене.
Как то вот так, если упрощенно.

В общем то, для новичка было бы круто, если все это будет описано в статье. Но это все равно что рассказывать про переменные и циклы в любой статье про программирование. Хотя, если тут разжевывают даже полярность светодиода, может, и стоило включить вот это вот всё.
Но на самом деле, надо иметь в виду что светодиод не сгорает мгновенно. При превышении тока он начинает деградировать гораздо быстрее чем это могло бы быть. Чем меньше превышение тем дольше он будет «сгорать». Когда-то экспериментировал над классическими АЛ307 зелёный — на токе в 100-200мА(при норме не более 10мА) он работает примерно 30 секунд постепенно меняя цвет свечения на желтый. Современные в этом плане ничем не отличаются.
Делал похожее, но только нужен был запуск цикла по кнопке, без её удержания.
Статья интересная, хорошо написана, как раз для начинающих.
Ну почему надо показывать примеры на убогом не оптимизированном диалекте. На чистом же Си проще и лучше.
Sign up to leave a comment.

Articles