Подключаем 16-клавишный тачпад на базе TTP229 к микроконтроллеру

Недавно получил, заказанные с eBay, тачпад с 16 клавишами, на базе чипа TTP229.

К сожалению продавец не предоставил никакой документации по этому модулю, а так же нет её и на просторах интернета. Поиск даташита на микросхему TTP229 дал несколько неудовлетворительные результаты, потому как в свободном доступе даташита именно на ту ревизию микросхемы, что используется в модулях, попросту нет. Однако нашлись даташиты на другие ревизии, а кроме того, на одном китайском блоге, нашлось сравнение всех ревизий микросхем.

С этой информацией уже можно было работать. Я отследил какие дороги, как подключены к выводам чипа и узнал его распиновку и конфигурацию. Оказалось, что по умолчанию схема настроена на работу только с первой группой из 8 клавиш. Допаяв на плату отсутствовавшие разьёмы-гребёнки, я получил возможность с помощью перемычек менять настройки.

Всего с двумя дополнительными перемычками заработали все 16 клавиш, и кроме того поменялся режим выхода с активного низкого, на активный высокий. Для быстрого тестирования и демонстрации принципов работы с модулем, набросал простенький скетч для Arduino, который можно найти в моём репозитории на GitHub https://github.com/dmmedia/TTP229B_16keypad. Загрузив скетч и подключившись к Arduino через SerialMonitor, можно наблюдать события нажатия и отпускания или смены кнопок.

Далее в планах переписать этот скетч в полноценную библиотеку, и начать использовать модули в моих экспериментах и проектах. Модули довольно хорошо для этого подходят: они тонкие, особенно если заменить разьём-гребёнку на паянные перемычки и провода, там где это надо. Клавиатуру модуля можно закрыть плёночной или бумажной мембраной с собственным дизайном. А цена на эти модули позволяет покупать их пачкой, вместо того, что бы тратить своё время на изготовление.

Подключаем 16-клавишный тачпад на базе TTP229 к микроконтроллеру: 4 комментария

  1. Виктор

    Здравствуйте, Денис!
    Прошу вашей помощи!
    Я сейчас пытаюсь написать скетч для часов с управлением от модуля TTP229. Я пока еще полный профан в этом деле, это будет моя первая работа с Arduino. Ваш скетч для проверки TTP229 у меня заработал, а вот библиотека TTP229B.h, по-моему, еще не отлажена. Скажите, у вас уже есть работающий вариант этой библиотеки?
    Я обращаюсь к вам потому, что, кроме вашей библиотеки, во всем интернете нашел еще только одну (github.com/arduino12/ttp229-arduino). Она нормально работает только в тестовом скетче от автора. Если я включаю ее в свой скетч с одновременным использованием индикации на TM1638, сенсоры начинают работать через раз и даже реже, что очень раздражает.
    Очень надеюсь, что вы мне хотя бы ответите!
    Виктор.

    1. Denis Frolov Автор записи

      Здравствуйте Виктор

      К сожалению ещё не довёл библиотеку до ума в связи с высокой загрузкой на работе и в университете. Планирую возобновить работу над библиотекой после нового года.

      Посмотрите комментарии к библиотеке на GitHub (https://github.com/dmmedia/TTP229B_16keypad/commit/98451413df94c48d3f8ec8de5b021958d0dab7d3). Возможно они помогут вам самому доработать библиотеку, мою или вторую, о которой бы написали.

      Кроме того, возможно проблема не в библиотеке клавиатуры, а в коде индикации.

      К сожалению, пока больше не могу вам помочь. После защиты дипломной работы будет посвободнее.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *