Easyelectronics.ru

Электроника для всех
Текущее время: 17 фев 2019, 21:07

Часовой пояс: UTC + 5 часов




Начать новую тему Ответить на тему  [ Сообщений: 80 ]  На страницу Пред.  1, 2, 3, 4
Автор Сообщение
 Заголовок сообщения: Re: STM32F407 и USB
СообщениеДобавлено: 06 июл 2018, 16:30 
Старожил

Зарегистрирован: 11 фев 2016, 18:17
Сообщения: 336
На каком основании хост может "передумать" забирать данные?

Кстати, еще вопрос: как мы отправляем пакеты нулевой длины? Ведь фактической записи в DFIFO нет. В библиотеке записываются биты PKTCNT = 1 и XFRSIZ = 0 в регистр DIEPTSIZx. Больше ничего делать не надо?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F407 и USB
СообщениеДобавлено: 06 июл 2018, 21:49 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 728
ElecDron писал(а):
Кстати, еще вопрос: как мы отправляем пакеты нулевой длины?

Точно так же как и ненулевой, только в fifo не пишем.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F407 и USB
СообщениеДобавлено: 06 июл 2018, 23:31 
Старожил

Зарегистрирован: 11 фев 2016, 18:17
Сообщения: 336
Хм... в моем понимании функция записи данных - это просто запись в FIFO:
Код:
void ep0write(uint32 value) // для записи в КТ0
{
    USB.DFIFO0.write(value);
}
Я что-то упустил?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F407 и USB
СообщениеДобавлено: 07 июл 2018, 00:05 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 728
ElecDron писал(а):
Хм... в моем понимании функция записи данных - это просто запись в FIFO
FIFO это всего лишь буфер для данных.
ElecDron писал(а):
Я что-то упустил?
Мне кажется даташит почитать упустили. Этот момент там расписан подробно. Про ZLP в случае совпадения размера посылки с размером конечной точки тоже.
Код:
    USB_OTG_INEP(EPNum)->DIEPTSIZ = USB_OTG_DIEPTSIZ_PKTCNT(1) | USB_OTG_DIEPTSIZ_XFRSIZ(cnt);
    USB_OTG_INEP(EPNum)->DIEPCTL |= USB_OTG_DIEPCTL_CNAK | USB_OTG_DIEPCTL_EPENA;
    if(cnt) WriteFIFO(EPNum, pData, cnt);


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F407 и USB
СообщениеДобавлено: 27 ноя 2018, 01:06 
Старожил

Зарегистрирован: 11 фев 2016, 18:17
Сообщения: 336
Приветствую.
Скажите, сколько HID описателей может содержаться в одной конфигурации? В инструкции Device Class Definition for Human Interface Devices (HID) Version 1.11 приведен пример с одним описателем. Однако их возможное кол-во не указано.

Второе: сколько отчетных описателей (Report Descriptor) может содержать один HID? Минимум один, как сказано в документе. А два, три...?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 80 ]  На страницу Пред.  1, 2, 3, 4

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: Brigantina


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

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

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB