Связка Uno+Ethernet оставляет свободным всего 4 цифровых пина, а если задействовать SD-карточку, то и того меньше. А все моторы, серво и кнопки (по крайней мере в Амперке) цифровые. Можно ли циклически обходить бОльшее количество девайсов этим вот драйвером? или еще каким-то, только готовым (в схемотехнике нуб).
Простейшее решение - Mega + Mega IO Shield, есть еще всякие расширители портов... А эта мелкосхема просто счетчик-драйвер для светодиодных индикаторов.
Ethernet занимает 4 пина для шины SPI. SD-карта ещё один. Итого остаётся 10 цифровых пинов. Кроме того любой из аналоговых входов может использоваться как цифровой вход/выход. А ещё если взять Arduino Leonardo, то Ethernet Shield вообще не займёт цифровые пины в верхних колодках: всё будет идти через ICSP-header. Ну и в конце концов, если не хватает выходов существуют микросхемы «сдвиговые регистры» (shift register): 2 пина → 8 пинов и всякие такие штуки.
Вот! вас-то я и ждал > Ethernet занимает 4 пина для шины SPI. Да, я помню. 4, 10..13. А через какие оставшиеся можно управлять сервой также как обычно? прошу прямо их выписать. > Итого остаётся 10 цифровых пинов. как это? 0,1,2,3,5,6,7,8,9 - всего 9 > Кроме того любой из аналоговых входов может использоваться как цифровой вход/выход. с этого места поподробнее плиз. Я смогу опрашивать 1-wire датчик с A0 Допустим?? > Ну и в конце концов, если не хватает выходов существуют микросхемы «сдвиговые регистры» хочу такую готовую плату в Амперке
А, ну это я SD не посчитал. Остаётся да, девять. Из них с PWM, который нужен сервам — да, четыре. Далеко не всей периферии нужен этот PWM (ШИМ), поэтому остальные можно задействовать для чтения/писания чего-нибудь вроде кнопок, бинарных датчиков, светодиодов (на максимальной яркости) и т.п. Если нужно больше ШИМ, то нужна либо Mega, либо микросхема вроде TCL5940. Их мы постараемся вскоре достать. Абсолютно так же, как и с пина 7, например.
отлично, попробовал OneWire oneWire(A5); действительно также считывает температуру с аналога. Спасибо.
Рад помочь A0-A5 соответствуют самые обычные порты на ATmega328 просто к ним подключен АЦП, поэтому они могут быть использованны для считывания аналогого сигнала. Но исторически сложилось, что в материалах по Arduino они воспеваются только в этой роли.
так, товарищи гуру, дайте схему такого "умножителя серв" хочется: один ШИМ-вход, один управляющий (не ШИМ!), и много-много ШИМ-выходов.
командовать угол серве. серва выбирается этим же пином по высокому уровню на управляющем. а можно и без управляющего пина - просто уровень 255 предшествует сигналу с номером сервы.
ок, давайте такой драйвер есть название, ссылка?.. не микросхему!! плиз плату! готовую! для чайников! Только SPI сразу нет - занято. На I2C пойдет.
На счет платы сходу не подскажу - знаю, что они вообще они в продаже есть, но там, где я уже заказывал себе железки, таких шилдов нет. Вот микросхемы есть под заказ на 16-каналов. Плату могу сам собрать.
Ну вот простейшая реализация есть. Драйверы для сервоприводов используются светодиодные, т.к. питание у серв идет отдельно. Есть еще 48-канальный драйвер LT8500 в жутком корпусе QFN56 - на нем одном можно сразу целого терминатора собрать