PDA

Просмотр полной версии : Клавиатура для инвалида на AVR или PIC



Юрий Несчетный
21.02.2013, 11:33
Коллеги!
Обращаюсь к вам с просьбой, т.к. в микроконтроллерах "чайник", надеюсь, пока!!!!

Нужно модернизировать (создать устройство на AVR или PIC) для инвалида с ДЦП.
Cейчас у него есть доработанная кем-то клавиатура Mitsumi PS/2 (на AT89S8252)
но она доживает последние дни от старости и износа. Фото могу выложить.

Основные функции:
- фиксация нажатия клавиш "Левый Shift", "Левый CTRL", "Левый Alt", "Правый "Shift", "Правый CTRL", "Правый Alt" -
при первом нажатии включается режим, при повторном - выключается.
- Светодиодная индикация включенного режима (из предыдущего пункта).
- Невозможность одновременного нажатия нескольких клавиш (например, расположенных рядом). Обрабатывается
только нажатая первой.
- При длительном удержании любой алфавитно-цифровой клавиши (буква, цифра) - она вводится только один раз.
- Установка на клавиатуре двух дополнительных кнопок - "ON/OFF Power", "Reset".

Если есть возможность, прошу помочь неравнодушных.

Спасибо.

ut1wpr
21.02.2013, 13:32
Равнодушных быть не может!
Сделать и можно и нужно.
Но сначала надо обговорить.
Приглашаю всю пишущую братию присоединяться. Будет готов алгоритм, будет и реализация. Тип МК пока не обговариваем.
Мои мысли:
По п.3 я понял, что полностью исключается автоповтор?
По п.4 уходить от интерфейса клавиатуры и вырабатывать два отдельных сигнала по отдельным линииям. Можно ли приделать к клавиатуре небольшую коробочку с двумя кнопками и тремя светодиодами? В таком случае работать можно будет со стандартной клавиатурой не вскрывая ее.
Первые два пункта пробовать реализовывать "на перехвате" обмена.
"Писатели" - ваши мысли... :)

Юрий Несчетный
21.02.2013, 14:02
По п.3 я понял, что полностью исключается автоповтор?
Да Виктор, Вы правы.

Можно ли приделать к клавиатуре небольшую коробочку с двумя кнопками и тремя светодиодами? В таком случае работать можно будет со стандартной клавиатурой не вскрывая ее.
Приделать можно. Но хотелось бы встроить все в саму клавиатуру - дабы вся индикация и кнопочки были "перед глазами и под рукой". Т.к. у человека нарушена координация движений, лишнюю коробочку он может сдвинуть, отломать и т.д. Хотя внешний вариант кажется мне весьма интересным.

Первые два пункта пробовать реализовывать "на перехвате" обмена.
Да, именно так и хотелось бы. Чтобы не привязываться к определенной модели клавиатуры. Сломал одну - просто переставить модуль в другую. Чуток слесарно-монтажных работ.

И глупая мысль посетила - ARDUINO??? Ваше мнение?

US-E-12
21.02.2013, 14:33
Может попробуете связаться с автором или приобрести вот такую http://reabiltech.ru/page11.php

RV4CD
21.02.2013, 14:47
А почему обязательно МК и софт? Может быть решение попроще найти? Например п.п.1,2 и 5 можно реализовать кнопками (включенными в параллель с штатной клавой) с фиксацией и двумя парами контактов, туда же и светодиод воткнуть... Такую "навеску" можно будеть примостить к любой клавиатуре не делая из неё "авторский хенд-мейд". П.4 можно автозаменой (в текстовом редакторе, хоть и геморно) "победить". Остается проблема с п.3 но его можно нейтрализовать применяя клавиатуру старого образца (ещё с герконами) где клавиши далеко друг от друга расположены или как в предыдущем посте: верхней пластиной-транспорантом из оргстекла например. В конце концов нажимать клавиши не пальцем, а тонким стержнем (карандаш, ручка и проч.). ИМХО конечно...но почему нет?

Юрий Несчетный
21.02.2013, 14:53
Дмитрий, я тоже за "штатное" применение.
Дело в том, что у моего товарища уже есть клавиатура (правда на последнем издыхании), к логике работы которой он привык.
Догадайтесь - как человеку с его диагнозом переучиваться на другую.

А кнопки Power и Reset я ему вывел отдельной коробочкой (параллельно существующим) - неудобно.

Вот поэтому -то, стоит задача максимально повторить уже существующий девайс.

npol
21.02.2013, 15:39
Для таких людей кнопки должны быть большими, примерно 2х2см.
Все клавиши должны быть разделены перегородками высотой чуть выше клавиш.
Тастатура должна быть тяжёлой,
Пример клавиатур для инвалидов с ДЦП. Полключение- USB.

ut1wpr
21.02.2013, 16:02
Дмитрий, я тоже за "штатное" применение.
Дело в том, что у моего товарища уже есть клавиатура (правда на последнем издыхании), к логике работы которой он привык.
Догадайтесь - как человеку с его диагнозом переучиваться на другую.

А кнопки Power и Reset я ему вывел отдельной коробочкой (параллельно существующим) - неудобно.

Вот поэтому -то, стоит задача максимально повторить уже существующий девайс.Внешний вид существующей - в студио. Не стоит рожать нерожаемое. Будет обговоров на сто страниц. Хочет такую же? Надо такую же и делать. Имхо.

Юрий Несчетный
21.02.2013, 17:05
Внешний вид существующей - в студио.
Виктор, завтра утром выложу фотки - внутри и снаружи. Сегодня зайду к нему и сфотографирую.

