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

 
 
 
Reply to this topicStart new topic
> USB в LPC2148, Назначение выводов
Maximm
сообщение Nov 1 2007, 19:10
Сообщение #1


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

Группа: Свой
Сообщений: 157
Регистрация: 7-10-07
Из: Санкт-Петербург
Пользователь №: 31 137



Раньше программировал USB на AT89C5131A, теперь перешли на ARM

Так вот поясните, пожалуйста, назначение выводов:

Vbus - в даташите написано, что сигнализирует подключение питания по УСБ, но что-то не очень понятен смысл, это же можно просто с порта посмотреть значение уровня или это так и происходит???

CONNECT и LED_UP - по connect вроде понятно - софтварное притягивание D+ к питанию, но почему это нельзя сделать просто битиком порта??? и там еще написано, что подключестся УСБ, когда на этой ножке низкий уровень, не очень понятно

А вот LED_UP чисто аппаратно включается, если конфигурирование удалось?

Что-то я не нашел, где в регистрах USB или еще в каких, отражаются сигналы CONNECT и Vbus?

Вообще описание USB-регистров очень скудное какое-то, так и не нашел главного регистра управления USB, как он называется?


Прости за вопрос, у меня не очень с английским


--------------------
Если работает через раз - значит не работает!
Go to the top of the page
 
+Quote Post
DASM
сообщение Nov 1 2007, 23:50
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



Битиком нельзя вот почему. на P0-31 если без транзистора включить подтягивающий резистор, то на нем будет низкий уровень при сбросе устройства, а это делать нельзя ибо "Note: This pin MUST NOT be externally pulled LOW when RESET pin is LOW or the
JTAG port will be disabled." Это ис хождения по собственным граблям. Про остальное не скажу
Go to the top of the page
 
+Quote Post
Maximm
сообщение Nov 2 2007, 00:09
Сообщение #3


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

Группа: Свой
Сообщений: 157
Регистрация: 7-10-07
Из: Санкт-Петербург
Пользователь №: 31 137



Цитата(DASM @ Nov 2 2007, 02:50) *
Битиком нельзя вот почему. на P0-31 если без транзистора включить подтягивающий резистор, то на нем будет низкий уровень при сбросе устройства, а это делать нельзя ибо "Note: This pin MUST NOT be externally pulled LOW when RESET pin is LOW or the
JTAG port will be disabled." Это ис хождения по собственным граблям. Про остальное не скажу


Сейчас Р0.31 подключено через резистор к D+, но USB кабель не подключен к устройству, получается висит в воздухе, контроллер включается и JTAG работает, после включение контроллера устанавливается в 1, из-за pull-up резистора видимо

Так в чем же разница между CONNECT и Р0.31 режимами пина?


--------------------
Если работает через раз - значит не работает!
Go to the top of the page
 
+Quote Post
DASM
сообщение Nov 2 2007, 00:12
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



Он не в воздухе висит, а к D+ подключен получается. Не надо так. Нужен транзистор
Go to the top of the page
 
+Quote Post
Maximm
сообщение Nov 2 2007, 00:45
Сообщение #5


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

Группа: Свой
Сообщений: 157
Регистрация: 7-10-07
Из: Санкт-Петербург
Пользователь №: 31 137



Цитата(DASM @ Nov 2 2007, 03:12) *
Он не в воздухе висит, а к D+ подключен получается. Не надо так. Нужен транзистор


Получается, что если USB разъем подключен, то Р0.31 на D+, а если нет, то в воздухе.

Но он никак не оказывается на земле


--------------------
Если работает через раз - значит не работает!
Go to the top of the page
 
+Quote Post
DASM
сообщение Nov 2 2007, 01:02
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



Это как это в воздухе ? На D+ и будет висеть. Покажите схему куска. Резистор не к USB VCC подключать надо, а к процу, иначе на ходу recconect например не получится
Go to the top of the page
 
+Quote Post
Maximm
сообщение Nov 2 2007, 01:14
Сообщение #7


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

Группа: Свой
Сообщений: 157
Регистрация: 7-10-07
Из: Санкт-Петербург
Пользователь №: 31 137



Цитата(DASM @ Nov 2 2007, 04:02) *
Это как это в воздухе ? На D+ и будет висеть. Покажите схему куска. Резистор не к USB VCC подключать надо, а к процу, иначе на ходу recconect например не получится


Что-то тутлю по утру) Действительно на D+.

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

и как управлять у этим выводом?


--------------------
Если работает через раз - значит не работает!
Go to the top of the page
 
+Quote Post
DASM
сообщение Nov 2 2007, 01:27
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



