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

 
 
 
Reply to this topicStart new topic
> Молчит USB на LPC1751, но работает на LPC1768, Молчит USB на LPC1751, но работает на LPC1768
ruslannd
сообщение Jan 20 2014, 20:15
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 106
Регистрация: 4-04-06
Пользователь №: 15 783



Доброго времени суток.

есть две почти одинаковые схемы, одна на lpc1751, другая на lpc1768. Заливается одинаковая программа одинаковая для обоих контроллеров (по даташиту получается, что они в части USB одинаковые, а отличаются памятью). Все, что не касается USB device - работает на обоих контроллерах. USB работает только на 1768. Не могу понять в чем дело.
Cхема подключения USB одинаковая. Программы пробовал разные, из разных USB библиотек - результат одинаков.
Где-то на форуме видел, что человек сталкнулся с точно такой же проблемой на LPC1752, но там тема заглохла.
Помогите кто чем может)))) Кто-нибудь запускал USB на LPC1751/1752?

Заранее спасибо.
Go to the top of the page
 
+Quote Post
megajohn
сообщение Jan 20 2014, 20:35
Сообщение #2


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

Группа: Свой
Сообщений: 1 080
Регистрация: 16-11-04
Из: СПб
Пользователь №: 1 143



ножки на USB используются одинаковые ? А то там есть маленькая премудрость


--------------------
Марс - единственная планета, полностью населенная роботами (около 7 штук).
Go to the top of the page
 
+Quote Post
ruslannd
сообщение Jan 20 2014, 20:41
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 106
Регистрация: 4-04-06
Пользователь №: 15 783



Цитата(megajohn @ Jan 21 2014, 00:35) *
ножки на USB используются одинаковые ? А то там есть маленькая премудрость


Вроде одинаковые. А что за премудрость?
Go to the top of the page
 
+Quote Post
jcxz
сообщение Jan 21 2014, 03:49
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



LPC1751 не пробовал, но LPC1768->LPC1758 без проблем.
Начинал проект на отладке (LPC1768) с USB-device, когда появилась готовая раб. плата с LPC1758 просто поменял номера ног и всё пошло без проблем.
Разберитесь хотя-бы, что именно у вас не работает - на каком этапе затыкается.
Go to the top of the page
 
+Quote Post
megajohn
сообщение Jan 21 2014, 05:57
Сообщение #5


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

Группа: Свой
Сообщений: 1 080
Регистрация: 16-11-04
Из: СПб
Пользователь №: 1 143



Цитата(ruslannd @ Jan 21 2014, 00:41) *
Вроде одинаковые. А что за премудрость?

не, у посчитал LPC1768 и LPC1778 схожими, но не так.
Вообщем в LPC1778 есть такое:
Note that GPIO pins P0[29] and P0[30] are shared with the USB_D+ and USB_D- pins
and must have the same direction. If either DIR0 bit 29 or 30 are configured as zero, both
P0[29] and P0[30] will be inputs. If both DIR0 bits 29 and 30 are ones, both P0[29] and
P0[30] will be outputs


--------------------
Марс - единственная планета, полностью населенная роботами (около 7 штук).
Go to the top of the page
 
+Quote Post
andrewlekar
сообщение Jan 21 2014, 06:17
Сообщение #6


Знающий
****

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



Connect лапа дергается?
У LPC1778 другие номера эндпоинтов используются.
Память под USB дескрипторы правильно разместили?
Go to the top of the page
 
+Quote Post
jcxz
сообщение Jan 21 2014, 09:21
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(megajohn @ Jan 21 2014, 11:57) *
не, у посчитал LPC1768 и LPC1778 схожими, но не так.
Вообщем в LPC1778 есть такое:

Читайте ветку внимательнее. При чём тут LPC1778???
Между LPC175x и LPC176x различий очень мало. А LPC177x уже сильно от них отличается.
Go to the top of the page
 
+Quote Post
ruslannd
сообщение Jan 21 2014, 17:56
Сообщение #8


Частый гость
**

Группа: Участник
Сообщений: 106
Регистрация: 4-04-06
Пользователь №: 15 783



Цитата(andrewlekar @ Jan 21 2014, 10:17) *
Connect лапа дергается?
У LPC1778 другие номера эндпоинтов используются.
Память под USB дескрипторы правильно разместили?


Connect в единице. Хотя, возможно, при включении происходит инициализация USB, и он переключается. Физически Connect не использую, т.к. в мануале сказано, что он для програмного перезапуска или что-то вроде этого. Мне это не нужно. Просто повесил ресзистор на +3v3

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