По виду - обычная клавиатура Mitsumi (старая еще, тяжелая, клавиши на резинках).
Только в клавиши Shift, Ctrl, Alt (справа и слева) вмонтированы светодиоды-индикаторы включения режима (нажатия).

Вот и все по дизайну.


Для таких людей кнопки должны быть большими, примерно 2х2см.
Все клавиши должны быть разделены перегородками высотой чуть выше клавиш.
Тастатура должна быть тяжёлой,
Пример клавиатур для инвалидов с ДЦП. Полключение- USB.

Может попробуете связаться с автором или приобрести вот такую http://reabiltech.ru/page11.php
Коллеги спасибо за инфу.
Но есть один немаловажный аспект - ЗА КАКИЕ ШИШИ????
Мы ж дикари, не у Эуропе. Сами знаете, как живут инвалиды. Тут компьютер всем миром модернизировали до CoreDuo 3Ghz/2 Gb RAM.

aleksandr130
21.02.2013, 18:18
Одно время была куча всяких клавиатурных утилиток с кучей настроек ,наверняка есть аналогичные драйвера позволяющие работать человеку с ограниченными возможностями с обычной клавиатурой .

Юрий Несчетный
21.02.2013, 18:27
наверняка есть аналогичные драйвера позволяющие работать человеку с ограниченными возможностями с обычной клавиатурой
Искали подходящие. Не нашли. Только средства Windows/

UR4UDT
21.02.2013, 20:05
Будем долго обсуждать.
Если есть в продаже подходящие варианты-куплю для Вас.
Варианты в личку или ur4udt@mail.ru/

Юрий Несчетный
21.02.2013, 20:19
Если есть в продаже подходящие варианты-куплю для Вас.
Валерий, в том то и дело, что подходящей по привычной для "заказчика" логике работы ничего нет
Он уже несколько лет пользуется клавиатурой, которую делали на заказ в Киеве. Теперь клавиатура почти пришла в негодность
(физический износ). И нужно повторить тот вариант которым он пользуется.

Купить - ??? Видимо варианты есть, но опять же.... логика работы.... привыкание.
В идеале - доработать бы вот это http://reabiltech.ru/page11.php
Если бы он мог внятно разговаривать....

Так-что вот такие проблемы.

UR4UDT
21.02.2013, 20:29
Юрий, видимо нужно ориентироваться на то, что есть. Это реальнее и доработать всем миром.
Этим вопросом занимаются специалисты.
В любом случае координаты я оставил. Тем более, что мы где-то не далеко.

aleksandr130
21.02.2013, 20:38
тогда может просто имплантировать старый контролер в новые кнопки ,наверное хорошо подойдут клавиатуры с герконовыми кнопками от старых компов - по ним не постучишь и паяются хорошо .

Юрий Несчетный
21.02.2013, 20:41
тогда может просто имплантировать старый контролер в новые кнопки
Ой, завтра выложу фотки. Посмотрите.
Боюсь, что там имплантировать что-то страшно.
Я боюсь к этой клаве лишний раз прикоснуться. Мне легче свой Кенвуд разобрать, чем эту клавиатуру.

aleksandr130
21.02.2013, 21:47
сложно советовать - но клавиатура просто матрица кнопок ,даже если оторвать контролер от контактов то замыканием тех или иных ножек увидим на экране символ нужных клавиш .
На мой взгляд это на порядки проще чем делать с нуля ,да и хозяин клавы уже наверное привык к логике ее работы .

RZ6DD
21.02.2013, 22:05
Может попробуете связаться с автором или приобрести вот такую http://reabiltech.ru/page11.php


Так может и сделать корпус с отвествиями, как на ссылке, из дюраля или пластика, а вовнутрь
стандартную клавиатуру вставить.
Придется только напильником поработать...

73! Александр.

Юрий Несчетный
21.02.2013, 22:09
Придется только напильником поработать...
Возможно и придется.
Однако при помощи этой панели Ctrl не зафиксируешь...

aleksandr130
21.02.2013, 22:42
если поставить просто кнопку с фиксацией

RA9YTJ
22.02.2013, 04:02
В компиляторах от Mikroelektronika во всех есть библиотека интерфейса клавиатуры ps\2, там и пример в виде клавиатуры простой. Хорошо то, что эти компиляторы и Си и паскаля и бейсика и для всяких контроллеров 51-52 AVR PIC ARM а так же есть библиотека превращения контроллера в виде HID устройства для компьютера.
Известно, что USB клавиатура (а так же мышка и джейстик) это HID устройство, драйвер для которого есть во всех операционках.
Суть идеи вот в чем:
Делается устройство на одном микроконтроллере поддерживающем USB это например STM32F103 или например PIC 18F2550 (он на 5в) и интерфейс PS\2 и несколько светодиодов на портах. Схема получается очень простой, особенно на пике.
Используем ЛЮБУЮ СТАНДАРТНУЮ ps2 клавиатуру, которую подключаем к устройству. Известно, что клавиатура тупо передает скан коды нажатия и отпускания кнопок.
Прошивка транслирует эти сканы из ps2 в USB с модификацией в нужных местах, например если пришел скан нажатия shift, то последующий скан отжатия не пропускать, а послать в случаи появления нового скана нажатия и т.д.
Получается весьма простое и удобное универсальное устройство.
Есть недостаток, библиотека ps2 односторонняя, по этому светодиоды на самой клавиатуре работать не будут, по этому их надо продублировать на устройстве.
Весьма заманчиво делать на пике, т.к. он в дип корпусе и питается 5в.
Примеры использования библиотек HID и PS2 есть в хелпе компиляторов.
Сам я с пиками не работал, по этому нужны люди кто с ними "на короткой ноге".
Алгоритм и схему думаем здесь обсудим.

