roboforum.ru

Технический форум по робототехнике.
Текущее время: 02 дек 2024, 13:51

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: Как грамотнее эмулировать нажатие клавиатуры (AVR)?
СообщениеДобавлено: 26 окт 2007, 16:51 
Не в сети
Аватара пользователя

Зарегистрирован: 27 ноя 2004, 00:42
Сообщения: 3339
Откуда: совсем Москва
ФИО: Григорий
В общем, такой расклад.
Имеется клавиатура (готовый прибор), которая опрашивает клавиши с какой-то частотой. Частота мне не известна и померять не чем :| Клавиатура имеет стандартную схему 5х3. Т.е. на 5 контактах последовательно выставляется логическая "1", а на 3-х контактах считывается состояние...
Имеется МК AVR (модель конкретная будет выбрана после того, как определюсь с методом решения задачи), который с помощью АЦП мониторит состояние техпроцесса и в зависимости от этого должен "жать" кнопки...
Как это поэлегантнее сделать? Замену клавиатуры не предлагать! :)
Вариантов пока два.
1. Подпаяться к выводам клавы. С максимальной частотой МК проверять, если на одном из 5 выводов "1", то выставить на соответствующем из 3-х входов "1" и держать единичку, пока "1" на выводе не сменится на "0". Но т.к. МК занимается еще и АЦП, то теоретически есть вариант "проморгать" изменение состояния входов-выходов...
2. Поставить 15 транзисторов :D Может кто-нить знает сборку из 16 транзюков в одном корпусе? А то плодить детальки на плате не хочется...

Может есть еще какие-то варианты? Или может у предложенных вариантов есть какие-то существенные достоинства либо недостатки?

_________________
злой полицейский


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как грамотнее эмулировать нажатие клавиатуры (AVR)?
СообщениеДобавлено: 26 окт 2007, 17:16 
Не в сети
скрытый хозяин вселенной :)
Аватара пользователя

Зарегистрирован: 18 сен 2006, 12:26
Сообщения: 18018
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич
Цитата:
то теоретически есть вариант "проморгать" изменение состояния

поставить 2 мк :lol:


а вобще какаята странная система ничо не понял нормально поясните чё хотите?
повесить паралельно клавиатуре мк который в зависимости от АЦП должен симулировать нажатие кнопки?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как грамотнее эмулировать нажатие клавиатуры (AVR)?
СообщениеДобавлено: 26 окт 2007, 17:18 
Не в сети
Аватара пользователя

Зарегистрирован: 27 ноя 2004, 00:42
Сообщения: 3339
Откуда: совсем Москва
ФИО: Григорий
Myp писал(а):
а вобще какаята странная система ничо не понял нормально поясните чё хотите?
повесить паралельно клавиатуре мк который в зависимости от АЦП должен симулировать нажатие кнопки?


Совершенно в дырдочку верно! :) Или схему нарисовать в пэйнте?

_________________
злой полицейский


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как грамотнее эмулировать нажатие клавиатуры (AVR)?
СообщениеДобавлено: 26 окт 2007, 17:52 
Не в сети
отсылающий читать курс
Аватара пользователя

Зарегистрирован: 06 ноя 2005, 04:18
Сообщения: 14195
Откуда: Москва
Digit писал(а):
Частота мне не известна и померять не чем :|


А звуковая плата ПК не подойдет ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как грамотнее эмулировать нажатие клавиатуры (AVR)?
СообщениеДобавлено: 26 окт 2007, 17:56 
Не в сети
скрытый хозяин вселенной :)
Аватара пользователя

Зарегистрирован: 18 сен 2006, 12:26
Сообщения: 18018
Откуда: Тверь по прозвищу Дверь
прог. языки: псевдокод =) сила в алгоритме!
ФИО: глубокоуважаемый Фёдор Анатольевич
чёто у меня аткое ощущение что проблема из ничего :lol:

