Как расширить Arduino при использовании TFT-дисплея?

Я совсем новичок в этом деле с Arduino. Я не могу разобраться с одной из своих проблем самостоятельно.

Я использую этот 2.4 TFT display shield на Arduino Uno. Пока работает отлично: я написал для него небольшой скетч, который отображает кнопку «Пуск», и после нажатия на нее он показывает случайные цвета.

Теперь я хотел бы подключить цепь с помощью соединительных кабелей, которые используются как датчики. Когда я касаюсь одного из соединительных кабелей, подключенный свет включается.

Проблема, с которой я столкнулся сейчас, заключается в том, что эта конкретная схема использует другой Arduino, поскольку мой первый Arduino уже «заполнен», поскольку TFT-экран занимает все контакты.

Как мне решить мою проблему? Возможно ли объединить Arduino в Stack? Можно ли как-то соединить эти Arduino? Заранее спасибо!

, 👍2


2 ответа


1

Хорошо, похоже, проблема в том, что у вас закончились пины. Сейчас вы используете Arduino Uno. Я бы пошел и купил Arduino Mega.

В качестве альтернативы вы можете использовать аналоговые входы как цифровые входы.

Arduino Uno
Цифровые контакты ввода/вывода 14 (из которых 6 обеспечивают выход ШИМ)
Флэш-память 32 КБ (ATmega328P), из которых 0,5 КБ используется загрузчиком

Arduino Mega
Цифровые контакты ввода/вывода 54 (из которых 15 обеспечивают выход ШИМ)
Флэш-память 256 КБ, из которых 8 КБ используются загрузчиком

,

2

Как я могу прочитать по вашей ссылке, шилд использует D2-D8 и A0-A3, оставляя некоторые пины неиспользованными. Так что некоторые пины Arduino все еще свободны для использования, просто шилд мешает подключиться к ним.

Итак, есть несколько возможных путей:

  • грубо припаяйте несколько проводов к неиспользуемым контактам экрана с передней стороны и используйте эти провода для подключения туда, куда вам нужно (датчики, макетная плата, универсальная печатная плата, ...)
  • грубо припаяйте несколько проводов к нижней части Arduino на неиспользуемых контактах, затем продолжайте, как указано
  • создайте промежуточный шилд (их много, они позволяют вам подключиться к Arduinou снизу и разместить еще один шилд сверху, протяните провода оттуда (и, возможно, даже поместите некоторые схемы на средний шилд, если хотите) (что-то вроде этого https://www.aliexpress.com/item/UNO-Prototype-DIY-shield-kit-for-Arduino-UNO-Universal-Extend-Board-UM-UNO/32555004112.html или любой "универсальный шилд arduino"

https://www.indiegogo.com/projects/ardushield-most-universal-shield-for-arduino-ever#/ отлично работает на Arduino и других шилдах/макетных платах ...

или что-нибудь в этом роде... http://shieldlist.org/sunhayato/universal

  • используйте контакты D10-D13, так как они также подключены к заголовку ISP https://www.arduino.cc/en/Tutorial/ArduinoISP и могут быть подключены оттуда. Так как они являются частью интерфейса SPI https://www.arduino.cc/en/Reference/SPI это тоже может быть хорошим решением (если вы каким-то образом управляете ChipSelect.

Что касается другой части вопроса - Можно подключить больше Arduino, но существует так много разных способов, что сложно описать все здесь — выберите тот, который вам больше всего подходит. (В любом случае вам в любом случае понадобится доступ к некоторым контактам)

,