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

 
 
 
Reply to this topicStart new topic
> lpc2148 или lpc2138 с внешним чипом usart-usb
iDenis
сообщение Oct 23 2007, 03:59
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 29
Регистрация: 1-08-06
Из: St.-Petersburg, China
Пользователь №: 19 243



Я раньше всегда использовал внешний чип-преобразователь usart-usb, и сейчас почитав форумы о использовании встроенного USB в lpc2148 стою перед делемой lpc2148 или lpc2138 с внешним чипом usart-usb?

по критериям...
1. мне не нужно HID совместимое юсб устройство, со стороны компьютера все равно будет ставится софт.
2. скорость порядка 1 Mbit
Go to the top of the page
 
+Quote Post
DASM
сообщение Oct 23 2007, 04:11
Сообщение #2


Гуру
******

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



А какие проблемы ? Нет тут проблем - 2148 ставьте
Go to the top of the page
 
+Quote Post
grau
сообщение Oct 23 2007, 06:40
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 49
Регистрация: 3-02-05
Пользователь №: 2 390



Цитата(iDenis @ Oct 23 2007, 07:59) *
стою перед делемой lpc2148 или lpc2138 с внешним чипом usart-usb?


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

А вообще - полет нормальный..
Go to the top of the page
 
+Quote Post
DASM
сообщение Oct 23 2007, 06:56
Сообщение #4


Гуру
******

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



"USB является синхронной шиной.Т.е. 1000 раз в секунду будет вызываться прерывание." - проц может просто аппаратно NACK выдавать, если уж так занят. Прерывания таким образом можно запрещать на это время
" Устройство определяется раньше, чем заливается прога по JTAG" pull-up D+ не забыть на процик завести
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Oct 23 2007, 07:05
Сообщение #5


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(grau @ Oct 23 2007, 09:40) *
А вообще - полет нормальный..
А как сегодня решают проблему VID/PID? Используют чужие/покупают VID/покупают пучок PID?


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
grau
сообщение Oct 25 2007, 09:26
Сообщение #6


Участник
*

Группа: Участник
Сообщений: 49
Регистрация: 3-02-05
Пользователь №: 2 390



Цитата(DASM @ Oct 23 2007, 10:56) *
"USB является синхронной шиной.Т.е. 1000 раз в секунду будет вызываться прерывание." - проц может просто аппаратно NACK выдавать, если уж так занят. Прерывания таким образом можно запрещать на это время


Во-первых, это приводит к уменьшению скорости передачи на хост. А во-вторых, речь идет о том, что частая и обязательная обработка прерывания от шины может сбить процессы, зависимые от таймера. К примеру: вошли в обработчик прерывания USB, тут же пришло прерывание от таймера. И насколько опоздает в итоге его обработка? Один таймер - можно выкрутится через FIQ, а если несколько - то все гораздо хуже..
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Oct 25 2007, 10:40
Сообщение #7


Гуру
******

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



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

Во-первых, прерывания для работы с USB использовать вовсе не обязательно. Во-вторых, кто мешает сделать вложенные прерывания и дать таймеру более высокий приоритет?
Go to the top of the page
 
+Quote Post
DASM
сообщение Oct 25 2007, 12:17
Сообщение #8


Гуру
******

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



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

Во-первых ... ой блин, увидел, aaarrr уже ответил. короче +1 к нему
Go to the top of the page
 
+Quote Post
Shkn
сообщение Oct 25 2007, 14:11
Сообщение #9


Участник
*

Группа: Новичок
Сообщений: 15
Регистрация: 28-08-07
Пользователь №: 30 105



Цитата(aaarrr @ Oct 25 2007, 14:40) *
Во-первых, прерывания для работы с USB использовать вовсе не обязательно.


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

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


Прочел AN10381Nesting of interrupts in the LPC2000. Честно говоря - не пробовал, но наверное возможно.
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Oct 25 2007, 14:18
Сообщение #10


Гуру
******

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



Цитата(Shkn @ Oct 25 2007, 18:11) *
Что имеется в виду? Опрос в цикле, DMA..?

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

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

Поверьте, еще как возможно smile.gif
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 30th June 2025 - 14:31
Рейтинг@Mail.ru


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