Юрий Несчетный
22.02.2013, 07:15
Делается устройство на одном микроконтроллере поддерживающем USB

Алгоритм и схему думаем здесь обсудим.

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

ut1wpr
22.02.2013, 08:28
Здравствуйте.
Из предыдущих постов я понял, что основной проблемой будет механическая часть клавиатуры. Обычная стандартная не подходит. Ведь так? К сожалению, у меня нет возможностей и близко подходить к этой теме. Подключайтесь, спецы!
Юра Несчетный. Как ТС, пожалуйста, постарайся более четко определить ТЗ ПО КАЖДОЙ СПЕЦИАЛЬНОЙ КЛАВИШЕ. Это важно для последующей отработке алгоритмов.
Наличие Сергея RA9YTJ (привет, Сережа!) в обговаривании радует и обнадеживает :)
У меня есть небольшой опыт применения PIC18F4550 - сделал на нем эмулятор клавиатуры для ФлайСима (люблю полетать) - при вращении энкодеров, щелкании тумблерами и кнопками преобразует их сигналы в скан-коды и гонит в компьютер. ФлайСим по этим кодам запускает макросы. Особых проблем по применению USB стека от мелкомягких не заметил. Работает как HID-устройство, как Сергей заметил. Со стеками других вендоров (STM / Atmel) не работал, не буду врать. Наверняка, есть ребята, которые с ними прошли это.
Я думаю еще в сторону голубого зуба. У меня есть клава с его интерфейсом. Воткнув в стационарный комп модуль блютуса, получил ДВЕ клавиатуры. Они не конфликтуют. Комп прекрасно обрабатывает скан-коды от обеих. Возможно, беспроводная тоже может рассматриваться. Основной недостаток из области механики - она очень легкая. Не уверен, что это хорошо для ДЦП. Хотя из легкого сделать тяжелое всегда можно. Сложнее наоборот. :)
Вот пока все.

Юрий Несчетный
22.02.2013, 08:58
Внешний вид существующей - в студио. Не стоит рожать нерожаемое. Будет обговоров на сто страниц. Хочет такую же? Надо такую же и делать. Имхо.
Виктор, вот фото!
Клавиатура обычная. Только добавлены светодиоды включения режимов (видно на фото), ну и естественно прошивка изменена.

RA9YTJ
22.02.2013, 09:47
На вид "клава" конечно очень старая, кстати, "мицуми классик" вроде еще продается, чистил их не раз, вроде они не меняли схему, может взять купить новую(300р) и попробовать заменить контроллер?
Попробуйте побольше фото с большим разрешением выложить контроллеров и клавиатур доступных замены, может обойдемся простой заменой?
Конечно, с учетом износа и возможности повреждения (пролито что-то) нужно именно подходить со стороны заменяемости без доработок. Блютуз конечно интересно, но нужно лив этом контексте?
Кстати у меня еще возникло несколько мыслей по реализации, важно знать на сколько ограничен физически человек. Как он обращается с мышкой?

ut1wpr
22.02.2013, 10:03
Вроде бы исходные двнные под софт есть. Уточняю:
Все клавиши контрол, шифт и альт левые и правые работают в триггерном режиме. Индикация активного состояния, встроенная под клавишу. По включении все неактивны.
Автоповтор исключен.
Одновременные нажатия исключены для всех клавиш, кроме упомянутых контрол, шифт и альт. Иначе теряется смысл их наличия.
Замена кабеля USB. Вернее использование двух кабелей. По одному нэйтив USB. По другому Power & Reset. Тип механического интерфейса по этим двум сигналам мне неясен и неизвестен. Возможно применение отдельно разъема типа СГ-3.
На приведенных фотографиях не нашел на морде клавиатуры кнопок включения и сброса.
От себя добавлю.
Увеличить время защитного интервала от дребезга по сравнению с обычными. Наверное, есть смысл особо увеличить время блокирования повторного нажатия после отпускания. Компенсирует дрожание пальца.

Добавляйте.

Добавлено через 5 минут(ы):


Блютуз конечно интересно, но нужно лив этом контексте?У блютуса один плюс - отсутствие шнурка. А так ли это важно? Согласен с вопросом. Тем более, что сильно усложняется условие передачи сигналов включения и сброса. Почти невозможно.

Юрий Несчетный
22.02.2013, 10:18
Все клавиши контрол, шифт и альт левые и правые работают в триггерном режиме. Индикация активного состояния, встроенная под клавишу. По включении все неактивны.
Автоповтор исключен.
Одновременные нажатия исключены для всех клавиш, кроме упомянутых контрол, шифт и альт. Иначе теряется смысл их наличия.
Совершенно верно, Вы правы.

На приведенных фотографиях не нашел на морде клавиатуры кнопок включения и сброса.
Их пока нет. Я сделал временно в отдельной коробочке, параллельно кнопкам на системном блоке. Но так ему неудобно. Мне проще вклеить в клавиатуру две кнопочки.Если, конечно,
будет программная поддержка.

Увеличить время защитного интервала от дребезга по сравнению с обычными. Наверное, есть смысл особо увеличить время блокирования повторного нажатия после отпускания. Компенсирует дрожание пальца.
Да, было-бы очень неплохо. Я не подумал об этом.

