реклама на сайте
подробности

 
 
4 страниц V  < 1 2 3 4 >  
Reply to this topicStart new topic
> STM32F439 + USB мышь, Не работает
Огурцов
сообщение Jan 10 2016, 11:19
Сообщение #31


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



немец крут
но только поначалу
потом оказывается, что что-то не работает, что-то работает не так, что-то глючит
мне кажется, что он берет проекты из под старого? куба и причесывает их под кокос

Сообщение отредактировал Огурцов - Jan 10 2016, 11:20
Go to the top of the page
 
+Quote Post
hd44780
сообщение Jan 10 2016, 13:02
Сообщение #32


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Не, куба я у него пока не видел. У него SPL и не кубовые USB либы.
Глюки да, бывают. Тот же его пример USB мыши на Ф429 дискавери он работает нормально, а на моей плате на том же хосте он не пошёл. хз почему. Я не разбирался. Решил лучше время потратить на новые либы.


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Jan 10 2016, 14:34
Сообщение #33


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



старый куб был на spl, не ?
в любом случае, примеры по списку куба и выглядят как обертки над обертками
почему бы для разнообразия не сделать cdc host ? а нет, у st потому что нет
Go to the top of the page
 
+Quote Post
hd44780
сообщение Jan 10 2016, 15:28
Сообщение #34


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Цитата(Огурцов @ Jan 10 2016, 17:34) *
старый куб был на spl, не ?

Я не знаю, я кубом почти не пользуюсь.

Цитата(Огурцов @ Jan 10 2016, 17:34) *
в любом случае, примеры по списку куба и выглядят как обертки над обертками
почему бы для разнообразия не сделать cdc host ? а нет, у st потому что нет

Угу. Не говорите .. В кубе CDC Host есть. Но на простые либы переделывать геморно.

Кстати, в новых (не кубовых) либах CDC хост появился. Так что, наверное, и у немца скоро появится biggrin.gif . Я не проверял, пока неактуально.


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
Огурцов
сообщение Jan 10 2016, 16:34
Сообщение #35


Гуру
******

Группа: Участник
Сообщений: 3 928
Регистрация: 28-03-07
Из: РФ
Пользователь №: 26 588



так либы на spl или это третья реинкарнация стшного софта ?
я куб пытался под кокос заточить - что- то там не срослось
пока

Сообщение отредактировал Огурцов - Jan 10 2016, 16:35
Go to the top of the page
 
+Quote Post
hd44780
сообщение Jan 10 2016, 17:06
Сообщение #36


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



В USB либах SPL есть только в 2-х местах:
1. Файл usb_bsp.c - инициализация портов, прерываний, включение питания девайса и пр.
2. Файл usbh_usr.c, функция USBH_USR_UserInput. Там опрашивается какая-то кнопка, которой можно запретить работу хоста. На фига оно надо и как именно оно работает - я не знаю, я всегда эту кнопку выкидывал и безусловно разрешал работу хоста.

В самом USB ядре никакого SPL нету, там всё на регистрах сделано, через макросы
Код
#define USB_OTG_READ_REG32(reg)  (*(__IO uint32_t *)(reg))
#define USB_OTG_WRITE_REG32(reg,value) (*(__IO uint32_t *)(reg) = (value))
#define USB_OTG_MODIFY_REG32(reg,clear_mask,set_mask) \
  USB_OTG_WRITE_REG32((reg), (((USB_OTG_READ_REG32(reg)) & ~(clear_mask)) | (set_mask)) )

И никогда я там SPL не видел, несмотря на вопли разных SPL-ненавистников. Попадались мне такие sm.gif .

Разные дисплеи, использующиеся в callback-ах я не рассматривал, т.к. эти вещи сильно от проекта зависят. Я, например, все PID/VID/... записываю в переменные, а потом использую, где надо (вывожу на дисплей в другом месте).

PS. Я имею в виду только хосты. Девайсы я практически не делал, не могу сказать что там да как. Хотя, я думаю, что в этом отношении девайс от хоста не отличается.


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
hd44780
сообщение Jan 19 2016, 07:57
Сообщение #37


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Сделал флэшки на новой либе. На всех моих платах и процах пашет норм.
Теперь пошёл делать, чтобы хост понимал и мышку и флэшку одновременно. Т.е. без перекомпиляции и перепрошивки.


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
mantech
сообщение Jan 19 2016, 18:22
Сообщение #38


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(hd44780 @ Jan 19 2016, 10:57) *
Теперь пошёл делать, чтобы хост понимал и мышку и флэшку одновременно.


В смысле, через хаб или просто либо то, либо другое? Если через хаб, тоже интересно, сейчас сам хочу сделать...
Go to the top of the page
 
