На пине Arduino UNO ток меньше 10млА

Hello3333
Offline
Зарегистрирован: 06.08.2022

Всем привет.



Никогда не пользовался Arduino, но для одного проекта понадобилась. Купил Arduino UNO (99%, что не оригинал, но надписи на самой плате как на оригинале).



Подключил к компьютеру через USB-TTL конвертер, прошил Blink, все заработало, НО светодиод светит ОЧЕНЬ ОЧЕНЬ тускло, виден только кристалл совсем чуть-чуть. Я подключал и с резистором 200 Ом и без резистора, светит одинаково. Поменял в скетче время блинка - все работает, время меняется, светодиод мигает с тем временем, которое прописал в скетче. Но он почти не светит.



Светодиод (красный, индикаторного типа) подключен к пину 12, в прошивке поставил просто digitalWrite (12, HIGH), чтобы все время светился, измеряю мультиметром напряжение на пине 12 и землей, показывает 4,8В, измеряю ток: мультиметр не показывает, потому ток менее 10млА.



Подключаю резистор 200 Ом и светодиод к батарейке 3В - светодиод светит как надо. Подключаю к ардуино - почти не светит.



Подключал также ардуино к питанию без USB-TTL конвертера - точно также, изменений нет.



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

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

схема и скетч где?

rkit
Offline
Зарегистрирован: 23.11.2016

Что такое млА?

Hello3333
Offline
Зарегистрирован: 06.08.2022

rkit пишет:

Что такое млА?

 

Это мА всмысле

Hello3333
Offline
Зарегистрирован: 06.08.2022

Вопрос решился, в начале кода в pinMode было написано (LED_BUILTIN, OUTPUT), а не (12, OUTPUT), сейчас все работает.



Но остается интересный вопрос, почему у меня на 12 пине светился светодиод (очень тускло) и отрабатывал заданное время по скетчу, когда 12-й пин не был настроен на OUTPUT.



Скетч из примера:

void setup() {

// initialize digital pin LED_BUILTIN as an output.

pinMode(12, OUTPUT);

}



// the loop function runs over and over again forever

void loop() {

digitalWrite(12, HIGH); // turn the LED on (HIGH is the voltage level)

delay(100); // wait for a second

digitalWrite(12, LOW); // turn the LED off by making the voltage LOW

delay(100); // wait for a second

}

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Hello3333 пишет:

Но остается интересный вопрос, почему у меня на 12 пине светился светодиод (очень тускло) и отрабатывал заданное время по скетчу, когда 12-й пин не был настроен на OUTPUT.



В архитектуре AVR один и тот же управляющий бит используется для установки в HIGH в режиме OUTPUT и для включения подтяжки в режиме INPUT. Соответственно, в Вашем случае ток шел с 5В через резистор подтяжки, величина которого лежит в пределах 20-50кОм. Если знаете закон Ома, величину тока можете посчитать сами.

BOOM
BOOM аватар
Offline
Зарегистрирован: 14.11.2018

andriano пишет:

Hello3333 пишет:

Но остается интересный вопрос, почему у меня на 12 пине светился светодиод (очень тускло) и отрабатывал заданное время по скетчу, когда 12-й пин не был настроен на OUTPUT.



В архитектуре AVR один и тот же управляющий бит используется для установки в HIGH в режиме OUTPUT и для включения подтяжки в режиме INPUT. Соответственно, в Вашем случае ток шел с 5В через резистор подтяжки, величина которого лежит в пределах 20-50кОм. Если знаете закон Ома, величину тока можете посчитать сами.

А по умолчанию пин настроен как ВХОД (input)...