LINUX.ORG.RU

Протокол USB

 


0

3

USB устройству запрещено обращаться к хосту по собственной инициативе, оно может только отвечать на запросы.

Например USB мыша при инициализации говорит хосту как часто ее нужно опрашивать (достаточно таки часто)

Зачем они так?

★★★★

Последнее исправление: redixin (всего исправлений: 1)
Ответ на: комментарий от redixin

Флешки используют конечные точки типа Bulk, так что все зарабоатет.

А вот если ты воткнешь 3 камеры, то 4 может уже не определиться, так как стек не может гарантировать запрашиваюмую пропускную способность.

alexru ★★★★
()

С одной стороны хочется сказать «Enjoy you USB» (намаялся с ним тоже), с другой стороны другие шины (тот же Ethernet) не на много лучше.

beastie ★★★★★
()
Ответ на: комментарий от Stanson

А при чём тут межблочные соединения? Они внутри микроконтроллера и на их количество в общем-то насрать.
Ну приведи пример хоть одного МК о 16 ногах с EMAC пусть и без PHY.

ну ты реально дятел - то тебе насрать, то не можешь посчитать что внезапно 9 пинов только на связь с PHY надо если там RMII.

Да откуда этот бред про потребление и размеры? Сравни реализацию USB-device и eth для какого-нибудь FPGA.

при чем тут FPGA ? вот тебе програмный USB-девайс на AVR

https://ru.wikipedia.org/wiki/V-USB

найди что-нибуть подобное для изирнета. Самое популярное решение для микроконтроллеров с изирнетом через SPI - ENC28J60 (MAC+PHY), смотрим даташит

Operating Current:

Transmitting Ethernet packets - 160 mA Active, not transmitting Ethernet packets - 120 mA

дрочи дальше на изирнеты

anonymous
()
Ответ на: комментарий от anonymous

ну ты реально дятел - то тебе насрать, то не можешь посчитать что внезапно 9 пинов только на связь с PHY надо если там RMII.

Ты реально дятел, если не можешь посчитать что 9 < 16. А с PHY - вообще всего 4 пина.

при чем тут FPGA ?

При том, что можно посчитать количество вентилей.

найди что-нибуть подобное для изирнета.

На.

http://www.cesko.host.sk/IgorPlugUDP/IgorPlug-UDP (AVR)_eng.htm

http://www.stanson.ch/index.php?page=proj&proj=EtherPIC

И это 10Мбит, а не та херня что в V-USB.

Transmitting Ethernet packets - 160 mA Active, not transmitting Ethernet packets - 120 mA

Ну и на собственно Ethernet надо всего 40mА. Напомню, что питалово USB - до 500mА. Так что и с потреблением всё замечательно.

Stanson ★★★★★
()
Ответ на: комментарий от Stanson

не можешь посчитать что 9 < 16

молодец посчитал, теперь прикинь дятел - кому нужен микроконтроллер у которого почти все ноги заняты питанием, тактированием и интерфейсом для PHY

http://www.stanson.ch/index.php?page=proj&proj=EtherPIC
И это 10Мбит, а не та херня что в V-USB.

оригинально - да, но

Спасибо, если бы еще наоборот по Ethernet управлять типа релюшками и прочим.
Декодировать манчестер - это уже гораздо сложнее чем его же создать. Но, в общем-то возможно.
На самом деле, вот тут уже гораздо проще поставить ENC28J60 или другой контроллер

вся суть - срать пакетами в одну сторону на скорости 10 Мбит. Справедливости ради V-USB мне лично тоже не усрался, проще готовое аппаратное взять.

anonymous
()
Ответ на: комментарий от anonymous

молодец посчитал, теперь прикинь дятел - кому нужен микроконтроллер у которого почти все ноги заняты питанием, тактированием и интерфейсом для PHY

Ты вообще в курсе, что почти у каждого микроконтроллера непременно найдётся конфигурация периферии где большая часть ног занята каким-нибуть SPP или там клавиатурным контроллером?

И вообще, не очень понятно, нахрена нужен именно внешний PHY в микроконтроллере.

вся суть - срать пакетами в одну сторону на скорости 10 Мбит.

И только потому, что когда-то давно придумали это сраное USB. Для приёма Ethernet нужен всего лишь декодер манчестера который занял бы на кристалле в разы меньше места чем та же USBшная требуха.

Впрочем, в отличии от USB, Ethernet-датчику уже более чем достаточно только срать пакетами, при этом расход пзу и озу на это дело значительно ниже чем организация того же сранья через USB.

Справедливости ради V-USB мне лично тоже не усрался, проще готовое аппаратное взять.

Для USB - несомненно. Потому что оно есть. А готового апааратного Ethernet в мелких мелкопроцессорах - нету. Приняли бы Ethernet как стандарт для периферии - были бы и аппаратные решения. А так - вместо них дурацкое USB, которое не только сложнее в железе, но и требует даже для простейших задач хотя бы минимальную поддержку Control Endpoint и дескрипторов.

В общем, очень жаль что в данном случае бритва Оккама не сработала, и родился этот дурацкий велосипед в виде USB.

Stanson ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

usb 2.0 полудуплекс с разделением по времени

usb 3.0 фулдуплекс

там вот так

dimon555 ★★★★★
()

Зачем они так?

Вот сразу видно кукаретика, который ни разу в жизни не пытался запихнуть N устройств на одну последовательную шину!

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.