Необходимо «расширить» цифровой сигнал Arduino
Вот сценарий: У нас есть 1 Arduino Uno, принимающий DMX и преобразующий его в сигнал, который отправляется в цифровом виде (PIN 3). Затем цифровой сигнал поступает на несколько ИК-светодиодов, которые управляют 3200 ИК-свечами, меняющими цвет. Недавно я добавил еще несколько отправителей, и теперь некоторые отправители не работают (даже те, которые работали раньше). Я предполагаю, что это связано с тем, что цифровой сигнал был ослаблен из-за того, что я много раз разделял его.
Я бы хотел добавить еще одну Arduino, чтобы управлять половиной ИК-передатчиков. Очевидно, у меня уже есть кабель, идущий к каждому устройству, но я знаю идеальное место, чтобы «вставить» новый Arduino. Это возможно? Может ли второй Arduino «повторить» или декодировать и перекодировать цифровой сигнал? Если да, то на какие контакты я смотрю и нужен ли мне какой-то специальный код?
Спасибо за помощь!
@Ed Olivett, 👍1
Обсуждение2 ответа
Лучший ответ:
Сценарий, о котором вы говорите — подключение одного выхода ко многим устройствам — называется разветвлением. Да, контакт GPIO имеет ограниченный объем диска, что ограничивает количество устройств в разветвлении.
Есть две проблемы, вызванные чрезмерным разветвлением:
- Избыточное потребление тока от резистивных нагрузок
- Избыточная емкость из-за логических нагрузок
Первое очевидно, когда у вас слишком много светодиодов, подключенных напрямую к выходу (конечно, с резисторами). Суммарный ток, потребляемый светодиодами, превышает ток, который может обеспечить вывод ввода-вывода, и либо вывод повреждается, либо светодиоды становятся тусклее, чем хотелось бы.
Последнее более очевидно при работе с коммуникационными сигналами. Избыточная емкость, создаваемая каждым затвором, подключенным к выходу, вызывает эффект фильтра нижних частот, который может отфильтровывать высокочастотные сигналы или искажать формы сигналов путем удаления высокочастотных компонентов и «изгибания» красивых чистых прямоугольных сигналов.
В обычных логических системах обычно используются линейные драйверы или буферы, позволяющие подключать больше устройств к одному сигналу. Обычно используются такие устройства, как 74HC244, который представляет собой 8 буферов в одном чипе. Вы можете подключить входы всех 8 буферов к одному выходу Arduino, и каждый выход из буфера точно отражает вход и может подключаться к большему количеству устройств, чем может Arduino (каждый выход имеет дополнительную 10 мА устойчивую мощность привода, чем Arduino) .
И да, вы даже можете подключить выход одного буфера к входам других буферов, чтобы увеличить емкость.
Так что, похоже, я мог бы использовать некоторые из этих буферов. Это то, что я покупаю или строю?, @Ed Olivett
Это фишка, которую вы покупаете и встраиваете в свой дизайн., @Majenko
хорошо. В общем, я бы купил одно из этих устройств, а затем поместил бы его между Arduino и светодиодными баксами?, @Ed Olivett
Ага. Это верно., @Majenko
У меня есть 28 баксов, питающих 4 ИК-светодиода каждый., @Ed Olivett
где лучше всего купить устройство, о котором вы говорите?, @Ed Olivett
Похоже, что слишком большая емкость искажает форму волны., @Majenko
Для одного-двух лучше всего подойдет eBay., @Majenko
Буфер — хорошая идея, каждый контакт на Arduino может отдавать 20 мА, но тогда чип может перегреваться, и вы не можете довести каждый выход до 20 мА, поэтому буферный чип — это то, что вам нужно. Просто учитывайте скорость буфера при отправке данных. Есть много чипов, которые могут это сделать, и многие, которые, возможно, не смогут этого сделать. Так что смотрите на скорость чипа от входа до выхода. Опять же, ардуино может не справиться. Так что подумайте о PIC, некоторые PIC действительно быстры по сравнению с Arduino.
- Есть ли способ воспроизводить звуки с Arduino без использования звукового экрана?
- В чем разница между analogWrite и digitalWrite?
- Что означает “LSB на градус в секунду” (LSB per degree per second)?
- Тест сети SIM900A
- Как настроить ADC7 на Arduino Pro Mini в качестве цифрового выхода?
- Чтение частоты ввода в цифровых выводах
- Отправка цифрового сигнала с одного Arduino на другой для запуска события
- DHT11 аналоговый или цифровой?
Или - могу ли я использовать другой PIN-код на текущем Arduino для питания другой половины отправителей? Он должен быть с поддержкой ШИМ., @Ed Olivett
@AltAir — мы используем специально созданный ИК-передатчик с использованием светодиодных баков от Sparkfun. Мы использовали их в прошлом году без проблем. Проблема теперь происходит после добавления 6 дополнительных баксов в этом году., @Ed Olivett
Можете ли вы предоставить ссылку на устройства, которые вы используете в своих отправителях?, @Majenko
@Majenko - https://www.sparkfun.com/products/13716, @Ed Olivett