ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Понедельник
1 июля
17761
LWW (02.12.2004 20:30, просмотров: 1489)
Взломан микроконтроллер серии QProx Шутка 8) Мною написан код измерения ёмкости сенсорного датчика, который призван заменить известные всем микросхемы серии QProx производства Quantum Research Group. При этом схемы подключения внешних компонентов (единственной ёмкости), принципы изготовления сенсора, разводки и защиты входных цепей остаются теми же, что и в оригинальных изделиях QProx. На основе моего кода можно создавать аналоги QTouch, QLevel, QMatrix, а так же новинки Quantum: линейный датчик QSlide (QT401) и кольцевой датчик QWheel (QT510). В процессе поиска наиболее точного соответствия qprox мною были получены по крайней мере 4 алгоритма измерения ёмкости. Все они имеют разную чувствительность к сенсору и по крайней мере один алгоритм выбился в фавориты. При этом по "внешнему виду" он не является аналогом qprox (если смотреть осциллограммы) и работает в несколько раз быстрее, чем оригинальные алгоритмы Quantum. В фирменной документации Quantum указывается, что их чипы имеют значение burst length (цикл опроса одной клавиши), от 0.5 до нескольких десятков миллисекунд. Это очень долго, тем более если учесть, что клавишу желательно бы опрашивать минимум 25 раз в секунду и их может быть несколько. Для обычной switch кнопки Burst length моего кода не превышает 1500 машинных циклов и практически не зависит от частоты контроллера. Испытано на частотах от 1 до 10 мгц. Это значит, что к примеру на частоте контроллера 8мгц время опроса одной клавиши может быть максимум 200 микросекунд, реально ~ 100 мкс. Для QSlide и QWheel это время должно быть немного больше. Код устойчивый. Через пластик, толщиной 2-3 мм можно создать надёжную кнопочную панель. Проверялось так же через обычный лист ДСП - работает надёжно. В принципе, увеличив образцовую ёмкость а значит и время цикла можно создать весьма чувствительный датчик. А если "кнопки", вытравленные на текстолите, прикрыть только лишь декоративной плёночкой, то burst length можно смело сократить в 2-3 раза. Это истинно емкостной датчик. Вы можете держаться за землю, батарею, + или - питания, это не влияет на чувствительность сенсора. В случае безтрансформаторного питания от сети не важно, где будет ноль и фаза. Главное достоинство моего кода в том, что теперь не нужно приобретать чипы Quantum, тем более в России купить их невозможно. Не нужно увеличивать стоимость проекта внешними чипами, если вы хотите иметь сенсорную панель. Достаточно встроить в проект небольшой по размеру код, найти несколько свободных ножек контроллера и максимум 1% машинного времени. Код написан на Atmel AVR и может быть перенесён в любой МК. qprox (о) yandex