logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

układ scalony do USB i oprogramowanie

efpegie 12 Kwi 2005 22:36 5811 7
REKLAMA
  • #1 1400244
    efpegie
    Poziom 11  
    Chciałbym transmitowć dane przez USB do kompa. W kompie chciałbym napisać program (Visual C++ 6.0, Visual .NET) do wizualizacji i zapisu danych. Dane będą pochodzić z przetwornika analogowo-cyfrowego bez bufora danych czy FIFO, na zasadzie <próbka> transmisja przez USB <zapis>.

    Jak mam się do tego zabrać? Czy ktoś już zrobił podobny projekt lub fragment z tego, co opisałem?
  • REKLAMA
  • #2 1400645
    elektryk
    Poziom 42  
    1. Skorzystać z google i znaleźć gotowe projekty
    2. Poszukac na forum i poczytać posty ludzie który już coś takiego zrobili.
  • REKLAMA
  • Pomocny post
    #3 1404210
    h-doc
    Poziom 27  
    Jest to do zrobienia. Na początek dobierz odpowiedni układ USB (polecam coś z FTDI) i mikrokontroler.
    Nie trzeba dużego doświadczenia w projektowaniu, żeby zrobić taki układzik. Pomyśl tylko nad kilkoma rzeczami:
    1. jaką planujesz prędkość transmisji (mi nie udało się osiągnąć owych 12Mbps, które zapewnia USB 1.1)
    2. zastanów się, czy jednak nie będziesz potrzebował jakiegoś dodatkowego bufora (wbudowany w FTDI bufor FIFO jest mały i niestety nie pozwala się zapisywać w momencie wypuszczania paczki danych do hosta - w moim projekcie był to spory problem).
    3. Od strony oprogramowania nie ma większych problemów - API sterowników do FTDI jest logiczne i proste jak drut.
  • #4 1478222
    mszczygi
    Poziom 12  
    Witam
    Oprócz chip-u FTDI można jeszcze spróbować z układem Philips-a
    PDIUSBD11. Jest to konwerter (bridge) z magistrali I2C na USB 1.1.
    Jeżeli zamierzasz nie korzystać z mikrokontrolera pośredniczącego pomiędzy przetwornikiem A/D a układem USB, to w ten sposób unikniesz
    konieczności konwertowania sygnału np.: I2C na RS-232 TTL i przesyłania go na przez USB. Wystarczy że zastosujesz poczwórny 8-bitowy (zależy jaką chcesz uzyskać dokładność pomiaru) przetwornik A/D z wyjściem szeregowym na magistralę I2C. Może to być np.: PCF8591
    i masz cztery kanały pomiarowe i jeden kanał wyjścia napięciowego do sterowania. W załączonych plikach podaję dokumentację do tych układów.
    Układ PDIUSBD11 najłatwiej kupic w ELFIA-ie. Jest u nich drogi ale najszybciej go dostaniesz.
    Pozdrawiam
  • #5 1725710
    loks
    Poziom 12  
    mszczygi skoro tak polecasz PDIUSBD11 to mam pytania zwiazane z tym kontrolerem:

    1. Używałeś go kiedyś w jakimś fizycznym układzie?
    2. Jak należy skonfigurować rejestry wewnątrz tego układu, aby np. dane zapisane w pamięci zewnętrznej flash wysyłać za pomocą USB do komputera?
    Instrukcja Philipsa jest raczej uboga, a opcji do ustawienia w tym kontrolerze jest dużo - można sie pogubić ;-)
    http://www.semiconductors.philips.com/acrobat_download/datasheets/PDIUSBD11_N_3.pdf

    3. Jak system WinXP bądź jakiś inny, będzie widział to urządzenie tj. jako dodatkowy dysk?

    Pozdrawiam,
    Łukasz
  • REKLAMA
  • #6 1725742
    u24
    Poziom 14  
    jesli nie potrzebujesz pelnej wydajnosci usb1.1 to zerknij na ft232, bridge rs232 na usb... od strony pcta widziany jest jako jeszcze jeden comX...

    mozesz tez zerknac na www.cypress.com, chlopaki robia procki ala 51' z wbudowanym usb
  • #7 1725766
    loks
    Poziom 12  
    Właśnie tu jest pies pogrzebany ;-)
    Na gotowej płytce mam już układ PDIUSBD11. Nie mogę użyć FT232 lub CP2102 bo wszystkie USART'y w ATmega128 mam już zajęte. Teoretycznie mogłbym użyć jakiegoś multipleksera np. 74HC244 do przełączania portu USART lub na innych portach programowo zrobic USART, ale płytkę mam już gotową, elementy przylutowane i to, niestety nie wchodzi w grę :cry:
    Pozostaje mi tylko obsłużyć PDIUSBD11, ale mam z tym problem, bo nie wiem jak sie do tego zabrać....

    Pozdrawiam,
    Łukasz.
  • REKLAMA
  • #8 1736878
    PiotrekD
    Poziom 13  
    Ja proponuje jeszcze inne rozwiazanie - AT91SAM7S64 - procesor ARM z USB 2.0. Koszt tylko 30zł brutto. Masz w nim wszystko mozesz dowolnie wykorzystac dostepne ENDPOINT'y najszybciej w trybie isochrononicznym. Naistotniejze ze masz przyklad jak wykorzystac USB - praca ze srodowiskiem IAR - ale z tym nie ma problemu bo mozesz sciagnac 30 dniowa wersje. Dodatkowo mozesz poszerzyc swoja wiedze i sprobowac swoich sil ze sterownikami WDM ( Win2k i WinXp ) gdzie prducent udostepnil sterowniki pod przyklad. Zaleta takiego rozwiazania jest to ze nie uzalezniasz sie do ograniczen sprzetowych i programowych, elastycznosc rozwiazania to naprawde zaleta. Probelmy ktore sie pojawia (a prawie zawsze tak bywa) sa kwestia rozwiazania, wlasnego podejscia i tylko kwestia czasu, jezeli przestraszysz sie ich na wejsciu nigdy nic nie osiagniesz. Ja osobiscie przetestowalem ten uP - wlasciwe nowosc bo od niedawna pojawis sie na rynku. Wczesniej probowalem swoich sil ze starym ukladem USBN9603 i z pozytywnym rezultatem udalo mi sie zaporojektowac konwerter USB-I2C.
REKLAMA