Arduino, управляющий светодиодами с 3,3 В, хотя dig. есть 5В?

Светодиоды, которые у меня есть, могут прекрасно работать от 3,3 В с минимальным рассеиванием мощности, чтобы снизить 3,3 В до 2,0 В.

Однако мой Arduino имеет 5 В для цифровых контактов, и я не знаю, как использовать 3,3 В, если я не использую контакт 3,3 В, а не цифровые контакты.

Чтобы избежать ненужной мощности / тепла (даже если не слишком много), можно ли управлять моими светодиодами с помощью более низкого напряжения, чем то, что обеспечивают цифровые контакты?

Моей первой мыслью были бы аналоговые контакты, диапазон которых от 0 до 255,

5В / 1,5В (аналогЗапись(pin, 192)) = 3,33В, будет ли это хорошей заменой?

Любые другие предложения по управлению многими, но низковольтными светодиодами?

Я не думаю, что у Arduino есть аналоговые выходы.
@ Леон, ах, я думал о светодиоде RGB, но это был ШИМ, а не аналог. Вполне возможно, что их нет.

Ответы (3)

Действительно, подход был бы, используя возможности ШИМ вашего контроллера. Вы можете сгенерировать сигнал ШИМ, используя функцию AnalogWrite().

Параметры для вашей функции: pin: контакт для записи. значение: рабочий цикл: от 0 (всегда выключен) до 255 (всегда включен).

Итак, если ваш рабочий цикл равен 255, это означает, что у вас будет 5 В, для 3,3 В рабочий цикл должен быть где-то около 168.

Однако помните, что «на большинстве плат Arduino (с ATmega168 или ATmega328) эта функция работает на контактах 3, 5, 6, 9, 10 и 11». Все, что вам нужно знать по этому вопросу, вы можете найти здесь http://arduino.cc/en/Reference/analogWrite

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

Еще одна вещь - AnalogWrite, как вы, возможно, уже знаете, не использует цифро-аналоговый преобразователь - он использует возможности ШИМ вашего контроллера. Это просто к вашему сведению :) Что касается проблемы, о которой вы упомянули: «Чтобы избежать ненужной мощности / тепла (даже если не слишком много)», как упоминал Олин выше, используйте светодиоды при малых токах. Для стандартного светодиода номинальным значением будет 20 мА. Однако 20 мА является «рекомендуемым» максимальным выходом для выходов вашего контроллера :)

Решение: если вы считаете, что 15 мА подходит для светодиода, и вы планируете подавать на него напряжение 5 В (от цифрового выходного контакта) и учитывая, что прямое напряжение диода составляет, как вы сказали, 3,3 В, используйте это прямо здесь http:// led .linear1.org/1led.wiz , и вы увидите, что вам понадобится резистор на 120 Ом :) Большее значение приведет к менее яркому светодиоду, а меньшее значение — к более яркому, но имейте в виду, что слишком низкое сопротивление резистора приведет к тому, что порт вашего контроллера... поджарится :)

Планируете использовать много светодиодов? Попробуйте подход со светодиодной матрицей, в любом случае я думаю, что вам нужна версия резистора, а не ШИМ.

Удачи и всего наилучшего, извините за ржавый английский, Дэн

Спасибо, Дэн, это полезная информация. Я хотел бы возиться с PWM!
Что ж, вы должны :) хотя поначалу это может показаться пугающим, это действительно практично, когда вы освоите его, и его можно использовать практически в любом приложении, которое его поддерживает. Вы можете получить действительно приятный эффект «конфеты для глаз» (подумайте обо всех автомобилях, которые затемняют или выключают свет при разблокировке / блокировке вместо простого и простого включения / выключения). Это, не говоря уже о том, что ШИМ используется в очень большом разнообразии управления приводами (обороты в двигателях постоянного тока, электронные регуляторы скорости для бесщеточных двигателей...)

Покажите схему конкретной Arduino, которую вы используете. Если у него есть линейный стабилизатор, делающий 3,3В из 5В, то никакой экономии энергии при работе светодиодов от 3,3В не будет. Резистор, включенный последовательно со светодиодом, будет рассеивать меньше при напряжении 3,3 В, но оставшаяся мощность, которую рассеивает резистор, приводящий к тому же току для 5 В, просто компенсируется регулятором 3,3 В. Это может привести к перегрузке стабилизатора на 3,3 В, тогда как использование источника питания на 5 В приведет к дополнительному рассеянию.

Разница между 3,3В и 5В не так уж и велика. Если вы беспокоитесь о мощности, а источник питания 3,3 В оказывается не переключателем, самый простой ответ — приобрести светодиоды с более высокой эффективностью и использовать их при более низком токе.

Сколько светодиодов нужно для работы? Какой ток через каждый? Вы проверили, что блок питания Arduino способен выдерживать дополнительную нагрузку? Дополнительный ток источников питания 5 В и 3,3 В, вероятно, различен. Проверьте спецификацию, чтобы узнать, какой ток доступен. Если вам нужна большая мощность, вам, вероятно, придется организовать ее самостоятельно из отдельной настенной бородавки или чего-то еще.

Рабочие циклы ШИМ необходимо рассчитывать с использованием среднеквадратичного значения. По сути

Рабочий цикл = Требуемое напряжение² / Пиковое напряжение²

Таким образом, в этом случае 3,3 В будет: 3,3² / 5² = 0,4356. Вы умножаете это на 255, чтобы получить значение аналоговой записи = 111,078. Итак, ПРАВИЛЬНОЕ значение — 111, а НЕ 168.

Чтобы показать вам, почему это так, представьте, что ваша нагрузка потребляет 5 мА при напряжении 3,3 В, что означает, что она имеет сопротивление 660 Ом и потребляет 16,5 мВт мощности. Теперь, если вы запустите ту же нагрузку при 5 В, она будет потреблять 7,6 мА, что составляет 38 мВт мощности, что БОЛЕЕ ДВА РАЗА потребляет мощность при 3,3 В. Если вы запустите свой рабочий цикл на 168, вы в основном будете использовать нагрузку 38 мВт в течение 66% времени и 0 в течение 34% времени, что даст вам среднее энергопотребление 25 мВт. Слишком высоко. Если бы вы использовали правильное значение 111, вы бы использовали нагрузку 38 мВт в течение 43,5% времени и ноль в течение 56,5% времени, что дает вам среднее энергопотребление 16,5 мВт, что является ТОЧНЫМ значением, потребляемым при 3,3 В.