Виктор, спасибо за столь подробную формализацию задачи.


Как он обращается с мышкой?
С мышкой или трекболом он вообще не общается. На цифровой клавиатуре использует клавиши.

RA9YTJ
22.02.2013, 10:38
Юрий Несчетный, Первое: если как я предлагал, то там со сканами можно делать все что угодно, менять, не пропускать, запоминать, тут проблем нет, в с перезагрузкой не знаю, знаю одно, что при нажатии на рабочем столе вызывается окно выкл\перезагрузки. Мышку можно эмулировать аналоговым джойстиком, так удобнее.

ut1wpr
22.02.2013, 11:32
Сергей, я видел живых людей с ДЦП. Джойстики, треки и мыши - все мимо. У них с самостоятельной едой проблемы, какие уж там джои? :(
Чел до клавы добрался - уже почти подвиг.
Юрий, при помощи МК клавиатуры, скорее всего обрабатывать управление железом компьютера не получится. Слишком извратно сложно все получится. Как я и писал, реальнее протянуть два дополнительных провода. А кнопки встраивай куда удобнее.

UR4UDT
22.02.2013, 12:03
Возможно, решение гораздо проще?
Юрий, предложите попробовать человеку (с вашей помощью) следующее:
-панель управления - специальные возможности - клавиатура.
залипание -"птичка", двойное нажатие-"птичка".
Опробовал: одно нажатие клавиши верхнего регистра - одна заглавная буква, а потом строчные;
два нажатия - все заглавные, до повторного нажатия шифта.
Аналогично с Ctrl и Alt.
Недостаток: отсутствие индикации.
За несколько минуту тестирования режима одним пальцем прошел несколько сайтов и ввел в Word текст с формулами.
Подберите человеку удобную клавиатуру (созвонимся).

Юрий Несчетный
22.02.2013, 13:26
Слишком извратно сложно все получится. Как я и писал, реальнее протянуть два дополнительных провода. А кнопки встраивай куда удобнее.
Да, Виктор, только так и сделаю. Вместо отдельной коробочки кнопки встраиваю в клавиатуру.


Слишком извратно сложно все получится. Как я и писал, реальнее протянуть два дополнительных провода. А кнопки встраивай куда удобнее.
Да, Виктор, только так и сделаю. Вместо отдельной коробочки кнопки встраиваю в клавиатуру.

Подберите человеку удобную клавиатуру (созвонимся).
Валерий, я сегодня к ним еду, все окончательно уточню. И о том, о чем мы говорили вчера по телефону.

Юрий Несчетный
25.02.2013, 21:51
Коллеги, прошу прощения за молчание.
Замотался в выходные и сегодня по личным делам и работе.

В субботу был у своего знакомого, инвалида. Разговаривал с его бабушкой, наблюдал как он работает.
В меру своих возможностей, с учетом того, о чем мы здесь говорили, пытался понять, что ему нужно и как
это достичь.

Сейчас формулирую более конкретное "техзадание".

Вкратце, необходимо просто доработать стандартную (возможно мультимедийную) клавиатуру USB.
Из потока данных ОТ клавы в компьютер выловить необходимое и обработать.
По аналогии с тем, что делал Виктор UT1WPR в Бэнд декодере для Кенвуда - http://www.cqham.ru/forum/showthread.php?t=936 6&page=1
Виктор, на Вас вся надежда.

Коллеги спасибо.

RA9YTJ
26.02.2013, 04:17
Юрий Несчетный, прилично усложнили задачу:

Вкратце, необходимо просто доработать стандартную (возможно мультимедийную) клавиатуру USB.
Это значит нужен микроконтроллер с host-usb портом. На такое способен типа STM32F407. И прошивка сильно усложняется.
Тут даже проще смотрится вариант замены контроллера в самой клавиатуре, но тогда выход из строя ее потребует решать проблему заново.

Юрий Несчетный
26.02.2013, 07:33
Тут даже проще смотрится вариант замены контроллера в самой клавиатуре, но тогда выход из строя ее потребует решать проблему заново.
Спасибо, но это не вариант:cry:. Вы же сами написали - потребует решать проблему заново.
Ну а насчет контроллера - вопрос обсуждаемый. Как скажут ГУРУ:-P.
Будем ждать Виктора UT1WPR.

RA9YTJ
26.02.2013, 07:57
Юрий Несчетный, я к тому, что доступных контроллеров с 2 усб нет.
Получается нужно 2 контроллера соединенных между собой по какому то интерфейсу (не важно)
один как хост для hid usb клавиатуры, другой подключаем к компьютеру.
Примеров для HostUSB HID устройств не встречал.
А вот ps2 есть варианты.

Юрий Несчетный
26.02.2013, 08:28
А вот ps2 есть варианты.
Если PS/2 намного проще, ИМХО, устроит и такой вариант. USB думал как универсальное решение.

RA9YTJ
28.02.2013, 05:23
Набросал схему.
133552
процессор pic18f4550

Юрий Несчетный
28.02.2013, 07:14
Набросал схему.
Сергей, огромное Вам спасибо.
Сегодня попытаюсь купить PIC и начать макетировать! Кварц на 4 МГц пойдет?
Подскажите пожалуйста - 18f4550 можно шить программатором ExtraPIC??? Есть у меня такой.
Или нужен PICKit???

RA9YTJ
28.02.2013, 08:25
Тут так, я говорил, что с пиками не работал, по этому, по этим вопросам надо к практикующим, а кварц на 8МГц.
Я, конечно, могу сделать под stm32f103, но там добавится стабилизатор на 3.3в, и программировать ее можно через обычный COM порт с преобразователем уровней, типа МАХ232.
С стм32 для меня надежнее, я смогу даже аппаратно проверить, т.к. есть демо плата. Так что смотрите, если на пике, но нам нужна помощь спецов, если на стм то думаю справимся.
Не обещаю тока быстро. Но конечно исходники будут.

Юрий Несчетный
28.02.2013, 13:20
Я, конечно, могу сделать под stm32f103, но там добавится стабилизатор на 3.3в, и программировать ее можно через обычный COM порт с преобразователем уровней, типа МАХ232.
Сергей, а на какой именно???? ---- http://www.imrad.com.ua/search.shtml?qs=stm3 2f103&query=any&skip=0
И насколько усложнится схема?

RA9YTJ
28.02.2013, 15:39
да пойдет вот самый дешевый STM32F103C6T6A
Ну а в схеме, как сказал, появится стабилизатор на 3.3в, т.к. стм 3.3вольтовая, так же перемычка в виде джемпера.Главная сложность это сделать печатку и припаять LQFP48. шаг 0.5

Юрий Несчетный
28.02.2013, 16:11
да пойдет вот самый дешевый STM32F103C6T6A
Ну а в схеме, как сказал, появится стабилизатор на 3.3в, т.к. стм 3.3вольтовая, так же перемычка в виде джемпера.Главная сложность это сделать печатку и припаять LQFP48. шаг 0.5
Ну, ADF4360 и 9958 как-то паял. Трудно, но можно...
Печатку придется, наверное заказывать - утюгом такую не сделаешь.

RA9YTJ
28.02.2013, 16:52
Хотя сам не делал, но один проект на стм32 знакомый радиолюбитель сделал, используя ЛУТ, все получилось.

Юрий Несчетный
28.02.2013, 17:07
проект на стм32 знакомый радиолюбитель сделал, используя ЛУТ, все получилось.
Ну, дай Бог! Посмотрим, как получится. А макросы под STM есть в Лайоуте?

RA9YTJ
28.02.2013, 17:35
Конечно есть, ведь корпус LQFP48

Юрий Несчетный
28.02.2013, 21:38
to RA9YTJ
Сергей, послал Вам в Скайп запрос на авторизацию.
Спасибо.

ut1wpr
28.02.2013, 22:38
Юра Несчетный - Бэнд Декодер - это поделка студента. Перехват USB, анализ, обработка и замена с выводом в хост-порт - это круто. И бессмысленно.
PIC4550 шить надо PICKIT2. Им же и отлаживать. Иначе будет туго. На мой взгляд идея с перехватом - мертворожденое дите. Трудно, долго, ресурсоемко. Тем более, что еще и дорого на STM40x. Корпус у камушка не под ЛУТ. Будут проблемы с платой. Заказывать не очень быстро да и накладно.
Как вариант более простое решение - разобраться с матрицей клавиш выбранной для этой цели клавиатуры и наваять все с нуля. У мелкомягких есть мощная поддержка USB стека - Microchip Solutions v2010-10-19. Большое количество работающих примеров под разные МК от Микрочипа. В том числе и для демобордов. В корне библиотеки есть проект USB Device - HID - Keyboard. Практически доработка нужна только на скан кнопок. Мощное описание прямо в тексте.
Более простое решение - возврат к PS/2. Не совсем понимаю такую уж необходимость именно USB интерфейса. Никто пока убедительно этого не обосновал. У человека из клавиатуры в любом случае уходит кабель. Далее ему все равно, куда он там будет воткнут. Зато PS/2 решение НАМНОГО проще, выбор МК намного шире, круг "реализаторов" шире.
Теперь о грустном. У меня по работе огромные трудности. Произошел процесс поглощения нами другой компании, совершенно иные технологии, все рушится. Я практически живу на работе. Сколько продлится такое состояние - неизвестно. Не могу даже лечь в больницу, а мне нужно было это сделать еще в декабре. Диабет, разрушение сосудов в обеих глазах. В правом уже кровоизлияние. Как только с работой разберусь, сразу лягу. Так что помощник из меня оказался никудышний. Разве на уровне консультанта.
Но не все так плохо в этом мире. Пока еще я вижу. Надежда умирает последней...
Всем удачи.

Добавлено через 15 минут(ы):


Конечно есть, ведь корпус LQFP48Сережа, у меня так и не получилось с STM (даже 48) нормально разаодить в Лэйауте. Но нет худа без добра. :) "Подсел" на Дип Трэйс. На сегодня полностью устраивает. Естественно, как любителя, профессионалы наверняка на другом работают.
133646
Пока я добился 100% повторяемости за счет работы с ламинатором и сухому методу. Печатаю на подложке от самоклейки. 0.1 практически всегда получается. 0.2 - это уже гарантировано. Отрегулировал прижимы валков, подобрал температуру - результат на картиночках.
133645
STM32F100C4T6 - самый дешевый. У нас 11 грн. Около полутора баксов. Для Украины совсем дешево.

