Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Bezpośrednie sterowanie diodą LED poprzez USB

slaweks86 15 Gru 2008 21:45 6642 13
  • #1 15 Gru 2008 21:45
    slaweks86
    Poziom 9  

    Chciałbym napisać prosty program, który sterowałby diodą podłączoną do USB. Wiadomo, że USB ma cztery kabelki o określonych funkcjach. Chciałbym to napisać w C. Czy da się to tak zrobić, żeby sterować włączeniem i wyłączeniem tej diody przez komputer?

    Proszę o pomoc jak to zrobić. Czy wystarczy przecięty kabelek USB, dioda i środowisko C?

    Poprawiłem tytuł. - arnoldziq

    0 13
  • #2 16 Gru 2008 01:21
    Dr.Vee
    VIP Zasłużony dla elektroda

    Nie, nie wystarczy.

    Najprościej zdobyć przejściówkę USB -> RS-232 i oprogramować wszystko jako port szeregowy.

    Tak czy inaczej długa droga przed Tobą :)

    Pozdrawiam,
    Dr.Vee

    0
  • #3 16 Gru 2008 01:52
    slaweks86
    Poziom 9  

    a po co robić przejściówkę? Chyba ze masz na myśli to, że programowanie USB jest trudne...

    no dobra. A jeśli by tak zrobić jak mówisz to co dalej? wiadomo, że jakieś tam napięcie z kompa leci sobie do tego kabla (chyba 5V) ale jak napisać program dzięki któremu będę mógł sterować diodą? Jest jakaś specjalna biblioteka do tego?

    0
  • #4 16 Gru 2008 12:54
    Chris_W
    Poziom 37  

    To troche inaczej sformułuje pytanie (dla autora może się przydać) - czy da się włączać i wyłączać programowo zasilanie USB?

    0
  • #5 16 Gru 2008 14:57
    fantom
    Poziom 31  

    Chris_W napisał:
    To troche inaczej sformułuje pytanie (dla autora może się przydać) - czy da się włączać i wyłączać programowo zasilanie USB?


    Nie mozna i tego co autor chce tez zrobic nie mozna.

    0
  • #6 16 Gru 2008 22:06
    slaweks86
    Poziom 9  

    Rzeczywiście lepiej sformułowane pytanie.

    No dobra, to w takim razie jak zrobić żeby ta dioda po prostu sobie migała? Czy konieczne będzie użycie mikrokontrolera?

    0
  • #7 17 Gru 2008 01:55
    Dr.Vee
    VIP Zasłużony dla elektroda

    Kup sobie na allegro diodę migającą.

    Pozdrawiam,
    Dr.Vee

    0
  • #8 17 Gru 2008 18:52
    Minner
    Poziom 18  

    ale jesteście pomocni, nie ma co :D
    slaweks86 obsługa USB jest strasznie utrudniona, przez jego architekturę i metody dostępu. Nie można bezpośrednio odwołać się do konkretnego portu USB, a już na pewno nie zrobisz jego kontroli przez polecenie typu "LED_ON();"
    Nie może być np RS232?

    0
  • #9 18 Gru 2008 22:06
    saper_2
    Poziom 17  

    Minner napisał:
    ale jesteście pomocni, nie ma co :D
    slaweks86 obsługa USB jest strasznie utrudniona, przez jego architekturę i metody dostępu. Nie można bezpośrednio odwołać się do konkretnego portu USB, a już na pewno nie zrobisz jego kontroli przez polecenie typu "LED_ON();"
    Nie może być np RS232?

    może zrobić LED_ON(); ale to będzie procedura sterująca układem z uc po usb :] ,domyślam sie ze nie ma rs232 w komputerze (laptop, nowe mobo w desktopie )
    Jak chcesz mieć sterowanie czymś używając USB zobacz na AVRUSB z http://www.obdev.com/products/avrusb/index.html mają w przykładowych projektach sterownik z chyba 8 wyjściami - oczywiście wszystko na uC AVR.

    0
  • #10 19 Gru 2008 09:15
    marek_Łódź
    Poziom 36  

    fantom napisał:
    Chris_W napisał:
    To troche inaczej sformułuje pytanie (dla autora może się przydać) - czy da się włączać i wyłączać programowo zasilanie USB?


    Nie mozna i tego co autor chce tez zrobic nie mozna.


    Robi to podsystem oszczędzania energii w pececie.
    Migającą diodę na USB najprościej zrobić używając FT232

    0
  • #11 07 Mar 2010 01:49
    murjak
    Poziom 12  

    mógł byś odrobine rozwinąć temat ?

    0
  • #12 07 Mar 2010 15:35
    arnoldziq
    Moderator Programowanie

    marek_Łódź napisał:
    Migającą diodę na USB najprościej zrobić używając FT232


    Układy serii FT232, firmy Future Technology Devices International, to układy scalone, które zamieniają sygnał USB na sygnał RS232 (COM).
    Służą one między innymi do budowy przejściówek USB <-> COM.
    Bez tego typu urządzenia/przejściówki, nie uda się raczej koledze sterować diadą LED bezpośrednio z USB.
    Nie jest to tylko mój wymysł, tak samo sądzi wiele osób wypowiadających się w tym temacie.

    Jeżeli nie zależy koledze na otrzymaniu odpowiedz na swoje pytanie, która to odpowiedź została tu udzielona co najmniej kilka razy, lub uważa kolega, że wszyscy są tu w błędzie, to proponuję przenieść się do innego działu forum.
    Może ktoś w dziale Początkujący Nauka, odpowie koledze dokładniej, dlaczego bezpośrednie podłączenie LED do USB nie ma kompletnie sensu.

    0
  • #13 08 Mar 2010 12:41
    marek_Łódź
    Poziom 36  

    1. Układy FT232 oprócz linii sygnałowych RXD/TXD, posiadają linie binarne (m.in. linie sterowania modemem), które mogą być wykorzystane jako interfejs równoległy (np. do LED). Przy większej liczbie pinów lepiej zastosować układy USB<>PARALEL np. FT245.

    2. Prostym i tanim rozwiązaniem jest interfejs Osamu Tamury : https://www.elektroda.pl/rtvforum/viewtopic.ph...mura&sid=d3ed8e300eac686a364684a30aee1784 dostępna wersja softu I/O pozwala na bezpośredni dostęp do pinów portu niewielkiego procesorka AVR przy pomocy prostych komend tekstowych wysyłanych na wirtualny port szeregowy. Gotowe rozwiązania (schemat, wsady procesora, driver CDC) : http://www.recursion.jp/avrcdc/index.html

    3. Alternatywą dla układów FT232 mogą być procesory ze sprzętowym USB (AVR, PIC itp...) np ATMega32U4

    1
  • #14 08 Mar 2010 13:38
    murjak
    Poziom 12  

    Dziękuje za wyczerpującą odpowiedź, teraz już dowiedziałem się wszystkiego co potrzebowałem.

    0
  Szukaj w 5mln produktów