Мне кажется, что дело именно в памяти, что мною найденные примеры были расчитаны на жирные LPC17xx, а на самой хилой 1751 работать не хотят из-за того, что неправильно память где-нибудь в модуле USB распределена. Хотя, все компилится и компилятор говорит о том, что требуется меньше 1кБ ОЗУ
Прикрепленные файлы
Прикрепленный файл  HID.rar ( 44.09 килобайт ) Кол-во скачиваний: 4
 
Go to the top of the page
 
+Quote Post
ruslannd
сообщение Jan 22 2014, 05:21
Сообщение #9


Частый гость
**

Группа: Участник
Сообщений: 106
Регистрация: 4-04-06
Пользователь №: 15 783



Сделал следующее:
Спаял две одинаковые платы с одинаковыми компонентами из одних и тех же упаковок, но на одну поставил LPC1751, а на другую LPC1758.
Компилил, как на 1751 и заливал в оба контроллера без изменений

В результате на 1758 USB работает без проблем, а на 1751 - нет((
Эту же прошивку параллельно заливал в LPC1768 в аналогичной схеме - все работает как часы.
По мануалу (он общий для этих трех контрллеров) эти контроллеры для меня различаются только объемом памяти.

Может, будут какие идеи?

Сообщение отредактировал ruslannd - Jan 22 2014, 05:23
Go to the top of the page
 
+Quote Post
andrewlekar
сообщение Jan 22 2014, 05:22
Сообщение #10


Знающий
****

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



Резистор между +3.3 и D+?

Открыл наконец доку по LPC1751. Блин, там всего 8к озу на всё. Вряд ли дело в памяти. А вот инициализация частоты у вас странная.
Для PLL0 MSEL = 100, а NSEL = 4. При этом для PLL1 MSEL = 6, а PSEL = 2. Если у вас кварц 4 мгц, то сам проц работать будет, а вот 48 мгц для USB уже не получается. Если у вас кварц 12 мгц, как написано в комментариях, то у вас проц не должен запускаться.
Go to the top of the page
 
+Quote Post
ruslannd
сообщение Jan 22 2014, 05:28
Сообщение #11


Частый гость
**

Группа: Участник
Сообщений: 106
Регистрация: 4-04-06
Пользователь №: 15 783



Цитата(andrewlekar @ Jan 22 2014, 09:22) *
Резистор между +3.3 и D+?

Открыл наконец доку по LPC1751. Блин, там всего 8к озу на всё. Вряд ли дело в памяти. А вот инициализация частоты у вас странная.
Для PLL0 MSEL = 100, а NSEL = 4. При этом для PLL1 MSEL = 6, а PSEL = 2. Если у вас кварц 4 мгц, то сам проц работать будет, а вот 48 мгц для USB уже не получается. Если у вас кварц 12 мгц, как написано в комментариях, то у вас проц не должен запускаться.


Резистор, конечно, есть, на 1к5.

Кварц на 8Мгц. С LPC1768 такие настройки уже третий год штампуются.

Здесь разница именно в контроллерах. Вот только где?

Сообщение отредактировал ruslannd - Jan 22 2014, 05:29
Go to the top of the page
 
+Quote Post
andrewlekar
сообщение Jan 22 2014, 05:37
Сообщение #12


Знающий
****

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



Ну вот в даташите написано, что с такими настройками как у вас, не должно ничё работать. 8 мгц с множителем 100 даст Fcco = 800, а это нельзя. Про PLL1 сказано, что он с кварцами до 10 мгц не стартует.
Go to the top of the page
 
+Quote Post
ruslannd
сообщение Jan 22 2014, 06:03
Сообщение #13


Частый гость
**

Группа: Участник
Сообщений: 106
Регистрация: 4-04-06
Пользователь №: 15 783



Цитата(andrewlekar @ Jan 22 2014, 09:37) *
Ну вот в даташите написано, что с такими настройками как у вас, не должно ничё работать. 8 мгц с множителем 100 даст Fcco = 800, а это нельзя. Про PLL1 сказано, что он с кварцами до 10 мгц не стартует.


Вы правы, за исключением того, что Fcc=400 (итоговый множитель там 200, а не 100, но есть предделитель на 4), А с PLL1 косяк вышел, будем исправлять. Спасибо за замечания.

С USB только что разобрался, оказалось, что ребята из Keil'a неправильно обращались с регистром USBClkSt и ждали когда в его бите 3 появится единица. Недоразумение исправил. Все заработало. Всем спасибо.

Сообщение отредактировал ruslannd - Jan 22 2014, 06:04
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 18th July 2025 - 12:38
Рейтинг@Mail.ru


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