|
|
 |
Ответов
|
Nov 20 2015, 12:26
|

Гуру
     
Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659

|
Поднял на собственном стеке HID с двумя INT точками. Сделал эхо. Все прекрасно работает. Производительность не измерял пока. Есть непонимание по одному вопросу: Есть регистры, задающие размерность FIFO для IN конечных точек. Это OTG_FS_DIEPTXF0 для контрольной точки и OTG_FS_DIEPTXFx для рабочих точек. С полем INEPTXFD все понятно. В мануале прямо про них написано: Цитата Bits 31:16INEPTXFD:IN endpoint TxFIFO depth This value is in terms of 32-bit words. Minimum value is 16 The power-on reset value of this register is specified as the largest IN endpoint FIFO number depth. С полем INEPTXSA, у меня, полного понимания нет. Описание в доке: Цитата INEPTXSA:IN endpoint FIFOx transmit RAM start address This field contains the memory start address for IN endpoint transmit FIFOx. The address must be aligned with a 32-bit memory location. Т.е. вроде как исчисление в этом поле в байтах, но число должно быть выровнено на 32 бита. Посмотрел примеры от ST. Там берется, к примеру, размер буфера в 32-бит словах (как и нужно), и это значение используется для вычисления адреса следующего буфера... Т.е. значение не делится на 4 для получения смещения в байтах... Посмотрел в отладчике состояние этих регистров по умолчанию после инициализации OTG - там, судя по дефолтным значениям полей, происходит то же самое. Правда, для последних регистров, в итоге, занчение адреса вылезает за пределы максимального размера памяти OTG... Хоть в байтах, хоть в 32-бит словах. Опять веселье (С)aaarrr Извините, может немного сумбурно объяснил вопрос.
--------------------
|
|
|
|
|
Nov 20 2015, 13:45
|

Гуру
     
Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659