Юрий Несчетный
28.02.2013, 22:58
Теперь о грустном.
Виктор, спасибо Вам огромное за участие и консультации.
Давайте не будем грустить. Поправляйтесь. Может я лезу не в свое дело, но плюньте на рабочие проблемы, лечитесь. Здоровье ведь самое главное. Простите.

Но не все так плохо в этом мире. Пока еще я вижу. Надежда умирает последней...
Все в этом мире позитивненько, как говорит моя великовозрастная дщерь. И бросайте это Ваше "...пока...".

Более простое решение - возврат к PS/2. Не совсем понимаю такую уж необходимость именно USB интерфейса. Никто пока убедительно этого не обосновал. У человека из клавиатуры в любом случае уходит кабель. Далее ему все равно, куда он там будет воткнут. Зато PS/2 решение НАМНОГО проще, выбор МК намного шире, круг "реализаторов" шире.
Да, уже решили, "вернулись" к PS/2. Про USB я погорячился, думалось про возможное подключение клавиатуры к ноуту. Ведь проект некоммерческий, будет в широком доступе (по крайней мере, здесь, на сайте).
И, думаю будет востребован. Ибо людей, с диагнозом как у моего "заказчика" - достаточно. Если мы, всем миром, сможем им помочь -- нам, пожалуй, где-то зачтется.

