USB kolejność

co się dzieje z urządzeniem które jest zasilane z portu USB a które dopiero co włożyliśmy w gniazdko USB? interesuje mnie taka kwestia, procek ma kontroler USB, włączamy go do gniazda USB więc procek dostaje zasilanie, ale jego kontroler USB jest zablokwany... co się wtedy dzieje na szynie? intersuje mnie jaka jest kolejność odblokowywania kontrolera USB w procku i endpoinów, co najpierw a co później i co dzieje się na szynie...

w specyfikacji jest to pominięte...

Reply to
identyfikator: 20040501
Loading thread data ...

Patrz spec, tam nic nie jest pominięte. Po załączeniu zasilania na szynie usb nic się nie dzieje, dopiero procesor jak zrobi "connect" zaczyna się akcja... enumeracja itd. Nie wiem na jakim poziomie szczegółowości Cię to interesuje.

Mister

Użytkownik "identyfikator: 20040501" snipped-for-privacy@onet.eu napisał w wiadomości news:fenavf$5j5$ snipped-for-privacy@nemesis.news.tpi.pl...

Reply to
Mister

Użytkownik "Mister" snipped-for-privacy@wp.pl napisał w wiadomości news:fene4s$h9u$ snipped-for-privacy@atlantis.news.tpi.pl...

Witam Zauważ, że gniazdo USB jest tak skonstruowane, że najpierw przy podłączaniu dochodzi do podłączenia dwoch zewnetrznych wyprowadzen, póżniej dopiero 2 wewnetrzne. Tworcy USB przeprowadzili doswiadczenie, ze nie da sie wlozyc wtyczki szybciej tak, zeby pomiedzy polaczeniem zewnetrznych, a wewnetrznych nie bylo kilkudziesieciu ms czasu przerwy. Te zewnetrzne to masa i zasilanie. W skrocie procesor ma kilkadziesiat ms na reset, a dla mikroprocesora jest to dosc duzo. Dopiero po resecie dochodzi do podlaczenia

+D i -D, wtedy gdy procesor jest juz gotowy po resecie. Pozdrawiam

Michał Słowik

Reply to
invalid unparseable

Fri, 12 Oct 2007 14:31:34 +0200 jednostka biologiczna o nazwie mk <REVERSE snipped-for-privacy@myzskm.REMOVE wyslala do portu 119 jednego z serwerow news nastepujace dane:

IMVHO nie ma to znaczenia, chodzi raczej o to żeby połączyć najpierw masę (no i zasilanie też), żeby w razie różnicy potencjałów między urządzeniami nie doszło do uszkodzenia układów (do jakiego mogłby dojść gdyby najpierw zostały połączone linie sygnałowe).

Reply to
__Maciek

Michał Słowik pisze:

Kilkadziesiąt ms???? Na moje oko , bez problemu da się szybciej. Możesz podać źródło informacji?

pzdr mk

Reply to
mk

dzięki, a jeszcze jedno, ponoć w procesie enumeracji w Windows występują dwa resety szyny USB tak? pomiędzy jakimi etapami?

Reply to
identyfikator: 20040501

Tak,

Po wykryciu "connect" (podłączenie pull upa do D+ dla FS lub D- dla LS), windows wystawia usb_reset na magistrali usb, następnie wystawia request GET_Device w wyniku tego dostaje odpowiedz w postaci DeviceDescriptora, ale tak naprawdę interesuje go tylko 7 bajt w którym jest zakodowany max_packet_size endpointa zerowego(kontrolnego). Po rozpoznaniu rozmiaru Windows ustawia sobie już właściwą jego wartość, robi ponowny usb_reset i już po tym leci normalna enumeracja.

Mister

Reply to
Mister

Ciekawa teoria:-) A jak to bedzie w przypadku złącz miniUSB? tam odległości są minimalne?

Zauważ, że usb_reset a reset procesora to zupełnie dwie różne sprawy. Mister

Reply to
Mister

Użytkownik "mk" <REVERSE snipped-for-privacy@myzskm.REMOVE napisał w wiadomości news:fenpfa$pgj$ snipped-for-privacy@news.wp.pl...

Witam Zrodlo to wyklady z politechniki Wroclawskiej z przed 2 lat. Najlatwiej to sprawdzic podlaczajac oscyloskop cyfrowy. Z tego co pamietam to byly czasy rzedu 20-40ms, ale reki sobie nie dam uciac. Nie mam zadnego zrodla pisanego, nawet te wyklady z dysku, gdzies mi wyparowaly. Pozdrawiam

