Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы
Непрочитано 19.02.2018, 04:22  
sslobodyan
Частый гость
 
Регистрация: 14.06.2006
Сообщений: 40
Сказал спасибо: 20
Сказали Спасибо 10 раз(а) в 5 сообщении(ях)
sslobodyan на пути к лучшему
По умолчанию Сенсорный датчик MPR121

Всем доброго здоровья!
Помогите раскурить эту MPR121. Требуется получить 8 сенсорных кнопок, но с максимально быстрой реакцией (хочется задержку в 1мс, но терпимо до 4мс). Сейчас провожу инициализацию вот так.
Код:
    setRegister(MPR121_SRST, 0x63);
    setRegister(MPR121_ECR, 0x0);
    setRegister(MPR121_MHDR, 0x01); // Maximum Half Delta  1-63 (1)   Rising
    setRegister(MPR121_NHDR, 0x01); // Noise Half Delta 1-63 (1)
    setRegister(MPR121_NCLR, 0x0E); // Noise Count Limit 0-250 (0E)
    setRegister(MPR121_FDLR, 0x00); // Filter Delay Count Limit 0-255 (0)

    setRegister(MPR121_MHDF, 0x01); // Falling
    setRegister(MPR121_NHDF, 0x05);
    setRegister(MPR121_NCLF, 0x01);
    setRegister(MPR121_FDLF, 0x00);

    setRegister(MPR121_NHDT, 0x01); // Touched
    setRegister(MPR121_NCLT, 0x00);
    setRegister(MPR121_FDLT, 0x00);

    setRegister(MPR121_DEBOUNCE, 0x00);
    setRegister(MPR121_CONFIG1, 16); // default,16==16µA charge current, FFI=6samples
    setRegister(MPR121_CONFIG2, 0x20); // 0x5µs encoding, ESI=1ms period, SFI=4samples 

    // Set touch & release thresholds
    setThresholds(20, 6); //48 6

    // Enable touch 0-7, put MPR into run mode
    setRegister(MPR121_ECR, 0b11001000); // baseline tracking & initialize enable 0x88
    delay(100);
    setRegister(MPR121_ECR, 0b01001000); // baseline NOT tracking & initialize enable 0b01001000
Работает как-то не стабильно. Иногда касаюсь сенсора несколько раз пальцем - все работает, но если коснусь железкой (пинцетом) то может зависнуть. На осциллограмме с пина прерывания микрухи видно, что она переходит в STOP режим, то есть перестает сканировать сенсоры. И еще никак не могу разобраться с автоматической подстройкой. Может кто работал с этим чипиком плотненько? Посоветуйте грамотную инициализацию.
Реклама:
sslobodyan вне форума  
Непрочитано 19.02.2018, 09:07  
mike-y-k
Модератор
 
Регистрация: 04.08.2010
Адрес: Москва СЗАО
Сообщений: 11,246
Сказал спасибо: 11,165
Сказали Спасибо 3,854 раз(а) в 2,925 сообщении(ях)
mike-y-k на пути к лучшему
По умолчанию Re: Сенсорный датчик MPR121

Пробовал эти чипы лет 6 назад. Были проблемы, но информации в DS оказалось достаточно для решения. Провозился с экспериментами где-то с неделю между делом и все заработало, но как-то не прижились они - потребности особой не возникло.
Попробую поискать следы в архиве - может и осталось что-то…
__________________
rtfm forever должно быть основой для каждого. Альтернатива грустна, поскольку метод слепого щенка успешно работает при весьма малом числе вариантов…
mike-y-k вне форума  
Непрочитано 19.02.2018, 15:14  
sslobodyan
Частый гость
 
Регистрация: 14.06.2006
Сообщений: 40
Сказал спасибо: 20
Сказали Спасибо 10 раз(а) в 5 сообщении(ях)
sslobodyan на пути к лучшему
По умолчанию Re: Сенсорный датчик MPR121

Спасибо, жду с нетерпением.
А может встречались Вам другие решения? Надо 32 датчика с быстрым сканированием.
sslobodyan вне форума  
Непрочитано 19.02.2018, 15:25  
mike-y-k
Модератор
 
Регистрация: 04.08.2010
Адрес: Москва СЗАО
Сообщений: 11,246
Сказал спасибо: 11,165
Сказали Спасибо 3,854 раз(а) в 2,925 сообщении(ях)
mike-y-k на пути к лучшему
По умолчанию Re: Сенсорный датчик MPR121

sslobodyan, 32 датчика чего?
У каждого производителя есть толика вариантов работы с ёмкостными клавиатурами.
Стоит посмотреть у NXP дополнительно все материалы по этому чипу в текущем состоянии - DS, RD, errata,…