Будут проблемы с платой. Заказывать не очень быстро да и накладно.
Есть возможность делать быстро и недорого "зеленые" платы. Я уже забыл про Positiv или утюг:-P.

Тем более, что еще и дорого на STM40x
Пускай будет на STM, если это облегчит кому-то жизнь. Не все ведь продается и покупается. Даже во время глобального "покращення".

Еще раз огромное Вам спасибо. Надеюсь, что Вы не оставите нас без вашего внимания и советов.
С уважением, Юра.

UR4UDT
28.02.2013, 23:23
Юрий, ещё раз внимательно прочитал все 48 сообщений.
Тех.задания нет. Проблема очерчена, возможно, в личных сообщениях?
Разговор о контроллерах, проблемах с печ.платами.
Это важно! Но на втором этапе.
Повеяло холодком от "проблемы".
Если решение уже найдено - не мешало бы известить читателей темы.
Что-то не так?

Юрий Несчетный
28.02.2013, 23:35
Если решение уже найдено - не мешало бы известить читателей темы.
Валерий, сорри. Мы тут полемизируем. Ибо в споре рождается истина.

На данный момент, по любезному предложению Сергея RA9YTJ остановились на контроллере STM.

В плане техзадания - клавиатура PS/2, триггерный режим кнопок Ctrl, Alt, Shift, светодиодная индикация нажатия этих кнопок. Это первый этап, надеюсь.

Вся информация будет здесь.


Разговор о контроллерах, проблемах с печ.платами.
Это важно! Но на втором этапе.
Ну почему на втором этапе? параллельно делать нужно. По схеме, предложенной Сергеем я делаю плату, макет, ну и далее, думаю, понятно.

Genadi Zawidowski
28.02.2013, 23:43
Кому, может, пригодится - проект, написанный на "C", где есть и перехват кнопок и формирование нажатий для компьютера..

ut1wpr
01.03.2013, 01:42
В плане техзадания - клавиатура PS/2, триггерный режим кнопок Ctrl, Alt, Shift, светодиодная индикация нажатия этих кнопок.Опущены важные моменты. Отсутствие автоповтора. Увеличены тремор-тайминги. Разрешение одновременного нажатия только для спецклавиш контрол, шифт и альт. При "одновременном" нажатии остальных - реакция "кто первый встал, того и тапки". Изначально все это было озвучено, насколько я помню.

Юрий Несчетный
01.03.2013, 07:22
Опущены важные моменты. Отсутствие автоповтора. Увеличены тремор-тайминги. Разрешение одновременного нажатия только для спецклавиш контрол, шифт и альт. При "одновременном" нажатии остальных - реакция "кто первый встал, того и тапки". Изначально все это было озвучено, насколько я помню.
Да, да Виктор. Конечно. Это я вчера упустил. Отвечал уже полусонный, вот и упустил. Простите.

Добавлено через 6 минут(ы):

Вот уточненное "техзадание" -

- Процессор STM (возможно, в будущем, PIC),
- Клавиатура PS/2,
- Триггерный режим кнопок Ctrl, Alt, Shift, светодиодная индикация нажатия этих кнопок,
- Отсутствие автоповтора,
- Увеличены тремор-тайминги,
- Разрешение одновременного нажатия только для спецклавиш Ctrl, Alt, Shift,
- При "одновременном" нажатии остальных - реакция "кто первый встал, того и тапки",
- Программирование через обычный COM порт с преобразователем уровней, типа МАХ232.

Вроде ничего не забыл.
Спасибо.

ut1wpr
01.03.2013, 08:41
Если процессор выбран изначально, зачем менять его в будущем? STM вполне решает данную задачу.
Требование по интерфейсу программирования совершенно необязательно. Если изготавливать серийно, ULink-2, JLink или тот же ST-Link сделают это без проблем (зависит от среды программирования). А вот оставить свободным порт JTAG - это было бы не лишним. Если хватит GPIO на матрицу.
Обновлять прошивку (если будет чем обновлять, и если вообще это нужно) можно через кабель USB-COM. Его внешний интерфейс в TTL уровнях. Убрать лишний компонент, не несущий никакого функционала в обычном режиме - святое дело.
Буду очень рад диалогу с Сергеем. Его мнение важно, с ним приятно общаться. И продуктивно. :)

RA9YTJ
01.03.2013, 08:47
ut1wpr,спасибо за добрые слова.
Я придерживаюсь первоначальной мысли об устройстве в виде переходника между ps2 и usb. Менять конструкцию готовой клавиатуры думаю сложно.
Все означенные требования выполнимы в виде переходника.

