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

konwerter sygnałów RS232 => USB

mrrudzin 21 Sie 2012 21:18 3384 20
  • #1 21 Sie 2012 21:18
    mrrudzin
    Poziom 39  

    Witam

    Mam urządzenie które jest wyposażone w port USB (konwerter USB -> sieć bezprzewodowa). Do tego mam program, który umożliwa zarządzanie tą siecią za pomocą tego urządzenia (dodawanie, usuwanie urządzeń, sterowanie nimi itp). Chciałbym wykorzystać ten konwerter i użyć zwykłego portu RS232 (lub mikrokontrolera typu ATTINY ) żeby móc sterować tą siecią.

    Czy jest to wogóle możliwe? Nie znam szczegółów dotyczących USB - ale da się zbudować przejściówkę RS232 -> USB ?

    0 20
  • Arrow Multisolution Day
  • Pomocny post
    #2 21 Sie 2012 22:50
    gaskoin
    Poziom 38  

    Przejściówką bym tego nie nazwał, raczej konwerterem.

    Ten konwerter to jakiej klasy urządzenie ? HID czy jakaś inna ? Twoje urządzenie musiało by być hostem USB dla tego konwertera i odpowiednio go obsługiwać (jak - to już Ty wiesz najlepiej).

    Niestety zrobienie Hosta USB będzie bardzo trudne na Attiny, lepiej wziąć jakiś układ który wspiera hostowanie USB.

    Przez RS232 bezpośrednio jest to niemożliwe. Jest to możliwe ale z użyciem powyższego hosta USB który musisz zrobić :)

    0
  • #3 22 Sie 2012 07:15
    mrrudzin
    Poziom 39  

    a mógłbyś dać przykład takiego prostego hosta?

    jak z komunikacją z takim hostem? Trzeba rozkazy do urządzenia odpowiednio "pakować" w ramki dla hosta?

    0
  • Arrow Multisolution Day
  • #4 22 Sie 2012 07:29
    gaskoin
    Poziom 38  

    W jakim sensie przykład ?

    Przecież robisz swoje urządzenie, więc czemu mnie się pytasz jak się komunikować z nim ? :D Urządzenie będzie musiało być hostem USB dla Twojego konwertera usb/eth, to jak się z nim skomunikujesz, zależy od Ciebie. IRDA, RS232, Ethernet, BT, CAN, telepatia itd. Wysyłasz np po RS232 stringa "wyswietl mi sieci jakie widzisz do okola", Twoje urządzenie tego stringa analizuje, komunikuje się z konwerterem usb/eth i odpowiada Ci po RS.

    Urządzenie będące hostem, które trzeba obsłużyć poprzez uC USB3300-EZK, ale nie jest to dość przyjemne.

    Najtańszy uC jaki znalazłem, który ma hosta usb to LPC1754

    0
  • #5 22 Sie 2012 08:14
    mrrudzin
    Poziom 39  

    przykład, w takim sensie że próbuje temat ogarnąć, chociaż nie bawiłem się nigdy wcześniej w USB.

    Troche dokładniej - mam przejściówkę USB->bluetooth i chciałbym komunikować się z bluetooth za pomocą układu który ma dostępny tylko port UART (RS232) (Nie wnikamy dlaczego nie chce użyć kości RS232->bluetooth).

    Żeby dało się to zrobić potrzebuje drugi uP z hostem USB, który poradzi sobie z obsługą mojej przejściówki. W tego hosta pakuje stringami rozkazy, on mi odpowiada i komunikacja działa.

    Czy coś pominąłem?

    0
  • #6 22 Sie 2012 08:33
    kuba1im
    Poziom 19  

    Dlaczego nie zrobić po prostu przejściówki USB<=> RS232 na FT232? Co ja mówię o robieniu, na znanym portalu aukcyjnym takie przejściówki są w naprawdę przystępnych cenach (rzędu kilku złotych). Posiadam taką, zakupioną bodajże za 3zł i nie narzekam. Nie używałem jej co prawda do zbyt skomplikowanych rzeczy, ale myślę, że da rade.

    0
  • #7 22 Sie 2012 09:04
    mrrudzin
    Poziom 39  

    kuba1im napisał:
    Dlaczego nie zrobić po prostu przejściówki USB<=> RS232 na FT232? Co ja mówię o robieniu, na znanym portalu aukcyjnym takie przejściówki są w naprawdę przystępnych cenach (rzędu kilku złotych). Posiadam taką, zakupioną bodajże za 3zł i nie narzekam. Nie używałem jej co prawda do zbyt skomplikowanych rzeczy, ale myślę, że da rade.


    Tak, tylko że ta przejściówka działa zupełnie odwrotnie do tego co ja bym chciał.

    Tzn. ona włożona w port USB komputera daje na wyjściu RS232
    A ja chce włożyć w port RS232 komputera (lub uP) urządzenie które działa pod USB.

    0
  • #8 22 Sie 2012 09:09
    kuba1im
    Poziom 19  

    Ale przecież transmisja odbywa się "w tą i z powrotem". Ewentualnym problemem może być sterownik, nie pomyślałem o tym wcześniej, bo pod linuksem po prostu nie musiałem nic instalować.

    0
  • #9 22 Sie 2012 09:24
    mrrudzin
    Poziom 39  

    tak, ale urządzenie typu przejsciówka na FTDI nie jest hostem tylko klientem. A do działania sieci jeśli dobrze rozumiem z opisów potrzebny jest jeden host, kontroler który ma porty. Dopiero do tych portów podłączamy urządzenia końcowe. A urządzeniami końcowymi są u nas i przejściówka o której wspominasz i moje urządzenie, hosta brak

    0
  • #10 22 Sie 2012 09:35
    gaskoin
    Poziom 38  

    Zgadza się, FT232/2232 z tego co mi wiadomo nie może być hostem połączenia.

    Komunkacja po USB odbywa się inaczej niż przez RS. Przez RS popychasz dane i są, natomiast w USB to host kieruje całą komunikacją, co jakiś czas odpytuje, czy przypadkiem slave nie ma mu czegoś do powiedzenia, więc tego tak się zrobić nie da. Nie można więc prowadzić rozmowy typu klient-klient.

    0
  • #12 22 Sie 2012 11:34
    Szymon Tarnowski
    Poziom 27  

    mrrudzin napisał:
    Mam urządzenie które jest wyposażone w port USB (konwerter USB -> sieć bezprzewodowa). Do tego mam program, który umożliwa zarządzanie tą siecią za pomocą tego urządzenia (dodawanie, usuwanie urządzeń, sterowanie nimi itp). Chciałbym wykorzystać ten konwerter i użyć zwykłego portu RS232 (lub mikrokontrolera typu ATTINY ) żeby móc sterować tą siecią.
    Wbrew pozorom najtańszym wariantem będzie użycie komputera PC wraz z dyskiem i systemem windows. Możesz spróbować użyć jakiegoś laptopa, netbooka albo płyty w formacie ITX.

    Jeśli chciałbyś mieć to w mniejszej i poręczniejsze obudowie to potrzeba moduł komputera przemysłowego z linuxem na ARM z hostem USB (koszt ok 250zł) i spróbować ogarnąć ten moduł przy pomocy jakiś driverów linuxowych. Jeśli będą dostępne gotowe drivery to pozostaje "tylko" napisanie od nowa aplikacji zarządzającej modułem, być może dodanie kawałka kodu odpowiedzialnego za warstwę sieci.

    Innym wariatem jest użycie jakiegoś procka z hostem USB (np AVR32 albo ARM7), ale wtedy musisz oprogramować urządzenie od strony aplikacji i jednocześnie od strony drivera, co może nie być trywialne ze względu na braku w dokumentacji. Jeśli będą gotowe sterowniki do Linuxa ze źródłami to możesz się nimi posiłkować.

    A tak poza tematem to mam wrażenie że zabierasz się do tematu od du.. strony, jakikolwiek to by nie był moduł bezprzewodowy, to powinien być dostępny "zamiennik" z portem RS232 albo SPI, czy to Zigbee (lub coś tego typu np z-mesh), Bluetooth, WiFI. Bardzo możliwe że to co siedzi w Twoim urządzeniu to taki moduł i jakiś rodzaj konwertera do USB.

    0
  • #13 22 Sie 2012 11:38
    LordBlick
    VIP Zasłużony dla elektroda

    miszczo997 napisał:
    MAX3421E
    1. SPI≠RS232
    2. W cenie tego układu śmiało zmieści się LPC17XX, który oprócz hosta USB ma w krzemie wiele innych peryferii, m.in. Ethernet... ;)

    0
  • #15 22 Sie 2012 11:40
    LordBlick
    VIP Zasłużony dla elektroda

    Szymon Tarnowski napisał:
    Wbrew pozorom najtańszym wariantem będzie użycie komputera
    Jest nawet takie coś jak RasperryPi... ;)
    Oczywiście z dostępnością w cenie producenta może być problem, ale są również okazje na rynku wtórnym.
    Edit: no i nie zapominajmy o AVR8 z hostem:
    - AT90USB647
    - AT90USB1287

    0
  • #16 22 Sie 2012 14:38
    piotrva
    Moderator na urlopie...

    Są też hosty usb od FTDI, ale też mają interfejs spi. Imho kombinujesz jak koń pod górkę - taniej i latwiej programistycznie będzie kupić gotowy moduł wifi z interfejsem który Ci odpowiada, choć zwykle jest to.SPI. Względnie można dać jakiegoś accesspointa wifi + moduł ethernet np. Enc28j60

    0
  • #17 22 Sie 2012 19:30
    236759
    Użytkownik usunął konto  
  • #19 22 Sie 2012 21:38
    Karaczan
    Poziom 39  

    Ja może nie doczytałem ale Autor chce z RS232 zrobić sprzęt który strawi USB?
    Bo takowego nie widziałem powszechnie dostępnego.
    Zrobić z USB sprzęt który strawi RS232 jest dużo łatwiej, od groma takich adapterów na Allegro nawet. Ale trzeba uważać bo nie każdy obsługuje standard RS232 w pełni.

    0
  • #20 22 Sie 2012 21:47
    gaskoin
    Poziom 38  

    Eureka, autor ma zupełnie inny problem :)

    0
  • #21 22 Sie 2012 22:39
    Karaczan
    Poziom 39  

    Teraz doczytałem ;)
    Zamiast tak enigmatycznie pisać to podał byś nazwę tych sprzętów i wytłumaczył dlaczego chcesz to akurat tak a nie inaczej rozwiązać.
    Opcja z routerem nie jest w sumie taka głupia, są i ethernetowe i WiFi routery w których z łatwizną można dobudować RS232 TTL (na ogół wystarczy podlutować się pod gotowe piny), do tego jakaś wersja OpenWRT lub DD-WRT (linux) i już część masz.

    0