Портал для радиолюбителей и разработчиков электроники · с 2003 годаРеклама на сайте
Найти компонент, схему или даташит

Даташиты, справочник отечественных приборов, схемы с разбором и живой форум


 
Опции темы

Драйвер (не VCP) для встроенного USB STM32

Непрочитано 07.11.2014, 22:11  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,821
Сказал спасибо: 919
Сказали Спасибо 4,289 раз(а) в 2,570 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Драйвер (не VCP) для встроенного USB STM32

Да, это Паша вместо констант напихал макросов и забыл )))
Так что теперь просто меняем дескриптор.
Реклама:
Easyrider83 вне форума  
Сказали "Спасибо" Easyrider83
dosikus (07.11.2014)
Непрочитано 07.11.2014, 22:15  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Драйвер (не VCP) для встроенного USB STM32

И так дескриптор получили , заменили .
Длина автоматом вычисляется и подставляется

Код:
0x05, 0x01,                    // USAGE_PAGE (Generic Desktop)
    0x09, 0x02,                    // USAGE (Mouse)
    0xa1, 0x01,                    // COLLECTION (Application)
    0x09, 0x01,                    //   USAGE (Pointer)
    0xa1, 0x00,                    //   COLLECTION (Physical)
    0x05, 0x09,                    //     USAGE_PAGE (Button)
    0x19, 0x01,                    //     USAGE_MINIMUM (Button 1)
    0x29, 0x03,                    //     USAGE_MAXIMUM (Button 3)
    0x15, 0x00,                    //     LOGICAL_MINIMUM (0)
    0x25, 0x01,                    //     LOGICAL_MAXIMUM (1)
    0x95, 0x03,                    //     REPORT_COUNT (3)
    0x75, 0x01,                    //     REPORT_SIZE (1)
    0x81, 0x02,                    //     INPUT (Data,Var,Abs)
    0x95, 0x01,                    //     REPORT_COUNT (1)
    0x75, 0x05,                    //     REPORT_SIZE (5)
    0x81, 0x03,                    //     INPUT (Cnst,Var,Abs)
    0x05, 0x01,                    //     USAGE_PAGE (Generic Desktop)
    0x09, 0x30,                    //     USAGE (X)
    0x09, 0x31,                    //     USAGE (Y)
    0x15, 0x81,                    //     LOGICAL_MINIMUM (-127)
    0x25, 0x7f,                    //     LOGICAL_MAXIMUM (127)
    0x75, 0x08,                    //     REPORT_SIZE (8)
    0x95, 0x02,                    //     REPORT_COUNT (2)
    0x81, 0x06,                    //     INPUT (Data,Var,Rel)
    0xc0,                          //   END_COLLECTION
    0xc0                           // END_COLLECTION


1) Что то в USBCFG.H править ?

В GetReportToPC надо записать данные для кнопок 1 байт и по 1 байту на оси .
Как ?
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 07.11.2014, 22:16  
omercury
Почётный гражданин KAZUS.RUN
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,487
Сказал спасибо: 30
Сказали Спасибо 3,070 раз(а) в 2,011 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Драйвер (не VCP) для встроенного USB STM32

Ну да, оно потом в usbcore складывается в кучку.
Хорош уже наезжать на старого ассемблерщика - там всё ручками.
omercury вне форума  
Непрочитано 07.11.2014, 22:20  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Драйвер (не VCP) для встроенного USB STM32

omercury, дык как ?


USB_WriteEP(EP1_IN, здесь указатель на структуру из кнопок и осей ?, USB_PACKET_LEN);

и кстати что с длинной пакета ? Править в USBCFG.H на 3 байта ?

И как распределяются оси , кнопки ?
по порядку в дескрипторе ?
__________________
Осторожно , злой кот

Последний раз редактировалось dosikus; 07.11.2014 в 22:23.
dosikus вне форума  
Непрочитано 07.11.2014, 22:39  
omercury
Почётный гражданин KAZUS.RUN
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,487
Сказал спасибо: 30
Сказали Спасибо 3,070 раз(а) в 2,011 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Драйвер (не VCP) для встроенного USB STM32

Сообщение от dosikus Посмотреть сообщение
и кстати что с длинной пакета ? Править в USBCFG.H на 3 байта ?
4
Сначала кнопки, потом X и Y
Лови. стр 53
omercury вне форума  
Непрочитано 07.11.2014, 23:04  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Драйвер (не VCP) для встроенного USB STM32

omercury, Упс в Max Endpoint 0 Packet сколько ставить ?
А эти 4 байта править в Bytes in output/input report ?
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 07.11.2014, 23:13  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Драйвер (не VCP) для встроенного USB STM32

Не превратилось в мышь ...
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 07.11.2014, 23:22  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Драйвер (не VCP) для встроенного USB STM32

А здесь в USB_ConfigDescriptor[]
USB_DEVICE_CLASS_HUMAN_INTERFACE, /* bInterfaceClass */
HID_SUBCLASS_NONE, /* bInterfaceSubClass */
HID_PROTOCOL_NONE, /* bInterfaceProtocol */

точно ничего править не надо?
__________________
Осторожно , злой кот
dosikus вне форума  
Непрочитано 07.11.2014, 23:47  
omercury
Почётный гражданин KAZUS.RUN
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,487
Сказал спасибо: 30
Сказали Спасибо 3,070 раз(а) в 2,011 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Драйвер (не VCP) для встроенного USB STM32

Сообщение от dosikus Посмотреть сообщение
Не превратилось в мышь ...
Ну теперь и сам попробую.
Здесь есть пример на мышу.
Сниффер.

Сигнал с мышеклавного приёмника.
Миниатюры:
Нажмите на изображение для увеличения
Название: Image1.jpg
Просмотров: 46
Размер:	180.8 Кб
ID:	71493  
omercury вне форума  
Непрочитано 07.11.2014, 23:52  
dosikus
Гуру портала
 
Аватар для dosikus
 
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
dosikus на пути к лучшему
По умолчанию Re: Драйвер (не VCP) для встроенного USB STM32

Вот нехорошие люди , я то думал они уже запустили мышу...
__________________
Осторожно , злой кот
dosikus вне форума  
 
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
FAQ по STM8 faru STM8 1680 22.11.2024 18:14
Печатная плата USBee AX picavr Барахолка электронных компонентов 950 20.08.2023 17:11
Апгрейд и комплектующие для ноутбуков mikesmith Барахолка электронных компонентов 28 17.05.2023 23:25
Ностальжи по школе... Ar-Gen-Tum Отвлекитесь, эмбеддеры! 141 27.02.2015 16:10
[Решено] Сборник перлов любителей кабельщины mikesmith Отвлекитесь, эмбеддеры! 135 14.08.2007 15:49


Часовой пояс GMT +4, время: 16:01.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.