+Quote Post
hd44780
сообщение Jan 20 2016, 08:26
Сообщение #39


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Не, пока не хаб. Просто так или то или то.
Хабовый протокол я ещё даже не читал пока sad.gif .


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
mantech
сообщение Jan 21 2016, 13:57
Сообщение #40


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(hd44780 @ Jan 20 2016, 11:26) *
Не, пока не хаб. Просто так или то или то.
Хабовый протокол я ещё даже не читал пока sad.gif .


Понятно - это просто, а вот с хабом... че-то пока не работает все разом crying.gif

ЗЫ. Пользуясь случаем, не встречалось такого эффекта, например, читаю блоками флешку, а потом надо на нее-же несколько блоков записать, потом читать дальше, причем без пауз. Так вот после записи флеха наглухо уходит в аут(помогает только откл. ее питания), сам контроллер усб не отключаю, только сброс шины.
Это бывает на 2х флешках из 10 разных производителей... Причем запись происходит корректно.

Кто, что знает - расскажите, если не секрет? laughing.gif

Сообщение отредактировал mantech - Jan 21 2016, 14:01
Go to the top of the page
 
+Quote Post
hd44780
сообщение Jan 22 2016, 13:17
Сообщение #41


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Не, флэшки у меня нормально вроде пашут.
Знакомый, которому я дал свой драйвер, тоже не жаловался пока что ...

Драйвер от СТ. Практически без изменений. Слегка допиленный, чтобы не впадал в ступор при смене флэшки.


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
mantech
сообщение Jan 22 2016, 13:38
Сообщение #42


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(hd44780 @ Jan 22 2016, 16:17) *
Не, флэшки у меня нормально вроде пашут.


Дак вот тоже нормально пашут, за исключением некоторых и в режиме "одновременной" записи и чтения. Когда только читаю или записываю - все норм laughing.gif
Go to the top of the page
 
+Quote Post
mantech
сообщение Jan 28 2016, 09:33
Сообщение #43


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(mantech @ Jan 21 2016, 16:57) *
Пользуясь случаем, не встречалось такого эффекта, например, читаю блоками флешку, а потом надо на нее-же несколько блоков записать, потом читать дальше, причем без пауз. Так вот после записи флеха наглухо уходит в аут


Вопрос решил, оказывается для особо тормозных флешек нужно было увеличить таймаут ошибки, если нет ответа для DATA IN и CSW принимаемых блоков.

Цитата(mantech @ Jan 21 2016, 16:57) *
Пользуясь случаем, не встречалось такого эффекта, например, читаю блоками флешку, а потом надо на нее-же несколько блоков записать, потом читать дальше, причем без пауз. Так вот после записи флеха наглухо уходит в аут


Вопрос решил, оказывается для особо тормозных флешек нужно было увеличить таймаут ошибки, если нет ответа для DATA IN и CSW принимаемых блоков.
Go to the top of the page
 
+Quote Post
hd44780
сообщение Nov 27 2016, 16:12
Сообщение #44


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 26-08-05
Из: Донецк, ДНР
Пользователь №: 7 980



Апну древнюю тему.
Сейчас осталась только одна проблема - мышь спустя какое-то время перестаёт отдавать координаты.
Копание в коде вывело на уже упоминавшееся мною выше условие в файле usbh_hid_core.c, функция USBH_HID_Handle:

Код
.............
  case HID_POLL:
    if(( HCD_GetCurrentFrame(pdev) - HID_Machine.timer) >= HID_Machine.poll)
    {
      HID_Machine.state = HID_GET_DATA;
    }
    else if( HCD_GetURB_State(pdev, HID_Machine.hc_num_in) == URB_DONE )
    {
      if(start_toggle == 1) /* handle data once */
      {
        start_toggle = 0;
        HID_Machine.cb->Decode(HID_Machine.buff);
      }
    } //if
..............


Ну что такое первое условие - понятно, там все проблемы удалось решить, но всё обламывается на втором условии.
Когда мышь дохнет, функция возвращает URB_IDLE. Всё, что я пока понял, что эти статусы выставляются в прерывании USB.
Дальнейшее я пока не расколдовал sad.gif ...

Поэтому вопрос по сути тот же - работает ли USB мышь у кого-нибудь?


--------------------
Чтобы возить такого пассажира, необходим лимузин другого класса.
(с) Мария Эдуарда
Go to the top of the page
 
+Quote Post
mantech
сообщение Nov 29 2016, 17:28
Сообщение #45


Гуру
******

Группа: Участник
Сообщений: 2 219
Регистрация: 16-08-12
Из: Киров
Пользователь №: 73 143



Цитата(hd44780 @ Nov 27 2016, 19:12) *
Поэтому вопрос по сути тот же - работает ли USB мышь у кого-нибудь?


Работает больше года в 24\7 . Проблемы отваливания решил отслеживанием ошибки и повторной энумерацией, как это сделано в винде.
Go to the top of the page
 
+Quote Post

4 страниц V  < 1 2 3 4 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 25th August 2025 - 23:15
Рейтинг@Mail.ru


Страница сгенерированна за 0.04087 секунд с 7
ELECTRONIX ©2004-2016