Нельзя напрямую. На D+ нолик будет при включении, он и затянет P0.31 вниз - чего делать нельзя. А может и не будет (не помню) а будет еще что, уже не помню точно. Помню что обломался напрямую включать. Может кто еще подскажет. Но без транзистора так не делают
Go to the top of the page
 
+Quote Post
Maximm
сообщение Nov 2 2007, 01:31
Сообщение #9


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

Группа: Свой
Сообщений: 157
Регистрация: 7-10-07
Из: Санкт-Петербург
Пользователь №: 31 137



Цитата(DASM @ Nov 2 2007, 04:27) *
Нельзя напрямую. На D+ нолик будет при включении, он и затянет P0.31 вниз - чего делать нельзя. А может еще что, уже не помню точно. Помню что обломался напрямую включать. Может кто еще подскажет.


Хорошо, приведите тогда схемку с транзистром

Но на серийном устройстве можно без транзитора обойтись, там же отладка не важна

Так Вы так и не ответили, как программно конектить ЮСБ?


--------------------
Если работает через раз - значит не работает!
Go to the top of the page
 
+Quote Post
DASM
сообщение Nov 2 2007, 01:56
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



В примерах все есть. От IAR . Подключение - есть в схемах китов от Olimex
На вскидку - не помню, зачем хлам итак в дырявой башке держать.
Go to the top of the page
 
+Quote Post
Maximm
сообщение Nov 4 2007, 21:34
Сообщение #11


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

Группа: Свой
Сообщений: 157
Регистрация: 7-10-07
Из: Санкт-Петербург
Пользователь №: 31 137



Цитата(DASM @ Nov 2 2007, 04:56) *
В примерах все есть. От IAR . Подключение - есть в схемах китов от Olimex
На вскидку - не помню, зачем хлам итак в дырявой башке держать.


Думаю это и не такой уж хлам, всё-таки работа с USB сейчас очень актуальна.


--------------------
Если работает через раз - значит не работает!
Go to the top of the page
 
+Quote Post
Velund
сообщение Nov 4 2007, 23:45
Сообщение #12


Знающий
****

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



Цитата(Maximm @ Nov 5 2007, 00:34) *
Думаю это и не такой уж хлам, всё-таки работа с USB сейчас очень актуальна.


Актуальные темы у каждого свои... wink.gif И USB далеко не первая, судя по статистике форума, видимой глазом. Да и 2148 уже постепенно теряет актуальность (для меня во всяком случае), 23 серия интереснее. А если еще и цены не сильно изменятся, то применять 2148 в новых разработках точно не сподоблюсь.
Go to the top of the page
 
+Quote Post
Maximm
сообщение Nov 5 2007, 10:22
Сообщение #13


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

Группа: Свой
Сообщений: 157
Регистрация: 7-10-07
Из: Санкт-Петербург
Пользователь №: 31 137



Цитата(Velund @ Nov 5 2007, 02:45) *
Актуальные темы у каждого свои... wink.gif И USB далеко не первая, судя по статистике форума, видимой глазом. Да и 2148 уже постепенно теряет актуальность (для меня во всяком случае), 23 серия интереснее. А если еще и цены не сильно изменятся, то применять 2148 в новых разработках точно не сподоблюсь.


Так если применяете или раньше применяли LPC-2148 может объясните, что к чему у него.....


--------------------
Если работает через раз - значит не работает!
Go to the top of the page
 
+Quote Post
Axel
сообщение Nov 5 2007, 11:38
Сообщение #14


Местный
***

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



Цитата(Maximm @ Nov 5 2007, 14:22) *
Так если применяете или раньше применяли LPC-2148 может объясните, что к чему у него.....


Резистор нужен для идентификации скорости девайса: для "Full speed" - к D+, для "Low speed" - к D-.
Транзистор нужен для обеспечения режима "Soft connection". Включать его лучше после инициализации USB контроллера (в т/ч PLL), либо после обнаружения контроллером подключения к USB, что и делает P0.31.
Go to the top of the page
 
+Quote Post
DASM
сообщение Nov 5 2007, 13:20
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 3 644
Регистрация: 28-05-05
Пользователь №: 5 493



Цитата(Axel @ Nov 5 2007, 14:38) *
Резистор нужен для идентификации скорости девайса: для "Full speed" - к D+, для "Low speed" - к D-.
Транзистор нужен для обеспечения режима "Soft connection". Включать его лучше после инициализации USB контроллера (в т/ч PLL), либо после обнаружения контроллером подключения к USB, что и делает P0.31.

Вопрос был не куда и что тянуть, а зачем тразистор, а нужен он из за дурацкой полубаги в 21ХХ из-за которой JTAG отключается, если этот вывод на землю затянут. Если JTAG не нужен, то и транзистор тоже не нужен
Go to the top of the page
 
+Quote Post

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

 


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


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