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

 
 
> USB на u-Boot для LPC1788
Novichok1
сообщение Mar 5 2012, 13:13
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 73
Регистрация: 8-07-09
Пользователь №: 51 032



Здравствуйте!

Сделали свою плату на базе процессора LPC1788. Стоит задача поставить туда uCLinux, для этого сперва поставили туда u-boot (http://www.lpcware.com/content/project/lpc177x8x-u-boot-port). Все вроде нормально, консоль и внешняя SDRAM проинициализированы, но возникли проблемы с USB. Использую USBHostLite (отсюда: http://sw.lpcware.com/). В исходниках говориться, что он прошел тестирование на LPC1788. Но у меня почему-то не работает, различие только в распиновке - у меня на USB используются только две ноги: USB_D1+ и USB_D1-. Но я это учел в инициализации ног. Так вот, после инициализации мы входим в прерывание USB_IRQHandler, но в регистре LPC_USB->RhPortStatus1 не поднят бит подключения устройства (CurrentConnectStatus), а взведен только бит PortPowerStatus. Надо отметить, что резет я делаю со вставленной флэшкой. Так что я уже не знаю как завести USB и куда еще можно посмотреть.

Заранее спасибо за любую помощь!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
skripach
сообщение Mar 5 2012, 13:48
Сообщение #2


■ ■ ■ ■
*****

Группа: Свой
Сообщений: 1 100
Регистрация: 9-08-06
Пользователь №: 19 443



Цитата
различие только в распиновке - у меня на USB используются только две ноги: USB_D1+ и USB_D1-. Но я это учел в инициализации ног.

USBPortSel - 0x2008 C110 и OTGStCtrl - 0x2008 C110 правильно настроили?


--------------------
Делай что должен и будь что будет.
Go to the top of the page
 
+Quote Post
Novichok1
сообщение Mar 6 2012, 05:45
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 73
Регистрация: 8-07-09
Пользователь №: 51 032



Спасибо за ответ!
Эти регистры вроде настроены правильно:

Код
    // Enable USB host clock, OTG clock & AHB master clock
    uint32 ctrl = ((1 << 0) | (1 << 3) | (1 << 4));
    LPC_USB->OTGClkCtrl   = ctrl;
    while ((LPC_USB->OTGClkSt & ctrl) != ctrl);

    // 01: U1 = host (OTG), U2 = host
    LPC_USB->StCtrl = 0x1;


Регистры OTGStCtrl и USBPortSel располжены по одному адресу 0x2008 C110. Для USB хоста использую USB1, второй канал USB не используется.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Novichok1   USB на u-Boot для LPC1788   Mar 5 2012, 13:13
- - Novichok1   Все, заработало! Дело было в неправильной доку...   Mar 12 2012, 04:46
|- - andrewlekar   Цитата(Novichok1 @ Mar 12 2012, 09:46) Вс...   Mar 20 2012, 06:04
- - Novichok1   Да, цепочка загрузки такая, только в зависимости о...   Mar 20 2012, 07:00
- - andrewlekar   Да, решили на всякий случай заложить флэшку на 64 ...   Mar 20 2012, 07:51
- - Novichok1   Ну помойму флэшки все-таки побольше надо, мало ли ...   Mar 20 2012, 08:19
- - andrewlekar   Про нанд ничего не могу сказать... BSP может и куп...   Mar 20 2012, 08:26
- - Novichok1   Они откроют его через полторы недели (when-will-uc...   Mar 20 2012, 09:03
|- - PoReX   Цитата(Novichok1 @ Mar 20 2012, 12:03) Он...   Mar 22 2012, 07:04
- - andrewlekar   Отличная новость. Сэкономим 100 баксов   Mar 20 2012, 09:17
- - Novichok1   ЦитатаFor those willing to wait, we've agreed ...   Mar 22 2012, 08:30
- - PoReX   Не заметил эту высказывание. Выглядит заманчиво, в...   Mar 22 2012, 09:48


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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 20:07
Рейтинг@Mail.ru


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