???
Математика на уровне МГУ

Страница 15 из 112 ПерваяПервая ... 51112131415161718192565 ... КрайняяКрайняя
Показано с 351 по 375 из 2776

Тема: USB контроллер джойстика

  1. #351

    Ответ: USB контроллер джоистика

    Продолбался с программированием, потому что сначала заливал с помощью AVRprog1_37 и не знал как там выставлять биты (кстати MeanDog ссылался на 24-ю страницу описания ATmega8, я нашел pdf на английском, а там только 19 страниц, о каком документе шла речь?), потом выставил биты под PonyProg и все пошло. Насколько я понимаю в AVRprog установки должны получиться как в прилагаемом файле. Поправьте, если не так (я установил биты под PonyProg и считал потом под AVRprog).
    Миниатюры Миниатюры Нажмите на изображение для увеличения. 

Название:	advanced.jpg 
Просмотров:	387 
Размер:	31.5 Кб 
ID:	32083  

  2. #352

    Ответ: USB контроллер джоистика

    Кстати по мотивам того, что я почитал по модификациям джойстиков в инете - есть много информации типа "я сделал оптический сенсор на базе оптопары мыши с затвором, напечатанным на струйнике на бумаге, но почему-то есть дергания", так вот при проверке на практике оказалось, что на работе такого варианта больше сказывается разнородность бымаги, чем разница в заливке чернилами, да и чернила не годятся для инфракрасного. Латунная шторка от переменного конденсатора подошла куда лучше.
    Есть еще вопрос по диодной развязке, описанной раньше. Если делать это на кремниевых диодах и не обеспечить должной подсадки, то диоды будут работать почти как конденсаторы. При 5 вольтах подсаживать надо примерно 20-ти кОм-ами, а какую подсадку дает микроконтроллер в данном варианте?

  3. #353
    ED Team Аватар для USSR_Rik
    Регистрация
    16.08.2003
    Адрес
    Belarus, Minsk
    Сообщений
    2,450

    Ответ: USB контроллер джоистика

    Про AVRprog ничего сказать не могу, я лил PonyProg'ом. По поводу битов - ну тут давне все обсуждено, просмотри всю ветку.
    О развязке диодами. Мысль про конденсаторы и "подсадку" я вообще не понял. Я у себя развязывал кремниевыми транзисторами (ну мне так оказалось удобнее, исходная схема MeanDog и вторая версия программы) - считай, те же диоды в данном случае. Плюс к этому некоторые входные линии микроконтроллера "подтягивал" к +5V резисторами на 39 кОм. В принципе, это достаточно индивидуально получается - топология монтажа и особенности шлейфа от контроллера к РУС/РУД. Кусочек своей схемы кнопок с диодами я тут уже рисовал, не поленись посмотреть.
    ...чего уж тигру лишняя полосочка... (© - не помню)

  4. #354

    Ответ: USB контроллер джоистика

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

  5. #355

    Ответ: USB контроллер джоистика

    А можно на ассемблере для AVR выполнять стандартные штуки PC-шного ассемблера типа:

    rjmp req_offsets+temp1
    req_offsets:
    rjmp ComposeGET_STATUS ;GET_STATUS=0
    rjmp ComposeCLEAR_FEATURE ;CLEAR_FEATURE=1
    rjmp ZeroDATA1Answer ;=2
    rjmp ComposeSET_FEATURE ;SET_FEATURE=3
    rjmp ZeroDATA1Answer ;=4
    rjmp ComposeSET_ADDRESS ;SET_ADDRESS=5
    rjmp ComposeGET_DESCRIPTOR ;GET_DESCRIPTOR=6
    rjmp ComposeSET_DESCRIPTOR ;SET_DESCRIPTOR=7
    rjmp ComposeGET_CONFIGURATION ;GET_CONFIGURATION=8
    rjmp ComposeSET_CONFIGURATION ;SET_CONFIGURATION=9
    rjmp ComposeGET_INTERFACE ;GET_INTERFACE=10
    rjmp ComposeSET_INTERFACE ;SET_INTERFACE=11
    rjmp ComposeSYNCH_FRAME ;SYNCH_FRAME=12

    а то меня как-то смущают переборы на равно/перейти

  6. #356
    Пилот-Конструктор Аватар для MeanDog
    Регистрация
    04.02.2004
    Адрес
    Lithuania
    Возраст
    50
    Сообщений
    122

    Ответ: USB контроллер джоистика

    Цитата Сообщение от VKlimov
    А можно на ассемблере для AVR выполнять стандартные штуки PC-шного ассемблера типа:

    rjmp req_offsets+temp1
    req_offsets:
    rjmp ComposeGET_STATUS ;GET_STATUS=0
    rjmp ComposeCLEAR_FEATURE ;CLEAR_FEATURE=1
    rjmp ZeroDATA1Answer ;=2
    rjmp ComposeSET_FEATURE ;SET_FEATURE=3
    rjmp ZeroDATA1Answer ;=4
    rjmp ComposeSET_ADDRESS ;SET_ADDRESS=5
    rjmp ComposeGET_DESCRIPTOR ;GET_DESCRIPTOR=6
    rjmp ComposeSET_DESCRIPTOR ;SET_DESCRIPTOR=7
    rjmp ComposeGET_CONFIGURATION ;GET_CONFIGURATION=8
    rjmp ComposeSET_CONFIGURATION ;SET_CONFIGURATION=9
    rjmp ComposeGET_INTERFACE ;GET_INTERFACE=10
    rjmp ComposeSET_INTERFACE ;SET_INTERFACE=11
    rjmp ComposeSYNCH_FRAME ;SYNCH_FRAME=12

    а то меня как-то смущают переборы на равно/перейти
    Это можно с ICALL и IJMP командами. В даташите АВР ассемблера есть описание как:
    mov r30,r0 ; Set offset to jump table
    ijmp ; Jump to routine pointed to by r31:r30
    К переборам с практикой привыкаеш

    Цитата Сообщение от VKlimov
    По поводу битов обсуждено только что под PonyProg все их надо сбросить, а мне интересно что они все обозначают, к тому же теоретически под AVRprog программировать лучше, т.к. там стоит свой кварцованый контроллер, потому вдвойне интересно что выставлять под ним.
    Я бы удивился, если бы кто-то развязывал германиевыми,т.к. они частично пропускают в обратном направлении.
    Входными считаются линии, которые на сетке клавишь подключены к вертикалям или горизонталям?
    Биты есть в полном даташите АТмега8 - doc2486.pdf. Может ты скачал урезаную версию.
    Входы это горизонтали. Считываютса за 4 раза по 7 бит.

  7. #357

    Ответ: USB контроллер джоистика

    Перебор похож на код, который получается из case без оптимизации. Проблема в том, что с перебором выполнение последнего в списке варианта занимает под 40 тактов, а без перебора для любого варианта 4 такта. Я еще не уверен насколько это критично в данном случае, т.к. я только засел за понимание кода MJoy и ассемблера Atmel (если конкретный код выполняется всего один раз, так без разницы). Да, там по описанию использования косвенных переходов по Z (r30) вроде было указано, что используется еще r31 (старшая часть адреса) - его надо задействовать или нет? И как все-таки взять offset метки, команды offset у данного ассемблера то нет? Если в temp1 смещение (при условии что все команды по 1 слову и адресация пословная), то как вот это делается? Или r0 содержит текущий адрес?
    Скачивал раньше я действительно урезанный.
    Спасибо за ответы. И большое спасибо за проделанную работу по созданию.

  8. #358

    Ответ: USB контроллер джоистика

    попробовал скомпилировать версию 1.2 - компилятор в AVR Studio 4.10 дает кучу предупреждений о том, что call не поддерживаются данным чипом и Immediate byte operand out of range. Это нормально?

  9. #359

    Ответ: USB контроллер джоистика

    Вот так вроде работает:

    StandardRequest:
    cpi temp1, 13 ;compare with max avaliable
    brsh req_exit ;if equal\above skip
    ldi ZL, low(req_offsets)
    ldi ZH, high(req_offsets)
    add ZL, temp1
    ijmp
    req_offsets:
    rjmp ComposeGET_STATUS ;GET_STATUS=0
    rjmp ComposeCLEAR_FEATURE ;CLEAR_FEATURE=1
    rjmp req_exit ;=2
    rjmp ComposeSET_FEATURE ;SET_FEATURE=3
    rjmp req_exit ;=4
    rjmp ComposeSET_ADDRESS ;SET_ADDRESS=5
    rjmp ComposeGET_DESCRIPTOR ;GET_DESCRIPTOR=6
    rjmp ComposeSET_DESCRIPTOR ;SET_DESCRIPTOR=7
    rjmp ComposeGET_CONFIGURATION ;GET_CONFIGURATION=8
    rjmp ComposeSET_CONFIGURATION ;SET_CONFIGURATION=9
    rjmp ComposeGET_INTERFACE ;GET_INTERFACE=10
    rjmp ComposeSET_INTERFACE ;SET_INTERFACE=11
    rjmp ComposeSYNCH_FRAME ;SYNCH_FRAME=12

    ;if not found known request
    req_exit:
    rjmp ZeroDATA1Answer ;if that was something unknown, then prepare zero answer

    вроде r30 и r31 здесь сохранять\восстанавливать не надо, т.к. дальше они вроде местами переписываются, но не уверен.

  10. #360
    Пилот-Конструктор Аватар для MeanDog
    Регистрация
    04.02.2004
    Адрес
    Lithuania
    Возраст
    50
    Сообщений
    122

    Ответ: USB контроллер джоистика

    Цитата Сообщение от VKlimov
    попробовал скомпилировать версию 1.2 - компилятор в AVR Studio 4.10 дает кучу предупреждений о том, что call не поддерживаются данным чипом и Immediate byte operand out of range. Это нормально?
    Это нормально. У меня АВР студио тоже так делает.

  11. #361
    Зашедший
    Регистрация
    10.09.2003
    Адрес
    Ukraine
    Возраст
    52
    Сообщений
    90

    Ответ: USB контроллер джоистика

    Хелп...
    терзания мои продолжаются уже третий день
    Собрал версию 1.2
    Проверил
    Еще раз проверил монтаж
    ПониПрог AVR видит,прошивает, пишет все правильно
    считываю прошивку, проверяю....
    действительно все правильно
    Подключаю ЮСБ - "неизвестное устройсто"
    думаю ладно... резисторы 68 ом, стабилитроны, как советовали...
    тоже самое.... вобщем вариантов у меня не осталось...


    Уважаемые авторы, мое психическое здоровье на исходе...
    Подскажите хоть в какую сторону копать
    Заранее всем спасибо

  12. #362
    Зашедший
    Регистрация
    07.09.2004
    Адрес
    Ekaterinburg
    Возраст
    43
    Сообщений
    20

    Ответ: USB контроллер джоистика

    целую неделю я гадал и мучился - почему не работает...
    Оказалось конденсаторы бывают разные...
    Я поставил "ленточные".
    Знакомый электронщик только что сказал, что надо керамические поставить.

  13. #363
    Пилот-Конструктор Аватар для MeanDog
    Регистрация
    04.02.2004
    Адрес
    Lithuania
    Возраст
    50
    Сообщений
    122

    Ответ: USB контроллер джоистика

    Цитата Сообщение от whiter
    Хелп...
    терзания мои продолжаются уже третий день
    Собрал версию 1.2
    Проверил
    Еще раз проверил монтаж
    ПониПрог AVR видит,прошивает, пишет все правильно
    считываю прошивку, проверяю....
    действительно все правильно
    Подключаю ЮСБ - "неизвестное устройсто"
    думаю ладно... резисторы 68 ом, стабилитроны, как советовали...
    тоже самое.... вобщем вариантов у меня не осталось...


    Уважаемые авторы, мое психическое здоровье на исходе...
    Подскажите хоть в какую сторону копать
    Заранее всем спасибо
    Биты конфигурации запрограмировал? Еще попробуй включить в другой УСБ порт, например вместо заднего в передний (если есть) или на другом компютере...

  14. #364
    Зашедший
    Регистрация
    10.09.2003
    Адрес
    Ukraine
    Возраст
    52
    Сообщений
    90

    Ответ: USB контроллер джоистика

    Конденсаторы естественно керамические 0,1 мкф
    2 MeanDog
    Биты програмировал согласно скриншотов...
    Пробовал разные УСБ порты, единственное предположение это припаяный шлейф к програматору (естественно он отключен от ЛПТ),
    но может какие наводки возникают ????

    Еще такой вопрос, может версия ПониПрога? У Вас какая?

    Еще такой симптом:
    напряжение на контакте D- УСБ 3,6 в а D+ 0,1 странно....
    может сам АВР подпаленый или банально бракованый....

  15. #365
    Зашедший
    Регистрация
    10.09.2003
    Адрес
    Ukraine
    Возраст
    52
    Сообщений
    90

    Ответ: USB контроллер джоистика

    Заработало!!!!!
    Проблема была в бракованом УСБ гнезде, припаял его на свою голову, хотел подключать стандартным шнуром....
    После замены на шнур от старенкого СВЕНа688 все заработало с пол пинка, еще раз спасибо разработчику!!!
    Остался маленький вопросик:
    Подключил к одной из осей резюк 47к - наблюдаю странную картину
    при вращении резистора реагируют ВСЕ оси, причем как-то странно
    рывками. Т.е. верчу резистор и изменяются показатели всех осей
    Версия прошивки 1.2.
    Отсюда вопрос:
    для автоматической калибровки нужно подключать резисторы ко всем
    осям? или у меня опять гюки? или наводки?
    Может у кого такое было?

    Еще раз спасибо!

  16. #366
    Пилот-Конструктор Аватар для MeanDog
    Регистрация
    04.02.2004
    Адрес
    Lithuania
    Возраст
    50
    Сообщений
    122

    Ответ: USB контроллер джоистика

    Цитата Сообщение от whiter
    Заработало!!!!!
    Проблема была в бракованом УСБ гнезде, припаял его на свою голову, хотел подключать стандартным шнуром....
    После замены на шнур от старенкого СВЕНа688 все заработало с пол пинка, еще раз спасибо разработчику!!!
    Остался маленький вопросик:
    Подключил к одной из осей резюк 47к - наблюдаю странную картину
    при вращении резистора реагируют ВСЕ оси, причем как-то странно
    рывками. Т.е. верчу резистор и изменяются показатели всех осей
    Версия прошивки 1.2.
    Отсюда вопрос:
    для автоматической калибровки нужно подключать резисторы ко всем
    осям? или у меня опять гюки? или наводки?
    Может у кого такое было?

    Еще раз спасибо!
    Это типа наводки, так как АЦП только один а неподключенные входы через мултиплексор неизменяют оставшее напряжение после последнего преобразования на сэмплинг конденсаторе. Когда подключиш все потенциометры все станет нормально. Если какую-то ось неиспользуеш, соедини ее с землей.

  17. #367
    Зашедший
    Регистрация
    10.09.2003
    Адрес
    Ukraine
    Возраст
    52
    Сообщений
    90

    Ответ: USB контроллер джоистика

    2 MeanDog

    Спасибо за отличные ответы-консультации.
    С меня бутылка. Хотя как передать??????
    Могу по WM. Если принимаешь такие благодарности
    дай знать в приват.
    Еще раз большое спасибо!!!

  18. #368
    Пилот-Конструктор Аватар для MeanDog
    Регистрация
    04.02.2004
    Адрес
    Lithuania
    Возраст
    50
    Сообщений
    122

    Ответ: USB контроллер джоистика

    Цитата Сообщение от whiter
    2 MeanDog

    Спасибо за отличные ответы-консультации.
    С меня бутылка. Хотя как передать??????
    Могу по WM. Если принимаешь такие благодарности
    дай знать в приват.
    Еще раз большое спасибо!!!
    Пойду напюсь от счастья

  19. #369

    Ответ: USB контроллер джоистика

    Вопросик такого плана:
    Вот возился с прошивками и нечаянно нажал комманду "Аппаратный сброс"
    Расскажите плиз, was ist das, а то прошиваться перестало - мож из-за этого. Pоny prog говорит ,что девайс не найден или неисправен

  20. #370

    Ответ: USB контроллер джоистика

    Попробуй программировать с подачей тактового сигнала на 9-ю ногу от внешнего генератора (можно по элементарной схеме на ЛА3 или подобном собрать, если на ЛА3, то соединить 1-2,3-4-5, резисторы ~400-500 Ом между 1,3,6, кварц ~12 между 1 и 6, с 6-й через резистор ~500 Ом на 9-ю ATmega). Надеюсь посреди ночи ничего не перепутал.

  21. #371
    Пилот-Конструктор Аватар для MeanDog
    Регистрация
    04.02.2004
    Адрес
    Lithuania
    Возраст
    50
    Сообщений
    122

    Ответ: USB контроллер джоистика

    Цитата Сообщение от paraManiac
    Вопросик такого плана:
    Вот возился с прошивками и нечаянно нажал комманду "Аппаратный сброс"
    Расскажите плиз, was ist das, а то прошиваться перестало - мож из-за этого. Pоny prog говорит ,что девайс не найден или неисправен
    Если "Аппаратный сброс" означает RSTDISBL, то он выключает функцию Ресет и это делает програмирование через серийный интерфейс невозможным. Чтобы восстановить этот бит потребуетса другой программатор, работающий в parallel режиме. Если такого неимеетса, то надо покупать другую микросхему.

  22. #372

    Ответ: USB контроллер джоистика

    вот почти сделал..... http://sukhoi.ru/forum/showthread.ph...869#post484869

  23. #373
    Зашедший
    Регистрация
    21.03.2004
    Адрес
    Russian Federation
    Сообщений
    31

    Ответ: USB контроллер джоистика

    Огромная просьба помочь!!! Не знаю что и думать! Спаял всю ботву, прошил, проверил прошивку – всё верно! Не работает, “неизвестное USB-устройство”! Перепробовал все порты, опять лажа(((, хотел завязать тему, но протестировав на другом компе – всё заработало !!!? Может в мамаше дело (ASUS P4P800), все входа USB 2.0? Поможите пажалст, а то силов боле нету!((( :confused: Может быть пришло время машину поменять?
    Крайний раз редактировалось Kotik; 11.12.2004 в 17:46.

  24. #374

    Ответ: USB контроллер джоистика

    Я в P4P800 её втыкал, вариант был от LaziCamel'a -работало, за что собственно ему спасибо.
    Но вот решил сделать крайний вариант от MeanDog'a - и тут как на зло заело с перепрошивкой - в итоге я похоже микросхему загадил.
    Воткнул девайс
    reload...
    OVERCLOCING FAILED-!???? - вот фигня, далее комп не грузится, а мать орёт
    CPU TEST FAILED.
    Посидел я, значит, почесал репу, и поехал в сервис,{мозги компьютерные и мать в том числе я купил ровно за неделю до этого} мол так-то и
    поменяли, на что я собственно и не надеялся
    Теперь собираюсь поднять старй кмп и закончить на нём эксперементы

  25. #375

    Ответ: USB контроллер джоистика

    Вообщем мораль такова, что по идее на P4P800 должно работать

Страница 15 из 112 ПерваяПервая ... 51112131415161718192565 ... КрайняяКрайняя

Ваши права

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