Юрий Несчетный
01.03.2013, 08:53
Буду очень рад диалогу с Сергеем. Его мнение важно, с ним приятно общаться. И продуктивно.

Я придерживаюсь первоначальной мысли об устройстве в виде переходника между ps2 и usb. Менять конструкцию готовой клавиатуры думаю сложно.
Все означенные требования выполнимы в виде переходника.
Коллеги, огромное спасибо!
Как "чайник" в программировании контроллеров с благодарностью приму все ваши замечания и предложения.

ut1wpr
01.03.2013, 13:23
ut1wpr,спасибо за добрые слова.
Я придерживаюсь первоначальной мысли об устройстве в виде переходника между ps2 и usb. Менять конструкцию готовой клавиатуры думаю сложно.
Все означенные требования выполнимы в виде переходника.Возражен ий нет. Но я так и не понимаю, почему, все-таки в USB надо переходить? У тебя есть наработки под камень с USB? Я работал только со стеком от Микрочипа. Попросту, не умею. А учится - уйдет время...
Я не профессионал, пока не вижу возможности освоения, увы.

RA9YTJ
01.03.2013, 15:27
ut1wpr, к счастью есть примеры под все, а mikroc уже даже встроены с подробным хелпом. Но, возможно использовать и библиотеки от st.

Veka
01.03.2013, 15:59
Про USB я погорячился, думалось про возможное подключение клавиатуры к ноуту

Сейчас продают почти везде и очень дёшево китайские переходники "USB-PS/2-adapter"
133695

Юрий Несчетный
01.03.2013, 18:13
Сейчас продают почти везде и очень дёшево китайские переходники "USB-PS/2-adapter"
Ну дай Бог, будет законченное устройство - подберем и переходник.

compromis
01.03.2013, 18:20
Добрый вечер Всем!
Извините!...не много не в тему.
Юрий...посмотрите свой майл, я там по NWT кое что сбросил.
73! С Уважением, Владимир.

RA9YTJ
02.03.2013, 05:21
Короче нашел ГОТОВЫЙ проект переходника из PS2 в USB HID клавиатуры.
Он на 18f4550 и написан на Паскале.
Остается разобраться и добавить нужные функции (вспомнить молодость 1 курс паскаль :-P).
Недостаток, что нет у меня возможности отлаживать.
Хотя посмотрел proteus в нем есть усби и этот чип!
Попробую сэмулировать...

ut1wpr
02.03.2013, 11:59
Сергей. Есть вопросы принципиальные. Переходник PS2 в HID на них ответы не даст. :)
По нашему ТЗ требуется увеличить защитный антидребезговый интервал при нажатии и при отпускании. Этот интервал формируется МК клавиатуры. У нас нет возможности им управлять. Т.е. мы не знаем момента события "контакт замкнулся" и "контакт разомкнулся".
Клавиатура отсылает компьютеру скан-коды отдельно по нажатию и отдельно по отпусканию. При автоповторе компьютеру отсылаются эти же сканы. Возникает вопрос, как определить в серии передачи скан-кодов автоповторы для их отсечения? Нам неизвестно, было ли отпускание клавиши на базовой клаве по желанию оператора или это действительно автоповтор. Мы же имеем дело только с потоком скан-кодов.
Перевод управляющих клавиш в триггерный режим на мой взгляд возможен только в базовой клаве. Вмешиваясь в поток очень трудно будет осуществить эмуляцию триггерного режима. Обрати внимание, я не говорю, что это невозможно. Но очень сложно и похоже на нестабильные "костыли".
Управление светодиодами, вмонтированными в управляющие клавиши базовой клавиатуры из "переходника" тоже не совсем просто. Вернее очень сложно.
Как видишь, все идет к тому, что надо просто заменять МК клавиатуры и писать свою программу.

Отсутствие у тебя отладочной платы на том МК, на котором будешь писать сильно затруднит кооперацию. Протеусу я не доверяю из принципиальных соображений. Хотя я знаю, что у тебя есть коллеги, которые по твоим наработкам потом макетируют и результаты действий служат тебе основой для изменений при отладке - но это не совсем удобно. Нужны коллеги, их желание и время, которое растягивается при таком способе.
А почему все-таки ты не хочешь реализовать на том же STM (разрядность и производительность не имеют значения в данном случае) небольшую платку на место используемой клавиатуры?

RA9YTJ
02.03.2013, 13:40
Насколько известно автоповтор это привелегия драйвера, клавиатура посылает только нажатие или отжатие клавиши.
Соответственно, тригерный режим просто реализовать, нажал сшифт, послал код нажатия ее, отпустил, ничего не послал, послал отжатие только при получении нового нажатия ее, нажал любую клавишу, больше не пропускать нажатий, а после 500мсек передать отжатие если даже не было его от клавы. А светодиоды в самом переходнике ставить.
Просто такой вариант я хоть как то понимаю сделать, а заменить контроллер мне будет сложно. это надо полностью изучать протокол.
Ну синтезы в основном отлаживал в протеусе, если знать его глюки и особенности то он очень помагает.

Genadi Zawidowski
02.03.2013, 13:48
автоповтор это привелегия драйвера
Нет, в PS/2 клавиатуре автоповтор в виде последовательности символов есть уже на уровне передаваемых по кабелю последовательностей.

