22.01.2013, 23:01 | #1 |
Новый Пользователь
Регистрация: 23.11.2009
Регион: 74
Сообщений: 20
|
Еще одна HID-клавиатура (combo)
Всем привет!
Для своего проекта pccar на андроиде слепил такую клавиатуру. Возможности -- регулировка громкости с помощью энкодера, и 4 (пока четыре) кнопки: home, menu, back, off. Исходные коды и прошивка в архиве. Значения входных напряжений с резистивной клавиатуры и генерируемые коды клавиш зашиты сразу в прошивку: смотрим файл "varForKeys.c" Массив adcValues -- значения, выдаваемые АЦП, массив keyMsg -- соответствующие коды клавиш. Как посчитать значения adcValues: 1. измеряем напряжение питание контроллера -- Ucc 2. измеряем напряжение на выводе 2 при нажатой кнопке -- Ukey 3. вычисляем значение АЦП -- округл(Ukey * 1024 / Ucc; 0) |
30.03.2013, 18:10 | #2 |
Пользователь
Регистрация: 20.09.2011
Возраст: 52
Город: Туапсе
Регион: 23, 93
Машина: Красно-оранжевый Ford C-Max "Букашка"
Сообщений: 45
|
А такого плана вещь можно замутить на Тини13? или не хватит памяти?
Последний раз редактировалось M@troskin; 30.03.2013 в 18:11. Причина: в цифрах ашипся |
30.03.2013, 21:39 | #3 |
Гуру
Регистрация: 19.09.2009
Возраст: 46
Город: Мелитополь
Регион: Украина
Сообщений: 2,022
|
Не хватит памяти.
|
26.06.2013, 15:48 | #4 |
Новый Пользователь
Регистрация: 26.06.2013
Возраст: 34
Регион: 06
Сообщений: 1
|
Разработанное программное обеспечение позволяет распознавать нажатия кнопок на ИК пульте и сопоставлять их с нажатием практически любой комбинации клавиш на клавиатуре.
__________________
testinside http://test-inside.com learnproperspanish learnproperspanish.com - learning spanish learn-french learn french by podcast pimsleurapproach pimsleur approach reviews - pimsleurapproach.biz |
29.08.2013, 11:31 | #5 |
Пользователь
Регистрация: 15.10.2012
Возраст: 41
Город: Москва
Регион: 77, 97, 99, 177
Машина: Kia Optima
Сообщений: 55
|
Подскажите, в винде эта клавиатура будет работать? Правильно понимаю что количество кнопок можно легко увеличить так как дискретность измерения АЦП 1024.
|
06.09.2013, 12:43 | #6 |
Пользователь
Регистрация: 15.10.2012
Возраст: 41
Город: Москва
Регион: 77, 97, 99, 177
Машина: Kia Optima
Сообщений: 55
|
Ну где все программисты? Никто подсказать не может?
|
19.09.2013, 07:36 | #7 | |
Новый Пользователь
Регистрация: 23.11.2009
Регион: 74
Сообщений: 20
|
Цитата:
Более того скажу -- разработка и тестирование велось под виндой... Количество кнопок можно увеличить (не 1024, конешно) З.Ы. если кнопки подключить к резистивной матрице R-2R, то и одновременные нажатия можно организовать... (алгоритм распознавания нажатия кнопкок, конечно, другой надо) сорри, что не отвечал -- редко здесь бываю... |
|
19.09.2013, 11:34 | #8 |
Пользователь
Регистрация: 15.10.2012
Возраст: 41
Город: Москва
Регион: 77, 97, 99, 177
Машина: Kia Optima
Сообщений: 55
|
Большое спасибо!
|
14.12.2013, 11:15 | #9 |
Старший Пользователь
Регистрация: 11.08.2013
Возраст: 35
Регион: 86
Сообщений: 445
|
Ребята на сколько я понял правильно;
собираем как показано на схеме, подбираем нужные сопротивление, вычисляем значение АЦП, потом полученные данные вводим в файл varForKeys.c в строку static int adcValues[KEY_COUNT] = { 770, 680, 510, 0 }; static char keyMsg[KEY_COUNT] = { 0x4a, 0x3a, 0x29, 0x3d }; // "Home", "Menu", "Back", "Off" вопрос, можно ли добавить в этот файл новые значения и новые кнопки с кодами клавиш? например так static int adcValues[KEY_COUNT] = {900, 800, 770, 680, 510, 0 }; static char keyMsg[KEY_COUNT] = {0x12, 0x81, 0x4a, 0x3a, 0x29, 0x3d }; // "Alt", "F12", "Home", "Menu", "Back", "Off" и как сделать так чтобы зажать одновременно 2 кнопки при помощи одного значения? Допустим на значении ацп 900 нам нужно зажать Alt+F12. |
14.12.2013, 13:42 | #10 |
Пользователь
Регистрация: 15.10.2012
Возраст: 41
Город: Москва
Регион: 77, 97, 99, 177
Машина: Kia Optima
Сообщений: 55
|
У меня не получилось. Прошивка заливается в процессор, считывается, проходит сравнение. При подключении к usb пишет что устройство не опознано.
|
Метки |
attiny45, hid, клавиатура |
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
Опции темы | Поиск в этой теме |
|
|