Официальный сайт компании Arduino по адресу arduino.cc
Странный глюк ардуино
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Вс, 02/08/2015 - 01:56
int ledPin1 = 2; int ledPin2 = 3; void setup() { pinMode(ledPin1, OUTPUT); pinMode(ledPin2, OUTPUT); } void loop() { }
При включении ардуино выходы 2 и 3 становятся рабочими (всмысле, то что из них выходит 5в), хотя не должно т.к нет дальнейшей команды, в чем проблема подскажите
точно уверен, что у тебя светодиоды не к 5V вторым концом подключены?
точно уверен, что у тебя светодиоды не к 5V вторым концом подключены?
1000000%
ок. и, какое напряжение на пинах 2 и 3, если светодиоды светятся?
ок. и, какое напряжение на пинах 2 и 3, если светодиоды светятся?
4,61в
но у меня тестер не оч точный
сделайте и посмотрите будет ли светиться диод на 13 пине
pinMode(13, OUTPUT);
и, светодиоды не подрублены на 5V - ок. продолжим сеанс вызывания духа светодиода.
и, светодиоды не подрублены на 5V - ок. продолжим сеанс вызывания духа светодиода.
чай будешь? с баранками.
чай будешь? с баранками.
тебе комиссия по утилизации прописала дубовые опилки пропитанные формалином.
тебе комиссия по утилизации прописала дубовые опилки пропитанные формалином.
в той комисии два с половиной барана, причем обделенные в плане головного мозга... так что начхать чего они там прописали и кому..
При включении ардуино выходы 2 и 3 становятся рабочими (всмысле, то что из них выходит 5в), хотя не должно т.к нет дальнейшей команды, в чем проблема подскажите
На этом форуме кто-то выкладывал скетч для теста ардуинки. Ссылку на тему не нашел, поищи сам. А на всякий случай сам скетч
Загружай и смотри в сериал монитор.
да шо там проверять? - достаточно записать в пин 0 или 1.
При включении ардуино выходы 2 и 3 становятся рабочими (всмысле, то что из них выходит 5в), хотя не должно т.к нет дальнейшей команды, в чем проблема подскажите
Вы переводите пин в режим логического выхода. С этого момента он переходит из высокоимпедансного состояния (в каковом пребывает в режиме чтения) в активное состояние. А активных всего два варианта "0" и "1".
Контроллер работает именно так, как должен (хотя, возможно, и не так, как Вам бы хотелось - ну тек для этого его нужно ПРАВИЛЬНО запрограммировать).
При включении ардуино выходы 2 и 3 становятся рабочими (всмысле, то что из них выходит 5в), хотя не должно т.к нет дальнейшей команды, в чем проблема подскажите
Вы переводите пин в режим логического выхода. С этого момента он переходит из высокоимпедансного состояния (в каковом пребывает в режиме чтения) в активное состояние. А активных всего два варианта "0" и "1".
Контроллер работает именно так, как должен (хотя, возможно, и не так, как Вам бы хотелось - ну тек для этого его нужно ПРАВИЛЬНО запрограммировать).
подскажите пожалуйста как правильно написать код сначала чтобы был 0
код
А с чего Вы вдруг решили, что "не должно"?
А активных всего два варианта "0" и "1".
"подскажите пожалуйста как правильно написать код сначала чтобы был 0"
#11 так или эдак
"подскажите пожалуйста как правильно написать код сначала чтобы был 0"
всеравно 1 выходит изначально(
всеравно 1 выходит изначально(
да шо ж за тупняк такой?
всеравно 1 выходит изначально(
да шо ж за тупняк такой?
так тоже пробовал еще вчера - тоже безполезно!!
бесполезно что? ты можешь записать в пин 0 или 1 - на этом твои варианты полезности катастрофически заканчиваются.
если ты спалил свою дуино или просто тупишь, то что ты желаешь получить от форумчан?
пиши 0 или 1 и не парь людям мосг.
бесполезно что? ты можешь записать в пин 0 или 1 - на этом твои варианты полезности катастрофически заканчиваются.
если ты спалил свою дуино или просто тупишь, то что ты желаешь получить от форумчан?
пиши 0 или 1 и не парь людям мосг.
пишу 0, к 2-3 пину подключено реле, и после загрузки оно включается хотя не должно
Стоит цель, елси зажата кнопка входа 5 включить реле подключенное ко входу 2, если зажата еще раз, выключить
Стоит цель, елси нажата кнопка входа 4 включить реле подключенное ко входу 3, если нажата еще раз, выключить
при загрузке ардуино оба реле включается сразу, все вышеперечисленные коды перепробовал, пробовал разные ардуино и комбинацию всех кодов которые выше писали в разных вариантах нечего не помогло
мой код
Во первых, для включения нагрузки кнопкой не нужно ни ардуино ни реле. Достаточно обычного выключателя.
Во вторых, подобная проблема недавно тут обсуждалась.
В третьих, как написано выше, если спалил. То спалил.
В четвертых, есть подозрение что ты жмешь на кнопку компиляции а не прошивки.
В пятых, можно подождать когда я буду пить кофе и на гуще погадаем что, куда и как подключено.
при загрузке ардуино оба реле включается сразу, все вышеперечисленные коды перепробовал, пробовал разные ардуино и комбинацию всех кодов которые выше писали в разных вариантах нечего не помогло
А ты читал коментарий #10? Там вот к ардуине ни чего подключать не надо. Просто подключаешь ардуину к компу, грузишь скетч, который там записан, включаешь сериал монитор и смотришь, что написано про все твои входы и выходы. Если с ардуиной все нормально, то разбирайся со своей схемотехникой, какие реле, какие кнопки, как подключаешь.
"Вощето" варианты есть. И устраняются они только "после ресета". Сам "ресет" может быть либо произведен вручную - кнопкой, либо специальной цепью при включении питания. Есть ли последняя в Ардуино (по идее, должна быть) и исправно ли работает в конкретном образце у ТС, не знаю.
Но, вообще-то, есть определенные примемы программирования, которые позволяют обезопасить себя от всяческих нежелательных сюрпризов. Например, нужно всегда инициализировать переменные. Не вижу, чем вывод порта должен в этом отношении кардинально отличаться от переменной. Собираешься использовать - инициализируй нужным значением, а не надейся, что оно само собой установится.
Ставлю на "в пятых" из сообщения #22, реле можно (но не нужно) подключить напрямую к пину, второй конец на землю или на +5В, а потому попкорн и кофе уместны в больших количествах.
Самое простое - взять тестер и измерить напряжение на пине, тогда и кофе не понадобится.
при загрузке ардуино оба реле включается сразу, все вышеперечисленные коды перепробовал, пробовал разные ардуино и комбинацию всех кодов которые выше писали в разных вариантах нечего не помогло
Взял Ваш код, загрузил в Протеус, Все нормально запустилось , ничего при запуске не включено, кнопки диоды отработали нормально
Ищите проблему в подключении или железе
кстати, в контексте защиты от дребезга, а какова физическая продолжительность процесса дребезга? - потому, как народ ставит время от балды, без лабораторного обоснования или, вообще, несёт ересь.
delay(500);
//небольшая защита от "дребезга" контактов кнопки
Думаю врядли появится лабораторное обоснование так как каждый элемент дребезжит по своему и чем он старше тем длинне дребезг. Самый лутший антидребезг это функция или библиотека которая выдает единицу только тогда когда нет смены состояния 5_15мс.
Самый лутший антидребезг это функция или библиотека которая выдает единицу только тогда когда нет смены состояния 5_15мс.
при 1000 мс антидребезг хутше? :D
Да нет, просто достаточно и этого а так можно ставить 1ч
кстати, в контексте защиты от дребезга, а какова физическая продолжительность процесса дребезга? - потому, как народ ставит время от балды, без лабораторного обоснования или, вообще, несёт ересь.
delay(500);
//небольшая защита от "дребезга" контактов кнопки
Да и разброс от случая к случаю достигает минимум порядка. Я как-то экспериментировал с кнопкой, время дребезга находилось в диапазоне 2-50 мс. Это для одной и той же кнопки. У разных кнопок из одной серии, естественно, будет разный диапазон, а у кнопок различной конструкции - и подавно.
Да и разброс от случая к случаю достигает минимум порядка. Я как-то экспериментировал с кнопкой, время дребезга находилось в диапазоне 2-50 мс. Это для одной и той же кнопки. У разных кнопок из одной серии, естественно, будет разный диапазон, а у кнопок различной конструкции - и подавно.
блин! набежали Капитаны Очевидность - в пень вашу теорию, умозрительные выводы.
*хоть бы кому пришла в голову идея программного определения максимальной длины процесса дребезга и её оптимальной коррекции в процессе работы девайса.
**то, что длина дребезга может варьироваться от 0 до определённого значения - выписываю рептилоиду шнобелевку за открытие неоткрытого.
Обратите внимание на библиотеку Bounce
Обратите внимание на библиотеку Bounce
спасибо, но это для использования готовых значений дребезга, а я озадачился написать нечто для экспериментального замера длины дребезга.
Понял! Тогда попробуйте вот такой код
Вчера некогда было проверить, сейчас исправил и проверил в протеусе. Попробуйте, удачи.
блин! набежали Капитаны Очевидность - в пень вашу теорию, умозрительные выводы.
*хоть бы кому пришла в голову идея программного определения максимальной длины процесса дребезга и её оптимальной коррекции в процессе работы девайса.
Эта идея неконструктивна по указанной ниже причине.
**то, что длина дребезга может варьироваться от 0 до определённого значения - выписываю рептилоиду шнобелевку за открытие неоткрытого.
Эта идея неконструктивна по указанной ниже причине.
Если для Вас это очевидно, мне Вас жаль - Вы ошибаетесь: нет такого значения. Контакт может "дребезжать" месяцами - вплоть до полного выгорания.
рептилоид, ты слабо понимаешь человеческий язык - медитируй дальше над моими ответами, подразумевается постоянная юстировка длины фильтрации дребезга.