|
Цитата(aaarrr @ Nov 20 2015, 19:09)  Нет, все в словах исчисляется. FIFO у них иной адресации и не имеет. Зачем тогда написано, что в поле адреса должно быть загружено значение, выровненное на 32 бита? Как можно не выровнять то, что уже выровнено? Цитата(Tarbal @ Nov 20 2015, 19:28)  Расскажите дилетанту для чего в USB нужен DMA пожалуйста. Ведь если посылать полные пакеты по 64 байта, то уже вроде как железо заполнит само буфер и вызовет одно прерывание на принятых 64 байта. Или речь идет о коротких пакетах? Вероятно я не вижу подводных камней. Ну хотя бы для того чтобы переслать данные из памяти USB в порт, минуя копирование данных в память. Вроде как в stm32 otg это можно сделать, хотя, я еще не пробовал. За выходные вечера хочу попробовать. Организация FIFO, на мой взгляд, позволяет это сделать. При запуске трансфера настроить точку и канал, и по прерываниям по приему стартовать канал DMA.
--------------------
|
|
|
|
Сообщений в этой теме
V_M_Luck STM32 USB FS OTG Jul 8 2011, 13:24 V_M_Luck Вновь поднимаю тему.
Пример-то заработал. Но тянут... Jul 13 2011, 15:51 Forger Цитата(V_M_Luck @ Jul 13 2011, 19:51) ...... Sep 9 2012, 15:07 SviMik Ровно та же проблема, как и в последнем сообщении.... Sep 9 2012, 11:41 SviMik В моём случае, дескриптор взят из заведомо рабочег... Sep 9 2012, 16:10 aaarrr CNAK в DOEPCTL0 после обработки setup установить н... Sep 9 2012, 19:54 SviMik Вот же однако... Заработало! Плюс вам в карму,... Sep 9 2012, 22:19 aaarrr Цитата(SviMik @ Sep 10 2012, 02:19) Интер... Sep 9 2012, 22:51 SviMik Пытаюсь реализовать CDC девайс. Что получилось:
1.... Sep 17 2012, 00:32 SviMik Вомзжно, я что-то не так понял с FIFO буфферами. Е... Sep 18 2012, 00:11 MBR Цитата(SviMik @ Sep 18 2012, 04:11) Это к... Sep 18 2012, 10:49 SviMik Хорошо. Тоесть моя конфигурация выше впринципе пра... Sep 18 2012, 13:48 MBR Цитата(SviMik @ Sep 18 2012, 17:48) При э... Sep 18 2012, 14:05 SviMik Всмысле флаг прерывания? Да, как и все остальные п... Sep 18 2012, 14:27 MBR А где запись данных после отправки очередного балк... Sep 18 2012, 15:03 SviMik Всмысле? Функция hwtx() выше, вызываю её вручную, ... Sep 18 2012, 15:11 SviMik Кажется, чего-то я в этой жизни не понимаю
Из дев... Sep 18 2012, 22:30 MBR Раз все остальное вроде верно, что там в hwtx? Sep 19 2012, 14:26 SviMik (Назначение hwtx - слать Hello World. Исключительн... Sep 19 2012, 15:01 MBR Собственно, я ошибок не вижу. Я делаю все примерно... Sep 20 2012, 12:15 SviMik Я сдаюсь
Можете выложить какой-нибудь минимальный... Sep 22 2012, 22:15 NaughtyFreak Подниму тему.
Подскажите плз, все глаза стёр уже г... Feb 19 2013, 08:11 Сергей Борщ Подниму древнюю тему.
STM32F107, родной стек из ... Mar 16 2015, 09:49 Сергей Борщ Цитата(Сергей Борщ @ Mar 16 2015, 11:49) ... Mar 17 2015, 23:10 esaulenka Ещё разик подниму тему.
На эти грабли: https://my... Apr 7 2015, 09:57 johnshadow Цитата(esaulenka @ Apr 7 2015, 12:57) Ещё... Apr 8 2015, 13:57 esaulenka Рекомендацию библиотеки ST спасибо. Знать, что оно... Apr 14 2015, 10:58 Golikov A. По спецификации USB 2.0 если мы говорим о SETUP то... Apr 14 2015, 11:09 esaulenka Подумал-подумал, и окончательно запутался.
Два bu... Apr 14 2015, 12:14 Golikov A. окончанием данных служит пакет длинной меньше макс... Apr 14 2015, 12:35 Immortal_Buka Может подскажет кто:
В соответствии с вот этой шту... Sep 22 2015, 12:52 prottoss Доброго времени суток.
Тоже решил освоить STM32 OT... Oct 25 2015, 12:30 aaarrr Цитата(prottoss @ Oct 25 2015, 15:30) Дан... Oct 25 2015, 13:07  prottoss Цитата(aaarrr @ Oct 25 2015, 19:07) Хост ... Oct 25 2015, 13:37   aaarrr Цитата(prottoss @ Oct 25 2015, 16:29) Хос... Oct 25 2015, 13:46    prottoss Цитата(aaarrr @ Oct 25 2015, 19:46) Как э... Oct 25 2015, 14:17     aaarrr Цитата(prottoss @ Oct 25 2015, 17:17) Не ... Oct 25 2015, 15:18      prottoss А OTG_FS_GINTSTS_RXFLVL, как я понял из даташита, ... Oct 25 2015, 15:30       aaarrr Цитата(prottoss @ Oct 25 2015, 18:30) А O... Oct 25 2015, 15:37        prottoss Цитата(aaarrr @ Oct 25 2015, 21:37) Нет, ... Oct 25 2015, 15:44         aaarrr Цитата(prottoss @ Oct 25 2015, 18:44) 1.Ч... Oct 25 2015, 16:11          prottoss Цитата(aaarrr @ Oct 25 2015, 22:11) 1. Чт... Oct 25 2015, 16:19           aaarrr Цитата(prottoss @ Oct 25 2015, 19:19) Зач... Oct 25 2015, 16:26            prottoss Цитата(aaarrr @ Oct 25 2015, 22:26) Не зн... Oct 25 2015, 16:50             aaarrr Цитата(prottoss @ Oct 25 2015, 19:50) А ч... Oct 25 2015, 17:25 prottoss Продолжаю неспеша тупить с STM32. С Setup пакетами... Nov 7 2015, 18:41 aaarrr Цитата(prottoss @ Nov 7 2015, 21:41) В че... Nov 7 2015, 18:48  prottoss Цитата(aaarrr @ Nov 8 2015, 00:48) OTG_FS... Nov 7 2015, 18:54   aaarrr Цитата(prottoss @ Nov 7 2015, 21:54) Т.е.... Nov 7 2015, 19:02    prottoss Цитата(aaarrr @ Nov 8 2015, 01:02) Так вы... Nov 7 2015, 19:08     aaarrr Цитата(prottoss @ Nov 7 2015, 22:08) Так ... Nov 7 2015, 19:29      prottoss Цитата(aaarrr @ Nov 8 2015, 01:29) EPENA ... Nov 7 2015, 19:44       aaarrr Цитата(prottoss @ Nov 7 2015, 22:44) Не п... Nov 7 2015, 19:47        prottoss Цитата(aaarrr @ Nov 8 2015, 01:47) Получи... Nov 7 2015, 19:51         aaarrr Цитата(prottoss @ Nov 7 2015, 22:51) Но я... Nov 7 2015, 19:55          prottoss Цитата(aaarrr @ Nov 8 2015, 01:55) Перене... Nov 7 2015, 20:16           aaarrr Цитата(prottoss @ Nov 7 2015, 23:16) Спас... Nov 7 2015, 20:28           prottoss Цитата(prottoss @ Nov 8 2015, 02:16) Прав... Nov 7 2015, 20:37            aaarrr Цитата(prottoss @ Nov 7 2015, 23:37) Мне ... Nov 7 2015, 20:59             prottoss Цитата(aaarrr @ Nov 8 2015, 02:59) Уровен... Nov 7 2015, 21:06            aaarrr Цитата(prottoss @ Nov 7 2015, 23:37) ...е... Nov 7 2015, 21:15             Tarbal Цитата(aaarrr @ Nov 8 2015, 01:15) Вот не... Nov 20 2015, 15:45            Tarbal Цитата(prottoss @ Nov 8 2015, 00:37) Мне ... Nov 20 2015, 13:28   prottoss Ну и по передаче так же.
Цитата(aaarrr @ Nov... Nov 20 2015, 13:47    aaarrr Цитата(prottoss @ Nov 20 2015, 16:47) Что... Nov 20 2015, 13:50     aaarrr Цитата(aaarrr @ Nov 20 2015, 16:50) Честн... Nov 20 2015, 13:55   aaarrr Цитата(prottoss @ Nov 20 2015, 16:45) При... Nov 20 2015, 13:48    prottoss Цитата(aaarrr @ Nov 20 2015, 19:48) 64 ба... Nov 20 2015, 13:55     prottoss Размер трансфера данных задается все таки в байтах... Nov 20 2015, 13:57    prottoss Вернусь к вопросу использования DMA.
Цитата(aaarrr... Nov 21 2015, 04:41     prottoss Продолжаю потихоньку грызть OTG.
Построил USB MS... Dec 18 2015, 11:19      Шаманъ Подниму темку в связи со схожим вопросом...
Цитата... Mar 19 2017, 21:09 aaarrr Цитата(Tarbal @ Nov 20 2015, 16:28) Ведь ... Nov 20 2015, 13:46 prottoss Цитата(aaarrr @ Nov 20 2015, 19:46) Выраз... Nov 20 2015, 13:48 Genadi Zawidowski Я эту ситуацию ловил как результат порчи FIFO из-з... Mar 20 2017, 00:43 Шаманъ Цитата(Genadi Zawidowski @ Mar 20 2017, 03... Mar 20 2017, 06:05 Genadi Zawidowski Рабочие в проекте. Проблемы если по формуле (там г... Mar 20 2017, 08:42 Шаманъ Цитата(Genadi Zawidowski @ Mar 20 2017, 11... Mar 20 2017, 10:03 Genadi Zawidowski 1) эти неиспользуемые ендпоинты инициализируются о... Mar 20 2017, 12:56 Шаманъ Цитата(Genadi Zawidowski @ Mar 20 2017, 15... Mar 20 2017, 15:03 controller_m30 У меня был похожий случай недавно (на USB CDC), чт... Mar 20 2017, 14:01 Genadi Zawidowski Добавлю - особенно хорошо проявляются такие забыты... Mar 20 2017, 14:09 Genadi Zawidowski Дополнил инициализацию отладочной печатью:
Кодv1=0... Mar 20 2017, 17:38 Шаманъ Цитата(Genadi Zawidowski @ Mar 20 2017, 20... Mar 20 2017, 19:05 Genadi Zawidowski Цитатано в заголовочном файле была ошибка
В студию... Mar 20 2017, 19:06 Шаманъ Цитата(Genadi Zawidowski @ Mar 20 2017, 22... Mar 20 2017, 19:52 Genadi Zawidowski Вот версия с внутренним генератором, теоретически ... Mar 20 2017, 20:01 Шаманъ Народ, я тут всех поставил на уши, а потом подключ... Mar 20 2017, 20:38 Alechek Цитата(Шаманъ @ Mar 21 2017, 01:38) Народ... Mar 21 2017, 03:52 Genadi Zawidowski Попробуй мой тест на XP - у меня работало (термина... Mar 20 2017, 20:40 Шаманъ Цитата(Genadi Zawidowski @ Mar 20 2017, 23... Mar 20 2017, 21:04 Genadi Zawidowski На одном из двуз компортов - Kenwood CAT. На объем... Mar 20 2017, 21:16 Шаманъ Цитата(Genadi Zawidowski @ Mar 21 2017, 00... Mar 21 2017, 14:32 Шаманъ Цитата(Genadi Zawidowski @ Mar 21 2017, 00... Mar 21 2017, 04:20 Шаманъ XP таки была "новая" в смысле XP SP3 Mar 21 2017, 05:28 Genadi Zawidowski Спасибо. На какой операционной системе проверялось... Mar 21 2017, 14:45
2 страниц
1 2 >
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|