Например TDA7294

 Форум РадиоКот • Просмотр темы - Хост->дев(ица)айc = отправка команды.
Форум РадиоКот
Здесь можно немножко помяукать :)



Текущее время: Сб дек 16, 2017 20:03:44



Часовой пояс: UTC + 3 часа [ Летнее время ]


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 3 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Хост->дев(ица)айc = отправка команды.
СообщениеДобавлено: Пт сен 15, 2017 23:07:47 
Родился

Зарегистрирован: Ср мар 13, 2013 23:50:19
Сообщений: 18
Откуда: хкто его знает
Рейтинг сообщения: 0
Как-то задавал вопрос, ответа не получил, видимо сам мало понимал что спрашивать. Попытка №2.
Ну очень нужна помощь! Перепробовал кучу примеров, тучу исходников, понял в чем "гвоздь" но не понял как победить. :(
Проблема заключается в... ткните пальцем куда копать! пожалуйста!
мой дескриптор - каких куча в примерах:
Код:
PROGMEM char usbHidReportDescriptor[22] = {    /* дескриптор репорта USB */
    0x06, 0x00, 0xff,              // USAGE_PAGE (Generic Desktop)
    0x09, 0x01,                    // USAGE (Vendor Usage 1)
    0xa1, 0x01,                    // COLLECTION (Application)
    0x15, 0x00,                    //   LOGICAL_MINIMUM (0)
    0x26, 0xff, 0x00,              //   LOGICAL_MAXIMUM (255)
    0x75, 0x08,                    //   REPORT_SIZE (8)
    0x95, 0x01,                    //   REPORT_COUNT (1)
    0x09, 0x00,                    //   USAGE (Undefined)
    0xb2, 0x02, 0x01,              //   FEATURE (Data,Var,Abs,Buf)
    0xc0                           // END_COLLECTION
};

ПО-хоста на библиотеке libusb0.dll отрабатывает как и задумывалось. При переходе на ДРУГИЕ библиотеки (hidlibrary, HID API и т.д. включая от Atmel), а так же другие языки (VC++, C# - были потуги) в поисках правильной передачи данных от Хоста к Девайсу, положительного резултата добиться не удалось (а еще чтение данных впереди). Даже самый распространенный пример "proba(e)" описанный на множествах форумов, работать не хочет. Откопал следующее... что-бы я не писал в структуру или массив "pdata[x]" URB_FUNCTION_CONTROL_TRANSFER (если я правильно понял SetupPacket, который должен содержать "посылку") остается тот-же. Процедура отправки данных через, hid.SendData(&pdata) т.е. при помощи HidD_SetFeature(...) вообще ну никак не влияет на посылку данных, кроме как если в pdata[0] засунуть что-нибудь не ноль (при не 0 отсылаемых данных просто нет). Такие фокусы как Write - уходят в себя не обращая внимание на OVERLAPPED. Внутрисхемный отладчик "дев(айса)ицы" показал, что он(а) получает те же данные SetupPacket что и отображает USB Trace.
Прикладываю файлы лога USB Trace посылки SendData(&pdata) без коннекта. Коннект подключается нормально.
Первая картинка показывает правильную "посылку" данных при помощи библиотеки libusb0. Вторая картинка то, что отсылает библиотека HID API (hidlibrary).
Вложение:
LIBUSB0.jpg [134.03 KiB]
Скачиваний: 22
Вложение:
HIDlibrary(HID).jpg [135.96 KiB]
Скачиваний: 20

Я так понимаю многие на этом собаку съели, но на форумах, почему-то до финальной стадии не доходит. Как говориться "на самом интересном месте" или просто - "разобрался, продолжаем дальше". Вот и мне кажется, что хожу вокруг да около... а слона не замечаю.


Вернуться наверх
 Профиль  
 
Не в сети
 Заголовок сообщения: Re: Хост->дев(ица)айc = отправка команды.
СообщениеДобавлено: Пт сен 15, 2017 23:27:10 
Мудрый кот
Аватар пользователя

Карма: 14
Зарегистрирован: Пн окт 11, 2010 20:00:08
Сообщений: 1741
Рейтинг сообщения: 0
Если хотите чтобы помогли выкладывайте исходники, схему и прошивку девайса, иначе как найти ошибку в коде?


Вернуться наверх
 Профиль  
 
JLCPCB Prototype, Бесплатная доставка первого заказа + $2 на прототип ПП!

Крупнейший производитель печатных плат в Китае, 290,000+ заказчиков, 8,000+ он-лайн заказов в день.

Цена за 10 плат: $2 за 2-х слойную, $15 за 4-х слойную, $74 за 6-ти слойную.

LCSC Parts: Экономия до 50%, большой выбор компонентов в наличии, отправка заказа в день оплаты.

Не в сети
 Заголовок сообщения: Re: Хост->дев(ица)айc = отправка команды.
СообщениеДобавлено: Сб сен 16, 2017 11:22:41 
Родился

Зарегистрирован: Ср мар 13, 2013 23:50:19
Сообщений: 18
Откуда: хкто его знает
Рейтинг сообщения: 0
Пока приводил в порядок исходники... в исходнике к мк, бросилась мне в глаза фраза "Мы не передаем наши данные через HID-репорты, вместо этого мы используем custom-запросы." :))
По моему это тот ответ, который я искал... :)
А схема стандартная для ATtiny 45/85 - светодиоды на портах PB1, PB3, PB4.

Кысы. кому интересно как только одолею, выложу примеры (исходники).


Вернуться наверх
 Профиль  
 

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



Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на форуме

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


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

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y