-
Ответ: USB контроллер джоистика
Цитата:
Сообщение от BAG
остутсвие какой-либо возможности реализовать комбинации кнопок которые повешены на один вход АЦП
Это не так. Резисторная матрица типа R-2R (если я все правильно путаю) дает возможность получения информации о любой произвольной комбинации нажатых одновременно кнопок для одного АЦП. (Или я все-таки нахомутал с названием? Тогда поправьте.)
Только это не значит, что я за такую реализацию. Богу - богово, слесарю - слесарево. Требуемая разрядность невелика - 5 разрядов АЦ преобразования - это 32 кнопки - вполне достаточно. Конечно, если выхода нет - скажем, задействованы все цифровые порты, но есть свободный канал АЦП - почему бы и нет, но имхо, все-таки дискретные сигналы лучше и обрабатывать дискретно.
Цитата:
Сообщение от BAG
и вообще ты гденибуть видел механику джойстика нормально исполненную в металле с подогнанными деталями и подшипниками ????
Сорри - не могу молчать, хоть и не в тему. Я видел! В субботу у Ильи UIV (забирал микросхему контроллера). Напольный РУС, металл, подшипники - ребята, это надо почувствовать! Ставить хорошую фукциональную электронику в типовые палки - это очень жалко.
-
Ответ: USB контроллер джоистика
Цитата:
Сообщение от BAG
Да я считаю что это хуже , так как это вопервых медленнее и вовторых имеет значительно меньшую точность - остутсвие какой-либо возможности реализовать комбинации кнопок которые повешены на один вход АЦП
Какой-нибудь букварь типа ХиХ "Искусство схемотехники" читать в части посвещенной ЦАП.
R-2r матрица на 10 битном АЦП спокойно дает 8 НЕЗАВИСИМЫХ кнопок.
Цитата:
Сообщение от BAG
65 мкс лишь в том случае , если мы имеем потоковый опрос входов АЦП , а если всётаки единичный опрос , то 125 мкс.
Для справки при частоте 12МГц 1 такт это аж 0.08мкс помоему это маленькое время .. и за 65 мкс пройдет всеголишь 800 тактов, за которые можно не то что матрицу всю опросить , но и дребезг исключить !
Блин, ЧИТАЙ ДАТАШИТЫ ВНИМАТЕЛЬНО. Или в симуляторе прогоняй, если с английским сложно.
25 тактов занимает ПЕРВОЕ, вообще ПЕРВОЕ включение АЦП. А не начало преобразования. Из которых основная масса времени уходит на измерение AREF и настройку масштабирования. Я на работе АЦП у АВРов собаку съел.
Цитата:
Сообщение от BAG
ты забыл
. out ADMUX, temp0
. sbi ADCSRA, ADSC
WaitForADC:
. sbic ADCSRA, ADSC
. rjmp WaitForADC
а это дофигише времени простоя !!
и только потом
in temp,ADCH для АЦП
Это просто вопрос оптимизации. Автору огромное спасибо за то что он просто это (джой) сделал. Оптимально или нет - это другой вопрос.
Но так - чисто в сторону, замечу что 1мс на УСБ 1.1 у нас гарантированно есть. Во фри-ране этого вполне хватает на 8 каналов АЦП.
Цитата:
Сообщение от BAG
уляля ... я ЗНАЮ как делается хатка !! она НОРМАЛЬНО делается с помошью 4х кнопок !!! а не целого канала АЦП !!! только не нужно говорить что лишний канал АЦП можно занять хаткой вместо того , чтоб исспользовать его для оси например или ещё чегонить хитрого.
Покарйней мере все джои которые я держал в руках с 8ми позиционным хатом имели реализацию оного на 4х кнопках !!!
ОТКРОЙ джой и ПРОЙДИСЬ по разводке до микроконтроллера. ВСЕ что я видел джойстики от Логитека и Трастмастера хатку держат на АЦП.
Там схемка на резисторах, которые эти кнопки замыкают.
Цитата:
Сообщение от BAG
да еще вот забыл ..
Почем тогда на половине джоев не хватает осей ?? может потому , что очень умные "дятлы" исспользуют для хета каналы АЦП ??? или потому, что ктото делает джойстик за 20 баксов а продаёт его за 400 ????? и ставит в него такую электронику которой бы не в джойстике стоять а в аквариуме рыбкам реле переключать !!! а не заниматься измерением угловых перемещений!!!
Дерзай. И может ИМЕННО у тебя получиться. И вот когда сможешь разработать конструкцию джой, где есть точная механика с "МНОГО ОСЕЙ", вечные датчики с погрешностью в 0.5-1 угловую минуту, а главное умудришься наладить его ХОТЯБЫ МЕЛКОСЕРИЙНЫЙ выпуск,
чтоб тот не стоил как пол-самолета - сможешь гордо всех остальных производителей обвинять в хапужничестве, отсутсвии видения перспектив и раздолбайстве в разработке.
Я еще помню как народ возмущался насчет минимум 100 баксов за доработку Когуара до нормальной механики.
А это черным налом, на ворованом материале и бесплатных станках, т.е. практически по себестоимости работ.
-
Ответ: USB контроллер джоистика
Хатка везде на "АЦП", исключая некоторые оригинальные конструкции ( < 1% ) Да, 4 кнопки, но они зацепленны на резисторы, которые соеденены последовательно.
Обсуждению не подлежит. Правильно это или нет - отдельная тема. Если хочешь - имеешь право создать отдельный топик.
BAG - прошу не создавай пустой флейм. Тут очень интересная для всех тема, и выковыривать потом ценную информацию из споров затруднительно.
Прежде чем утверждать и возмущатся, подробней ознакомься с материалом, если у оппонента есть другое мнение.
-
Ответ: USB контроллер джоистика
Тогда - к теме. Кто-нибудь полностью запустил джойстик и полетал? Впечатления? Баги (если есть)? У меня сейчас со временем плохо, сижу на чемоданах, переселяюсь. Только и успел, что спаять и покрутить резисторами на весу.
-
Ответ: USB контроллер джоистика
Цитата:
Сообщение от Rik
Тогда - к теме. Кто-нибудь полностью запустил джойстик и полетал? Впечатления? Баги (если есть)? У меня сейчас со временем плохо, сижу на чемоданах, переселяюсь. Только и успел, что спаять и покрутить резисторами на весу.
Я запустил. и уже даже воткнул приятелю вместо электроники от Логитеха Экстрим3Д.
Работает стабильно. Иногда (очень редко) вылезают косяки с кнопками, но это моя вина, я кнопки подвесил на порты неудачно, вот они с хаткой и спариваются.
Есть вопросы к схемотехнике:
Из того что стоит ИМХО сделать - подвесить стабилитроны на 3.6В на линии Д+ и Д- и делители для пулл-апа на Д-. Все-таки УСБ это 3.3 В и от греха подальше на 2.0 порты новых мам не стоит +5В подавать всеже.
-
Ответ: USB контроллер джоистика
А если это же счастье поставить не на выход, а на вход , тоесть понизить питание схемы до 4х вольт. мне кажеться что это будет эффективнее , так как сразу убьётся 3 зайца - шумы по питанию и выходные уровни. А также позволит достаточно просто уменьшить "ход" резистивных датчиков (или любых других) у которых рабочий ход значительно привышает например ход РУСа.
ПС и не нужно сразу бросаться тухлыми помидорами !!!! что я вижу некоторые люди делают с великим удовольствием !! :mad:
-
Ответ: USB контроллер джоистика
Просьба к предыдущим двум ораторам - схемы в студию!
-
Ответ: USB контроллер джоистика
Цитата:
Сообщение от BAG
А если это же счастье поставить не на выход, а на вход , тоесть понизить питание схемы до 4х вольт. мне кажеться что это будет эффективнее , так как сразу убьётся 3 зайца - шумы по питанию и выходные уровни. А также позволит достаточно просто уменьшить "ход" резистивных датчиков (или любых других) у которых рабочий ход значительно привышает например ход РУСа.
ПС и не нужно сразу бросаться тухлыми помидорами !!!! что я вижу некоторые люди делают с великим удовольствием !! :mad:
В этом предложении есть одни нюанс - с датчиками МаРС схема не будет работать. Им необходимо строго 5 В.
-
Ответ: USB контроллер джоистика
не совсем. Я говорю про то что можно былоб понизить питаний схемы , но не датчиков. Их питание можно брать сразу от ЮСБ и впринципе это не 5 В а 4.75В ...
-
Ответ: USB контроллер джоистика
Цитата:
Сообщение от BAG
не совсем. Я говорю про то что можно былоб понизить питаний схемы , но не датчиков. Их питание можно брать сразу от ЮСБ и впринципе это не 5 В а 4.75В ...
Можно и так, но чем шире диапазон сигнала с датчика, тем больше разрешение, не правда ли? И коль мы используем столь точный контроллер, то брезговать диапазоном датчика мы не вправе, я так считаю. Чем в этом плане хорош МаРС - это тем, что его угловой диапазон настраивается от плюс-минуc 15 гр., до плюс-минус 90, кажись. Под любую механику можно настроить, что и пригодилось в случае с педалями.
-
Вложений: 1
Ответ: USB контроллер джоистика
LazyCamel
А как ты кнопки разложил? Вроде действительно - не должны они пересекаться при любых комбинациях, опрос последовательный. Разве что - неточная отработка задержек на дребезг?
Я себе планирую такой вариант (вроде оптимально по количеству проводов к железкам, у меня Лоджик с двумя хатками).
По поводу питания. Я тут просмотрел наскоро даташит (полный, который 5,5 метров) - вроде при 4 вольтах питания (и даже немного поменьше) контроллер потянет с запасом тактовую в 12 МГц. Но питать контроллер от 4 В, а АЦП (Ref) и резисторы осей от звенящих 5 В по линии USB - не дело. Тогда уж лучше ставить простенький стабилизатор на те же 4 вольта выходных, питать ими контроллер (приближаем уровни сигналов к требуемым USB), через дроссель - конденсатор - АЦП и резисторы. Тогда хоть избавиться можно от помех по питанию USB шины. Кстати, аналоговую цепь я через фильтр дроссель - конденсатор включил. Печатку не рисовал - лень, собрал на макетке монтажными проводами. Вот выходные разъемы только достали - уж больно их много получается. Хотите - сфотографирую, положу сюда.
-
Ответ: USB контроллер джоистика
хм .... я вот что подумал : высокочастотеные шумы по питанию от ЮСБ срезаются обычными конденсаторами , а вот нихкочастотные (меньше 100КГц) на погрешность измерения сильно не влияют , так как с изменением Vref меняется соответсвенно и сигнал с датчика , тоесть их отношение остаётся постоянным , а впринципе добавлять ещё и стабилизатор смысла нет.
Возможно конечно я ошибаюсь (( , хотя всё вроди как правильно.
а вот понизить уровни выходных сигналов былоб не плохо .... наверное так и сделаю..
Другой вопрос.. у меня почемуто когда я добавляю в репорт дескриптор ещё 1 хэт всё перистаёт работать. Добавляю поидее правильно, всё учёл , но винда перистаёт видить устройство. ?????
Оси добавил , проблем нет ... дескриптор периколбасил чуток.... всё нормально , а вот второй хет сделать не получается . Можно у тебя попросить твой репорт дескриптор ??
-
Ответ: USB контроллер джоистика
Я программу не менял. Нет ни сил, ни времени. В программировании я остановился 100 лет назад на ассемблере PDP-11 (аксакалы помнят такую машинку - БК-0010, мы с коллегами работали на них и писали программы). Так что скорее я бы попросил что-то готовое под 2 хэта :)
Но в принципе мне и так хватает - ну видится второй хэт как 4 кнопки - и что?
-
Вложений: 1
Ответ: USB контроллер джоистика
От меня схемка смотри внизу, для стандартного варианта прошивки, цельнотянутая из даташита
R=68 или 82 Ома
R1=2.2 кОма
R2=4.7 кОма
Стабилитроны на 3.6В
На выходные как раз прошивку перерабатывать буду и схему сильно менять.
Из планируемых изменений по сравнению со стандартной.
Схемные:
УСБ - перенесено на PD0,PD1+PD2. Последовательно включены резисторы на 68(или 82) Ома. На линиях висят стабилитроны на 3.6 Вольта.
Кнопки - матрица PB0-PB5 х PD4-PD7
Aref через 100 nF подcоединен к ЗЕМЛЕ (включен внутрениий Ареф равный AVCC)
pull-up делитель R1-R2 подключен к PD3
PC0 - подключеный к земле - Dip, к VCC - TQFP/MLF
Изменения в прошивке:
Дескрипторы - оси будут стандартные десктопные X,Y,Slider,Rz,Rx,Ry,(Z,dial)
АЦП при работе будет усыплять МК
Включаться УСБ на микроконтроллере будет после инициализации всего, чтобы не гнать волну пытаясь успеть на инициализацию УСБ.
Деcкрипторы:
ИД0
Х - 10бит
hat - 4 бит
Y - 10 бит
slider - 8 бит
RZ - 8 бит
кнопки - 8 бит
Ид1
кнопки - 12 бит
константа - 4 бит
Rx - 8бит
Ry - 8бит
Z - 8бит
dial - 8бит
константа - 16бит
Порядок ИД0-ИД0-ИД1-ИД0-ИД0-ИД1
-
Ответ: USB контроллер джоистика
Цитата:
Сообщение от BAG
Оси добавил , проблем нет ... дескриптор периколбасил чуток.... всё нормально , а вот второй хет сделать не получается . Можно у тебя попросить твой репорт дескриптор ??
Дескрипторы дома, тут даже DT нет.
Посмотри не забыл ли после кнопок страницу назад переключить на генерик десктоп.
Если хаты подряд идут INSTANCE(0) INSTANCE(1) явно поставь.
ЗЫ:
Два хата насколько я помню ДХ только с 8.1 поддерживаются.
Имхо проше кнопками оставить. Единственный минус - только 4-х позиционный хат получается, если 4 кнопки ставить.
ЗЗЫ:
Ктобы мне сказал что такое в дескрипторах
66 40 00
и
66 00 00
в дескрипторе АВ2 стоит, причем совершенно бредово.
По идее это UNIT(код 65), но со странной единицей измерения.
-
Ответ: USB контроллер джоистика
Цитата:
Сообщение от LazyCamel
Единственный минус - только 4-х позиционный хат получается, если 4 кнопки ставить.
Никто ж не мешает на физическом уровне одной кнопкой замыкать две пары контактов :confused:
-
Ответ: USB контроллер джоистика
Цитата:
Сообщение от paraManiac
Никто ж не мешает на физическом уровне одной кнопкой замыкать две пары контактов :confused:
Вот только много ли програм умеют это понимать ?
-
Ответ: USB контроллер джоистика
Цитата:
Сообщение от SLI=SHURIK_25=
В этом предложении есть одни нюанс - с датчиками МаРС схема не будет работать. Им необходимо строго 5 В.
А с KMZ-41 ситуация что - наладилась ? Они ж были под заказ и с нормой заказа "от упаковки".
-
Ответ: USB контроллер джоистика
Цитата:
Сообщение от LazyCamel
Вот только много ли програм умеют это понимать ?
А зачем им понимать, они будут исполнять "вверх, направо"- вот и диагональ!
или я тебя не понимаю?
-
Ответ: USB контроллер джоистика
Вопрос. Какой эмулятор исспользовать для того чтоб посмотреть работу контролера нормально. Я скачал Visual Micro Lab 3.10 , но у нему не нашёл кряка .. ну да ладно , это не важно , важно то , что прошивка которая имеется для САБЖА после устранения всех замечаний которые имел Visual Micro Lab
по отношении к ней, так и не запускается . Тоесть возможности запустить код так и не появляется !!!
Может взять какойнибуть другой емулятор ??? или что посоветуете.
Ещё вопрос , В чем вы моделируете схемы ??
-
Ответ: USB контроллер джоистика
Цитата:
Сообщение от LazyCamel
На выходные как раз прошивку перерабатывать буду и схему сильно менять.
Из планируемых изменений по сравнению со стандартной.
Схемные:
УСБ - перенесено на PD0,PD1+PD2. Последовательно включены резисторы на 68(или 82) Ома. На линиях висят стабилитроны на 3.6 Вольта.
Кнопки - матрица PB0-PB5 х PD4-PD7
Aref через 100 nF подcоединен к ЗЕМЛЕ (включен внутрениий Ареф равный AVCC)
pull-up делитель R1-R2 подключен к PD3
PC0 - подключеный к земле - Dip, к VCC - TQFP/MLF
Изменения в прошивке:
Дескрипторы - оси будут стандартные десктопные X,Y,Slider,Rz,Rx,Ry,(Z,dial)
АЦП при работе будет усыплять МК
Включаться УСБ на микроконтроллере будет после инициализации всего, чтобы не гнать волну пытаясь успеть на инициализацию УСБ.
Порядок ИД0-ИД0-ИД1-ИД0-ИД0-ИД1
Вопросы.
С чем связаны эти изменения. Тоесть какие замечания есть к тому что есть на данный момент ??
Какой корпус планируешь исспользовать в своей схеме ?? ДИП или TQFP ??
-
Ответ: USB контроллер джоистика
Цитата:
Сообщение от LazyCamel
А с KMZ-41 ситуация что - наладилась ? Они ж были под заказ и с нормой заказа "от упаковки".
Нашли в одном месте остатки невыкупленной партии. Но они продавали только оптом минимум на 10000 р.
Скинулись и купили. Помимо KMZ-41 взяли комплектом UZZ9000, вот на этой спарке и родились МаРСы. Правда окончательной конструкции датчика до сих пор еще не наработали. Связано с изменениями мест производства, одни то могут, другие это. С кугаром вообще отдельная история - в процессе установки и эксплуатации первых 10 комплектов много подводных камней всплыло. Но если делать датчик под самодельную механику - то все попроще получается.
-
Вложений: 2
Ответ: USB контроллер джоистика
ХЭЛП! Понипрог пишет - потеряное устройство (-24). И как быть с отличиями в номерах контактов в программаторах на картинках?
Чо делать?
-
Ответ: USB контроллер джоистика
Я не совсем понял - откуда и зачем вторая картинка? Сделать разводку и подключение по первой (кстати, рекомендуемой автором) не судьба, что ли? Она ж рабочая, не один я проверил.
-
Ответ: USB контроллер джоистика
блин, забыл сказать про этот смешной баг в VM LAB :-)
Она не дает запускать симуляцию, если заканчивается на метку без данных.
добавь в самом конце ".db 0"