Michał Słowik

Reply to
invalid unparseable

Dopoki urzadzenie nie zostanie "zarejestrowane" i nie poda swojego poboru pradu moze "lagalnie" pociagnac tylko niewielki prad z szyny (patrz doku), po podlaczeniu zglasza swoja obecnosc przez podciagniecie linie danych (ktora linia na jaki stan - zalezy od max. szybkosci urzadznia, patrz

formatting link
i czeka na enumeracje ze strony hosta.

W specyfikacji jest wszystko co chcesz wiedziec - trzeba ja tylko przejzec

Reply to
abert zielonka

Dopoki urzadzenie nie zostanie "zarejestrowane" i nie poda swojego poboru pradu moze "lagalnie" pociagnac tylko niewielki prad z szyny (patrz doku), po podlaczeniu zglasza swoja obecnosc przez podciagniecie linie danych (ktora linia na jaki stan - zalezy od max. szybkosci urzadznia, patrz

formatting link
i czeka na enumeracje ze strony hosta.

Nie myl pojęć. Co to znaczy "zarejestrowane"? Co to znaczy, że moze "lagalnie" pociagnac tylko niewielki prad z szyny? Aby host wiedział jaki prąd bedzie pobierało urządzenie z linii VBUS musi go najpierw przeenumerować ;-)

Mister

Reply to
Mister

Mister pisze:

100 mA max.

No właśnie. A do tego czasu może ciągnąć ile chce (o ile nie jest to więcej niż 100 mA). Na tej zasadzie działają ciepłe kapcie USB, wiatraczki itp. urządzenia, które z USB nie mają właściwie nic wspólnego (poza wtyczką wydającą z siebie 4,5-5,5V 100 mA).

W dodatku gdy urządzenie nie ma pullupa na linii D+ ani D-, jest praktycznie niewidoczne dla hosta (może inteligentny hub cośtam wyczai z zużyciem prądu, ale raczej zareaguje dopiero na przekroczenie 100 mA).

Reply to
Adam Dybkowski

Z tego co pamiętam w procesorku którego używałem podciągnięcie linii danych do zasilania, czyli pojawienie się urządzenia na szynie USB, następowało dopiero po zakończeniu resetu procesora. W dokumentacji było napisane by nie dawać rezystora podciągającego bezpośrednio do zasilania jeśli planujemy zasilać procesor z szyny USB.

Reply to
Andrzej W.

Dokładnie, dla urządzeń BUS_POWERED sygnalizacja dla hosta (connect) musi się rozpoczynać po zakończeniu inicjalizacji komponentu usb i co więcej: po rozłączeniu szyny usb, rezystor podciągający również powinien zostać odłączony(ale to akurat bardziej odnosi się do urządzeń typu SELF_POWERED).

MiSter

Reply to
Mister

identyfikator: 20040501 napisał:

Podstawowym błędem przy tworzeniu urządzenia USB jest zakładanie, że akcje w procesie enumeracji będą zachodzić w jakieś określonej kolejności. Po prostu odpowiadaj na żądania i monitoruj stan linii odpowiednio na to reagując. Polecam książkę 'USB Complete' pani Axelson :)

Reply to
Szymon Janc

a jeszcze zapytam przy okazji, ktoś przerabiał USB ze scalakiem PIC18F4550? taki fajny scalak, a tak marnie napisana dokumentacja zwłaszcza rozdział o USB... gdyby ktoś był wtejemniczony to proszę wesprzec mnie w rozumieniu dokumentacji.

Reply to
identyfikator: 20040501

Niestety ten procesor to dla mnie tajemnica:( ale z ciekawości zapytam ile toto kosztuje?

Pozdrawiam MiSter

Reply to
Mister

16 pln na allegro, ma sporo peryferiów i do tego w obudowie DIP, samemu można sobie zrobić płytkę ;o)
Reply to
identyfikator: 20040501

Mister pisze:

Przysyłają za darmo, jeśli chcesz na próbę. Niestety, przez "wspaniałych" allegrowiczów, pewnie niedługo przestaną.

Reply to
Andrzej W.

Ceny okazyjne raczej mnie nie interesują, chciałbym poznać cenę za jaką go można kupić w ilościach dowolnych, czy może np konkurować cenowo np z AT91SAM7S64? (Też ma USB).

MiSter

Reply to
Mister

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.