всё будет успевать цифроватся, анализироватся и нажиматся\
этож не коспический корабль чтоб там 16 MIPS нехватило

но 3 ключа всёже надо буит на выход поставить


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как грамотнее эмулировать нажатие клавиатуры (AVR)?
СообщениеДобавлено: 26 окт 2007, 18:16 
Не в сети
Аватара пользователя

Зарегистрирован: 27 ноя 2004, 00:42
Сообщения: 3339
Откуда: совсем Москва
ФИО: Григорий
Myp писал(а):
чёто у меня аткое ощущение что проблема из ничего :lol:
всё будет успевать цифроватся, анализироватся и нажиматся\
этож не коспический корабль чтоб там 16 MIPS нехватило
но 3 ключа всёже надо буит на выход поставить

Та это и не проблема вовсе! :) Мне тоже кажется, что 16МГц хватит за глаза. Просто вот думаю, может есть какое-то элегантное и красивое решение, а я по глупости не вижу его...
А 3 ключа зачем? Резистор и все...

avr123.nm.ru писал(а):
А звуковая плата ПК не подойдет ?

Подойдет канеш. Возможно позже :roll:

_________________
злой полицейский


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как грамотнее эмулировать нажатие клавиатуры (AVR)?
СообщениеДобавлено: 26 окт 2007, 18:42 
Не в сети
Аватара пользователя

Зарегистрирован: 03 авг 2007, 19:43
Сообщения: 1437
Откуда: Екатеринбург
прог. языки: Си, асм со словарем
прерывание можно организовать.
диодами или логикой 'или' собрать 5 выходов в один. прерывание по наличию 1 на выходе. по прерыванию анализ какая строка подсвечивается единичкой, дешифрируем и выставляем в нужный момент 1 на нужной колонке.

второй вариант
5 входов на прерывание 'изменение состояния ноги' далее аналогично п.1
только так я непробовал так. но знаю что можно.
только будет ли 5 ног на прерывание вот в чем вопрос.

External Interrupt Request Tiny/Мega
Pin Change Interrupt Request М168


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как грамотнее эмулировать нажатие клавиатуры (AVR)?
СообщениеДобавлено: 26 окт 2007, 19:15 
Не в сети
Мастер Самоделкин
Аватара пользователя

Зарегистрирован: 11 окт 2004, 19:20
Сообщения: 3678
Откуда: Россия, СПб
прог. языки: C/C++, Python, asm
ФИО: Курмис Александр Андреевич
Можно и без диодов - прерывание по началу сканирования, а дальше - по таймеру.

_________________
Ниндзя - круче всех. Они умеют ходить по воде, делить на ноль и угадывать шаффл в АйПоде.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как грамотнее эмулировать нажатие клавиатуры (AVR)?
СообщениеДобавлено: 27 окт 2007, 09:31 
Не в сети
Аватара пользователя

Зарегистрирован: 15 янв 2007, 19:23
Сообщения: 1058
Откуда: Беларусь, Барановичи
прог. языки: С для МК, Delphi для ПК
Взять контроллер с тремя входами прерываний и подпаяться к 3 линиям клавы. При возникновении какого-л. прерывания смотрим в нужном ли ряду кнопок производиться опрос. Если да, то устанавливаем ноль на входе нужной пимпы нужным из 5 выходов.
Да, в принципе, и полингом можно молотить. Скорости хватит. :) Но прерывания как-то душевнее. :)

_________________
I live My life!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Как грамотнее эмулировать нажатие клавиатуры (AVR)?
СообщениеДобавлено: 28 окт 2007, 00:25 
Не в сети
Аватара пользователя

Зарегистрирован: 27 ноя 2004, 00:42
Сообщения: 3339
Откуда: совсем Москва
ФИО: Григорий
Тогда надо с пятью входами прерываний... Сигнал-то идет на пяти линиях, а на три надо будет выставлять... Ну да это тонкости :)
Прерывания душевнее, согласен 8)

_________________
злой полицейский


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 11


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

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO