Цифровой выход ардуино не включает модуль с мосфетом
- Войдите на сайт для отправки комментариев
Доброго времени суток.
Не профи и ардуино занимаюсь от случая к случаю, для домашних дел, опыта почти ноль.
В прошлом году собирал одну поделку, все работало, проверял много раз, даже в итоге спаял что бы не на макетной плате была... в этом году взялся доделывать решил немного переработать логику и все ... после перепрошивки цифровые порты вроде как есть и даже вроде как работают (на плате sparkfun pro micro с трудом могут зажечь 3в светодиод) но вот модули мосфетовских ключей отказались работать наотрез. Хотя если им подать на сигнальный вход 5в то все норм... помогите в какую сторону копать.
плата такая https://ae04.alicdn.com/kf/Hded72949a88d479e8f59d6c389003dfe7/Pro-Micro-...
мосфетовские ключи такие https://ae04.alicdn.com/kf/HTB1FWuLKFzqK1RjSZSgq6ApAVXa6/4-WAVGAT-IRF540...
схема простая цифровой выход на сигнальную ногу модуля с мосфетами земля общая на грядку с питанием (управляемых элементов) подается +5в.
Пробовал ардуинку питать 12В на raw вход, ситуация та же.
Пробовал любой другой порт использовать та же картина.
Плату тоже пробовал менять на новую (3 перепробовал ... ничего)
Для чистоты эксперимента взял китайскую nano - все работает как положено...
как так?
Чем помочь?
Попробуйте записать простой скетч зажечь и погасить один диод.
Помочь разобраться почему так. Мне для поделки нужна плата pro micro а не nano.
Я и писал 3х вольтовый светодиод тускло зажигается... Мультиметра, к сожалению, под рукой нет замерять, что там на выходе.
Попробуйте записать простой скетч зажечь и погасить один диод.
Если в параллель со светодиодом подключить модуль с мосфет ключами то все... уже не загорается.
код покажите
код покажите
да он сейчас до нельзя примитивный:
void setup()
{
Serial.begin (9600);
}
void loop()
{
digitalWrite (2,HIGH);
Serial.println ("on");
delay (3000);
Serial.println ("off");
digitalWrite (2,LOW);
delay (3000);
}//loop
по серийному порту просто смотрю в каком состоянии порт
Во-первых, код нужно вставлять по правилам, во-вторых, пин нужно настроить на выход и в-третьих, по сериалу вы смотрите не состояние порта, а собственные сообщения
void setup()
{
Serial.begin (9600);
}
void loop()
{
digitalWrite (2,HIGH);
Serial.println ("on");
delay (3000);
Serial.println ("off");
digitalWrite (2,LOW);
delay (3000);
}//loop
ну вот сразу все ясно - pinMode() забыли, поэтому и нет напряжения на выходе
ну вот сразу все ясно - pinMode() забыли, поэтому и нет напряжения на выходе
Добавил. Теперь код выглядит так:
Но ситуация не изменилась.
Во-первых, код нужно вставлять по правилам, во-вторых, пин нужно настроить на выход и в-третьих, по сериалу вы смотрите не состояние порта, а собственные сообщения
Спасибо, что уточнили про вставку кода. И да, по сериалу я смотрю свои сообщения когда я изменяю уровень сигнала на цифровом порту.
Пин на выход настроил. Не работает. Предыдущий скетч с нано работал, как положено, без проблем.
Пин на выход настроил. Не работает. Предыдущий скетч с нано работал, как положено, без проблем.
пока пин не был настроен на выход - оно работать и НЕ ДОЛЖНО.
Раз все равно не заработало - значит эта ошибка не единственная. Теперь рисуйте и выкладывайте схему, причем подробно, без упрощений
ну вот сразу все ясно - pinMode() забыли, поэтому и нет напряжения на выходе
Низкий поклон )) помогло (плата зависла)...
еще раз перезалил код и получилось)