RA9YTJ
02.03.2013, 14:55
Похоже так.
Тут еще драйвер протеуса виртуального усб вешает комп, так, что просимулировать не удалось.
Проекты для стм прикрасно работают как простой hid и как мышка, но категорически не хотят как клавиатура :cry:
Так что пока тупичекс...

ut1wpr
02.03.2013, 22:00
Сережа, я тут колупнулся в кишочках своей Семерки, в настройках спецвозможностей. Там практически все, о чем мы говорим, предусмотрено.
Я привожу скрины фрагментов, попробуйте на своих Осях, есть ли там похожие и в таком изобилии?
133807 133808 133809

Заодно прикиньте, чего еще не хватает.
Может, так и оставить? В тексте сказано, что эти настройки сохраняются и каждый раз при включении их заново вводить не надо. Да что я треплюсь, сами все прочитаете... :)

UR4UDT
02.03.2013, 22:29
Писал об этом в #30 применительно к XP. В "семерке" еще больше расширено.

ut1wpr
03.03.2013, 00:13
Писал об этом в #30 применительно к XP. В "семерке" еще больше расширено.Вроде, у больного как раз ХР-юша и поставлена. Потому и спрашиваю, есть ли функционал Семерки в ХРюше? Сам проверить не могу, везде семерочное окружение. Что на работе, что дома.

Юрий Несчетный
03.03.2013, 00:25
Вроде, у больного как раз ХР-юша и поставлена.
Да Виктор, ХР там и стоит.
Хрен знает, почему не устраивает внутренний Виндовый функционал. Но видимо, есть какие-то соображения, почему покупалась доработанная клавиатура.
Фото я ж выкладывал. Кстати, там стоит старая Атмега.

Ivan_007
03.03.2013, 00:33
Это не мега, это Атмеловский клон 8051. Не проще ли прошивку считать, если незалочена она, и в новый зашить.
Если эта клавиатура человека устраивает, то можно клонировать чип и всунуть в такуюже или подобную "клаву". Они практически все, те которые ps/2 на 8051 подобном чипе сделаны. Матрицы кнопок - тоже в основном все одинаковые.

Юрий Несчетный
03.03.2013, 00:37
Не проще ли прошивку считать, если незалочена она, и в новый зашить.
Увы....

Ivan_007
03.03.2013, 00:49
вот кое что http://bascom.at.ua/publ/atomnaja_klaviatura_ vinduksoida_hid_usb/1-1-0-54
http://www.obdev.at/products/vusb/hidkeys.html
http://forum.datagor.ru/index.php?showtopic= 333
(http://bascom.at.ua/publ/atomnaja_klaviatura_ vinduksoida_hid_usb/1-1-0-54)

Ivan_007
03.03.2013, 02:05
Думаю то что нужно http://mg8.org/rump/

Юрий Несчетный
14.04.2013, 12:49
Коллеги, прошу прощения.
Тема все еще актуальна.
Временно выкрутился из патовой ситуации. Но только временно.
Если у вас появилось время и возможность помочь, давайте реанимируем тему.
Спасибо.

Ivan_007
14.04.2013, 13:34
Юрий, а ссылку которую я давал в 74 сообщении рассматривали?

Юрий Несчетный
14.04.2013, 13:36
Юрий, а ссылку которую я давал в 74 сообщении рассматривали?
Да Иван, смотрел. Только нихрена не понял, с англицким очень плохо дружу, с программирование еще хуже.
Спасибо.

Ivan_007
14.04.2013, 13:40
Вкратце, товарищ поставил в старую клавиатуру мегу8 и сделал из нее "клаву юсб".
Тем более, что исходники в статье присутствуют, можно попробовать и сделать нечто подобное. Единственно что клавиатура юсбшной станет

Юрий Несчетный
21.04.2013, 09:11
Короче нашел ГОТОВЫЙ проект переходника из PS2 в USB HID клавиатуры.
Он на 18f4550 и написан на Паскале.
Остается разобраться и добавить нужные функции (вспомнить молодость 1 курс паскаль ).
Недостаток, что нет у меня возможности отлаживать.
Хотя посмотрел proteus в нем есть усби и этот чип!
Попробую сэмулировать...

Я придерживаюсь первоначальной мысли об устройстве в виде переходника между ps2 и usb. Менять конструкцию готовой клавиатуры думаю сложно.
Все означенные требования выполнимы в виде переходника.
Сергей, прошу прощения. Есть какие-то подвижки? Или Вы не занимались более этим проектом.
Было бы оптимально в виде переходника.

- Процессор STM (возможно, в будущем, PIC),
- Клавиатура PS/2,
- Триггерный режим кнопок Ctrl, Alt, Shift, светодиодная индикация нажатия этих кнопок,
- Отсутствие автоповтора,
- Увеличены тремор-тайминги,
- Разрешение одновременного нажатия только для спецклавиш Ctrl, Alt, Shift,
- При "одновременном" нажатии остальных - реакция "кто первый встал, того и тапки",
- Программирование (update) через обычный USB-COM.

Спасибо.

UA3VNM
21.04.2013, 12:26
Все уже придумали янки:http://sweet.211.ru/action/download/downloadid/11435

ut1wpr
21.04.2013, 19:52
Все уже придумали янки:http://sweet.211.ru/action/download/downloadid/11435/8-)8-)Ай да янки! А ты по этой ссылке сам ходишь? Наверное, у тебя там янки знакомые. У меня пошел в никуда называется.

Genadi Zawidowski
21.04.2013, 19:59
Ссылка исправлена

UA3VNM
21.04.2013, 20:33
ссылка сдесь -http://www.cameramouse.org/