Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: lpc2148 или lpc2138 с внешним чипом usart-usb
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
iDenis
Я раньше всегда использовал внешний чип-преобразователь usart-usb, и сейчас почитав форумы о использовании встроенного USB в lpc2148 стою перед делемой lpc2148 или lpc2138 с внешним чипом usart-usb?

по критериям...
1. мне не нужно HID совместимое юсб устройство, со стороны компьютера все равно будет ставится софт.
2. скорость порядка 1 Mbit
DASM
А какие проблемы ? Нет тут проблем - 2148 ставьте
grau
Цитата(iDenis @ Oct 23 2007, 07:59) *
стою перед делемой lpc2148 или lpc2138 с внешним чипом usart-usb?


Тоже стоял перед такой дилемой. Решил выбрать встроенную периферию. Из граблей стоит отметить пожалуй:
1. Требовалась работа с устройством без установки драйверов. Замаскировался под HID, а под ним нельзя больше 64000 Б/с снять.
2. USB является синхронной шиной.Т.е. 1000 раз в секунду будет вызываться прерывание. У меня это привело к сбоям в оцифровке в АЦП, пришлось его на fiq перевесить.
3. Возникли трудности с отладкой. Устройство определяется раньше, чем заливается прога по JTAG, хотя это, скорее всего, не сложно пофиксить.

А вообще - полет нормальный..
DASM
"USB является синхронной шиной.Т.е. 1000 раз в секунду будет вызываться прерывание." - проц может просто аппаратно NACK выдавать, если уж так занят. Прерывания таким образом можно запрещать на это время
" Устройство определяется раньше, чем заливается прога по JTAG" pull-up D+ не забыть на процик завести
Сергей Борщ
Цитата(grau @ Oct 23 2007, 09:40) *
А вообще - полет нормальный..
А как сегодня решают проблему VID/PID? Используют чужие/покупают VID/покупают пучок PID?
grau
Цитата(DASM @ Oct 23 2007, 10:56) *
"USB является синхронной шиной.Т.е. 1000 раз в секунду будет вызываться прерывание." - проц может просто аппаратно NACK выдавать, если уж так занят. Прерывания таким образом можно запрещать на это время


Во-первых, это приводит к уменьшению скорости передачи на хост. А во-вторых, речь идет о том, что частая и обязательная обработка прерывания от шины может сбить процессы, зависимые от таймера. К примеру: вошли в обработчик прерывания USB, тут же пришло прерывание от таймера. И насколько опоздает в итоге его обработка? Один таймер - можно выкрутится через FIQ, а если несколько - то все гораздо хуже..
aaarrr
Цитата(grau @ Oct 25 2007, 13:26) *
Во-первых, это приводит к уменьшению скорости передачи на хост. А во-вторых, речь идет о том, что частая и обязательная обработка прерывания от шины может сбить процессы, зависимые от таймера. К примеру: вошли в обработчик прерывания USB, тут же пришло прерывание от таймера. И насколько опоздает в итоге его обработка? Один таймер - можно выкрутится через FIQ, а если несколько - то все гораздо хуже..

Во-первых, прерывания для работы с USB использовать вовсе не обязательно. Во-вторых, кто мешает сделать вложенные прерывания и дать таймеру более высокий приоритет?
DASM
Цитата(grau @ Oct 25 2007, 13:26) *
Во-первых, это приводит к уменьшению скорости передачи на хост. А во-вторых, речь идет о том, что частая и обязательная обработка прерывания от шины может сбить процессы, зависимые от таймера. К примеру: вошли в обработчик прерывания USB, тут же пришло прерывание от таймера. И насколько опоздает в итоге его обработка? Один таймер - можно выкрутится через FIQ, а если несколько - то все гораздо хуже..

Во-первых ... ой блин, увидел, aaarrr уже ответил. короче +1 к нему
Shkn
Цитата(aaarrr @ Oct 25 2007, 14:40) *
Во-первых, прерывания для работы с USB использовать вовсе не обязательно.


Что имеется в виду? Опрос в цикле, DMA..?

Цитата(aaarrr @ Oct 25 2007, 14:40) *
Во-вторых, кто мешает сделать вложенные прерывания и дать таймеру более высокий приоритет?


Прочел AN10381Nesting of interrupts in the LPC2000. Честно говоря - не пробовал, но наверное возможно.
aaarrr
Цитата(Shkn @ Oct 25 2007, 18:11) *
Что имеется в виду? Опрос в цикле, DMA..?

Ну да, поллинг или DMA - что же еще?

Цитата(Shkn @ Oct 25 2007, 18:11) *
Прочел AN10381Nesting of interrupts in the LPC2000. Честно говоря - не пробовал, но наверное возможно.

Поверьте, еще как возможно smile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.