Перейти к содержанию
    

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Отправка в 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;

}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Неужели нет готовых функций для работы с USB? Может кто-нибудь находил все-таки?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

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

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

 

Спасибо

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

Спасибо

 

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

 

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я из-за этих проблем ушел на 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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

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

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

 

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

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

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

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

 

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

Изменено пользователем kovigor

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Я написал свой 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 мало что в подробностях написано.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...