Jump to content

    

Recommended Posts

Здравствуйте. Вопрос такой - кто может поделиться примером работы USB 2.0 на процессоре С674x? Может для какого-н другого процессора, тоже подойдет.

 

Заранее спасибо!

Share this post


Link to post
Share on other sites
Здравствуйте. Вопрос такой - кто может поделиться примером работы USB 2.0 на процессоре С674x? Может для какого-н другого процессора, тоже подойдет.

 

Заранее спасибо!

 

Ага, а мне для AM1707. Там USB - движки очень похожи. Но нет такого примера. Есть Linux с исходными текстами, причем реально работающий, я проверял. Но вот выдрать оттуда только USB - та еще задачка ...

Share this post


Link to post
Share on other sites

Может положите сюда кусок драйвера, где отправка пакета и обмен с FIFO реализованы, подсмотреть бы, как правильно. А то есть предположение, что у нас отправляется не то количество байт, что хочется.

Share this post


Link to post
Share on other sites

Отправка в control endpoint:

u32 WriteEP0()

{

u8 *s;

u32 n = MIN(ep0setup.f.len, EP0_FIFO_SIZE);

ep0setup.f.len -= n;

if (!((int)ep0ptr & 3)) for (; n >= 4; n -= 4) USB0.FIFO[0] = *ep0ptr++;

for (s = (u8 *)ep0ptr; n; n--) *(u8 *)&USB0.FIFO[0] = *s++;

ep0ptr = (u32 *)s;

return (ep0setup.f.len) ? 1 << CSR0_TXPKTRDY:

1 << CSR0_TXPKTRDY | 1 << CSR0_DATAEND;

}

Share this post


Link to post
Share on other sites

Спасибо, попробуем. А на Jungo все ругаются, что работает с горем пополам только на TI плате, а при попытке запустить на чем-то еще - шишь.

Share this post


Link to post
Share on other sites
Ага, а мне для AM1707. Там USB - движки очень похожи. Но нет такого примера. Есть Linux с исходными текстами, причем реально работающий, я проверял. Но вот выдрать оттуда только USB - та еще задачка ...

 

Пробую поднять USB0 на 6745! Сплошные проблемы! В fifo я пишу аналогично, но все равно прерывания прекращаются на SET_ADDRESS.

Не могли бы вы скинуть весь USB драйвер из линукса, или хотя сказать что это за линукс.

 

Спасибо

Share this post


Link to post
Share on other sites
Не могли бы вы скинуть весь USB драйвер из линукса, или хотя сказать что это за линукс.

 

Спасибо

 

Я из-за этих проблем ушел на STM32F207 и решил задачу на нем. но все равно на TI посматриваю. Хуже всего то, что по их документации невозможно поднять USB, поскольку она не полна. Зачитал я ее до дырок, но она все же не содержит всей необходимой информации.

 

Вот, Linux я качал отсюда:

 

http://software-dl.ti.com/dsps/dsps_public.../index_FDS.html

Share this post


Link to post
Share on other sites
Я из-за этих проблем ушел на STM32F207 и решил задачу на нем. но все равно на TI посматриваю. Хуже всего то, что по их документации невозможно поднять USB, поскольку она не полна. Зачитал я ее до дырок, но она все же не содержит всей необходимой информации.

 

Вот, Linux я качал отсюда:

 

http://software-dl.ti.com/dsps/dsps_public.../index_FDS.html

 

 

Я так понимаю, там надо запрос отправлять, и только потом ссылка приедет по емейлу?

 

Я то, что документации никакая, я уже понял. Народ примеры просит e2e.ti.com очень активно. Насколько я понял это USB модуль Integra. Такой же как и в DaVinci.

Вот тут тоже есть http://gitorious.org/linux-davinci/linux-d...ter/drivers/usb

Share this post


Link to post
Share on other sites
Я так понимаю, там надо запрос отправлять, и только потом ссылка приедет по емейлу?

 

Я то, что документации никакая, я уже понял. Народ примеры просит e2e.ti.com очень активно. Насколько я понял это USB модуль Integra. Такой же как и в DaVinci.

Вот тут тоже есть http://gitorious.org/linux-davinci/linux-d...ter/drivers/usb

 

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

А за ссылку спасибо, гляну ...

Share this post


Link to post
Share on other sites
Я из-за этих проблем ушел на STM32F207 и решил задачу на нем. но все равно на TI посматриваю. Хуже всего то, что по их документации невозможно поднять USB, поскольку она не полна. Зачитал я ее до дырок, но она все же не содержит всей необходимой информации.

Хм... Надо было наверно ещё раз до дырок зачитать :)

Я написал свой USB-device-стек на L137 пользуясь исключительно SPRUFM9H и примером USB-device-стека от NXP для LPC2378. Правда USB1.1, но больше и не нужно.

Реализовать обмен через control-endpoint там сравнительно просто - нужно всего десяток регистров. Дальше берете любой пример стека для другого проца, переписываете уровень взаимодействия с аппаратурой и всё. Заняло буквально пару недель.

По крайней мере без DMA, работа с USB там не сложнее работы с SPI.

Ну конечно нужно более-менее знать как работает USB в целом.

Пример инициализации USB есть в SPRUFM9H.

Сначала тоже пытался выдирать что-то из Linux, но понял что гиблое это дело :)

Share this post


Link to post
Share on other sites
Я написал свой USB-device-стек на L137 пользуясь исключительно SPRUFM9H и примером USB-device-стека от NXP для LPC2378.

 

Не видел этого документа. Спасибо, почитаю ...

Edited by kovigor

Share this post


Link to post
Share on other sites
Хм... Надо было наверно ещё раз до дырок зачитать :)

Я написал свой USB-device-стек на L137 пользуясь исключительно SPRUFM9H и примером USB-device-стека от NXP для LPC2378. Правда USB1.1, но больше и не нужно.

Реализовать обмен через control-endpoint там сравнительно просто - нужно всего десяток регистров. Дальше берете любой пример стека для другого проца, переписываете уровень взаимодействия с аппаратурой и всё. Заняло буквально пару недель.

По крайней мере без DMA, работа с USB там не сложнее работы с SPI.

Ну конечно нужно более-менее знать как работает USB в целом.

Пример инициализации USB есть в SPRUFM9H.

Сначала тоже пытался выдирать что-то из Linux, но понял что гиблое это дело :)

 

Я так подозреваю, что настроить USB1 модуль несколько проще, нежели USB0. Мне, конечно, full speed хватит, но в 6745 модуль USB1 отсутсвует!

 

Не видел этого документа. Спасибо, почитаю ...

 

Читал я его, там про USB0 мало что в подробностях написано.

Share this post


Link to post
Share on other sites
Я так подозреваю, что настроить USB1 модуль несколько проще, нежели USB0. Мне, конечно, full speed хватит, но в 6745 модуль USB1 отсутсвует!

Может и проще, не знаю - не пробовал.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this