Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
06.05.2006, 22:53
|
|
Временная регистрация
Регистрация: 02.05.2005
Адрес: Украина, Шостка
Сообщений: 65
Сказал спасибо: 35
Сказали Спасибо 1 раз в 1 сообщении
|
Ух ты !!! Я эмулятора мыши на pic16f84 не находил, теперь с ним мое устройство в Proteus:
http://slil.ru/22740537
Инициализирует где то 2 сек мышь и далее все время выводит на экранчик 3 байта посланные мышкой.
Там еще исходник моего проекта J.alp в отдельном архиве написанный в Algorithm Builder ( http://algrom.net/russian.html)
|
|
|
|
07.05.2006, 03:10
|
|
Временная регистрация
Регистрация: 02.05.2005
Адрес: Украина, Шостка
Сообщений: 65
Сказал спасибо: 35
Сказали Спасибо 1 раз в 1 сообщении
|
Сообщение от VaStaNi
|
Ты так и не ответил, на счет аппаратной реализации (стыка) что использовано, какие линии чипа, задействованы ли прерывания, каков строб и частота его взята или пока используется, как она влияет на обмен если ее менять ? Ну если можно освети суть, дабы иметь представление как оно жевет, это дело на НЕ PC устройстве.
|
В моем устройстве прерывания использованы только для вывода на индикатор, а сейчас линии DATA и CLK просто опрашиваются (частота опроса около 1-2 опроса в мкс). Но
это только для эксперимента, а правильно ИМХО реализовать таким образом: поставить прерывание на спад CLK и по нему конкретно получать бит с линии DATA (для приема данных) или менять состояние линии DATA для передачи данных в мышку (при инициализации мышки).
|
|
|
|
07.05.2006, 08:24
|
|
Почётный гражданин KAZUS.RU
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,574
Сказал спасибо: 704
Сказали Спасибо 4,344 раз(а) в 1,991 сообщении(ях)
|
Сообщение от Ig0r0k
|
Сообщение от VaStaNi
|
Ты так и не ответил, на счет аппаратной реализации (стыка) что использовано, какие линии чипа, задействованы ли прерывания, каков строб и частота его взята или пока используется, как она влияет на обмен если ее менять ? Ну если можно освети суть, дабы иметь представление как оно жевет, это дело на НЕ PC устройстве.
|
В моем устройстве прерывания использованы только для вывода на индикатор, а сейчас линии DATA и CLK просто опрашиваются (частота опроса около 1-2 опроса в мкс). Но
это только для эксперимента, а правильно ИМХО реализовать таким образом: поставить прерывание на спад CLK и по нему конкретно получать бит с линии DATA (для приема данных) или менять состояние линии DATA для передачи данных в мышку (при инициализации мышки).
|
Только не на спад CLK а на спад Data, т.к. он раньше.
У меня так и сделано.
|
|
|
|
07.05.2006, 08:40
|
|
Почётный гражданин KAZUS.RU
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,574
Сказал спасибо: 704
Сказали Спасибо 4,344 раз(а) в 1,991 сообщении(ях)
|
Ig0r0k,
а че это у Тебя с уровнем Data вначале творится? Непорядок, д.б. 1.
-- Прилагается рисунок: --
|
|
|
|
07.05.2006, 19:54
|
|
Временная регистрация
Регистрация: 02.05.2005
Адрес: Украина, Шостка
Сообщений: 65
Сказал спасибо: 35
Сказали Спасибо 1 раз в 1 сообщении
|
Сообщение от Kabron
|
Ig0r0k,
а че это у Тебя с уровнем Data вначале творится? Непорядок, д.б. 1.
|
А что с ним не так? Данные на мышь передаются.
И реально я подключал к настоящей мыши (не той что живая) - все работает.
И обьсяни please как включить DIGITAL ANALYSIS-PROSPISE, я что то не совсем понял.
-- Прилагается рисунок: --
|
|
|
|
08.05.2006, 11:01
|
|
Почётный гражданин KAZUS.RU
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,574
Сказал спасибо: 704
Сказали Спасибо 4,344 раз(а) в 1,991 сообщении(ях)
|
А что с ним не так? Данные на мышь передаются.
И реально я подключал к настоящей мыши (не той что живая) - все работает.
И обьсяни please как включить DIGITAL ANALYSIS-PROSPISE, я что то не совсем понял
Data low Clock High - это состояние линий после Request to send со стороны хоста (РС). В ответ мышь должна начать генерить клок. Idle state это обе линии =1. Так что лучше подправь, а то где нибудь облом может выйти.
Как объяснить не знаю просто берешь и включаеш.
|
|
|
|
08.05.2006, 11:18
|
|
Почётный гражданин KAZUS.RU
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,574
Сказал спасибо: 704
Сказали Спасибо 4,344 раз(а) в 1,991 сообщении(ях)
|
Ну да, есть засадка. В тулбаре выбираеш иконку графиков, затем - диджтал и рисуеш его рамку в поле схемы. Затем жмеш на зеленый заголовок - он окрывается в окне. Там все настойки. Симулируеш бегущим мэном. Основную симуляцию включать не надо. Удаляются графики двойной правой кнопкой.
|
|
|
|
08.05.2006, 15:46
|
|
Временная регистрация
Регистрация: 02.05.2005
Адрес: Украина, Шостка
Сообщений: 65
Сказал спасибо: 35
Сказали Спасибо 1 раз в 1 сообщении
|
Сообщение от Kabron
|
Data low Clock High - это состояние линий после Request to send со стороны хоста (РС). В ответ мышь должна начать генерить клок. Idle state это обе линии =1. Так что лучше подправь, а то где нибудь облом может выйти.
|
Вот и у меня устройство сначала (для инициализации мыши) выводит в течение 250 мкс лог.0 на CLK, далее лог.0 на DATA, восстанавливает лог.1 на CLK и ждет пока мышь не начнет генерировать CLK. И вот после этого почемуто эмулятор мыши не отвечает в течение около секунды.
Надо будет прикрутить условие что если в течение 15 мс мышь не ответит на "Request to send", то прерывать передачу и через некоторое время пытаться снова.
|
|
|
|
10.05.2006, 10:56
|
|
Почётный гражданин KAZUS.RU
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,574
Сказал спасибо: 704
Сказали Спасибо 4,344 раз(а) в 1,991 сообщении(ях)
|
После включения мыша в течении 500-600 мс делает селфтест, потом выдает $AA $00. То же самое происходит после принятия ею команды ресет ($FF)ответ будет $FA затем 500-600 мс пауза и $AA $00. 250 мс много, достаточно 100.
|
|
|
|
12.05.2006, 02:07
|
|
Временная регистрация
Регистрация: 02.05.2005
Адрес: Украина, Шостка
Сообщений: 65
Сказал спасибо: 35
Сказали Спасибо 1 раз в 1 сообщении
|
Сообщение от Kabron
|
После включения мыша в течении 500-600 мс делает селфтест, потом выдает $AA $00. То же самое происходит после принятия ею команды ресет ($FF)ответ будет $FA затем 500-600 мс пауза и $AA $00. 250 мс много, достаточно 100.
|
Так мс или мкс? У меня CLK перед выдачей байта на мышь удерживается в лог.0 250 мкс (не мс) потому что такая задержка рекомендована в книге Гука "Аппаратные интерфейсы ПК".
И хотелось бы узнать величину задержки селфтеста 500 мс или 500мкс?
Что само интересно с мыши идут байты ответа какието странные. Например, при передвигании мыши вправо со скоростью 0,5 см/сек в байте перемещения по Х значение 2. Если скорость увеличиш - 4 и т.д. А нечетных значений почемуто нет.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 09:43.
|
|