Мне очень помогает внимательное чтение DS и других материалов с карандашом в руках. Плюс сейчас у производителя частенько есть готовые примеры кода, библиотеки,…
__________________
rtfm forever должно быть основой для каждого. Альтернатива грустна, поскольку метод слепого щенка успешно работает при весьма малом числе вариантов…
mike-y-k вне форума  
Непрочитано 19.02.2018, 16:51  
sslobodyan
Частый гость
 
Регистрация: 14.06.2006
Сообщений: 40
Сказал спасибо: 20
Сказали Спасибо 10 раз(а) в 5 сообщении(ях)
sslobodyan на пути к лучшему
По умолчанию Re: Сенсорный датчик MPR121

Сообщение от mike-y-k Посмотреть сообщение
32 датчика чего?
32 сенсорные кнопки.
Мне тоже обычно помогает чтение ДШ и аппнотов. В данном случае не помогло, иначе бы не спрашивал совета.
Посмотрел примеры настроек в различных ардуиновских библиотеках. По некоторым чип даже заводится и чувствует касание. Ни у кого не видел настройки baseline - все работают с параметрами по-умолчанию. И так-же как и у меня чип сбрасывается, если касаться сенсора металлическим предметом. Почему с пальцем работает, а пинцетом зависает - не могу понять.
sslobodyan вне форума  
Непрочитано 20.02.2018, 01:13  
mike-y-k
Модератор
 
Регистрация: 04.08.2010
Адрес: Москва СЗАО
Сообщений: 11,246
Сказал спасибо: 11,165
Сказали Спасибо 3,854 раз(а) в 2,925 сообщении(ях)
mike-y-k на пути к лучшему
По умолчанию Re: Сенсорный датчик MPR121

Собственно снятый с производства чип мало смысла разбирать.
У NXP есть PCA8885 и PCF8885.
У Silabs тут тоже есть некоторое количество.
У TI можно даже в интеграции с микроконтроллером поиметь решение.

На тему зависания - можно просто с RC генератором и сенсором в качестве дополнительной емкости оценить ёмкость пальца и ёмкость пинцета по сдвигу частоты при касании. Одновременно оценить амплитуду наводок на сенсор при касании. Ответ будет весьма наглядным…

Конкретику по MPR121 можно ещё посмотреть в материалах форума на NXP.

Собственно чип позиционировался совсем не как игрушка и наверняка использовался в хороших масштабах, посему решение должно быть.

Посмотрел архив - не нашёл. Может на болванках сохранил, но это уже явно не скорый процесс - каталог содержимого "сильно" не полный.
__________________
rtfm forever должно быть основой для каждого. Альтернатива грустна, поскольку метод слепого щенка успешно работает при весьма малом числе вариантов…

Последний раз редактировалось mike-y-k; 20.02.2018 в 02:24.
mike-y-k вне форума  
Сказали "Спасибо" mike-y-k
sslobodyan (20.02.2018)
Непрочитано 20.02.2018, 14:16  
sslobodyan
Частый гость
 
Регистрация: 14.06.2006
Сообщений: 40
Сказал спасибо: 20
Сказали Спасибо 10 раз(а) в 5 сообщении(ях)
sslobodyan на пути к лучшему
По умолчанию Re: Сенсорный датчик MPR121

И на том спасибо. Заказал сэмплы у Силабса. Остальные не проходят по скорости реакции.
sslobodyan вне форума  
Непрочитано 20.02.2018, 16:18  
mike-y-k
Модератор
 
Регистрация: 04.08.2010
Адрес: Москва СЗАО
Сообщений: 11,246
Сказал спасибо: 11,165
Сказали Спасибо 3,854 раз(а) в 2,925 сообщении(ях)
mike-y-k на пути к лучшему
По умолчанию Re: Сенсорный датчик MPR121

Будут вопросы… тут финальная фраза из мультфильма "Жил был пёс"
__________________
rtfm forever должно быть основой для каждого. Альтернатива грустна, поскольку метод слепого щенка успешно работает при весьма малом числе вариантов…
mike-y-k вне форума  
 

Закладки

Метки
mpr121
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Датчик линейного перемещения из оптической мыши age3000 Автоматика и аппаратура связи 1 24.05.2014 22:18
Датчик льда на тротуаре... AnatolZ Электроника - это просто 60 24.12.2013 01:59
Копирую опто датчик фото метки. Помогите! Zemlyanov Микроконтроллеры, АЦП, память и т.д 23 13.02.2008 11:29


Часовой пояс GMT +4, время: 03:09.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot