Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

FT232RL zasilanie układu, sygnały logiczne

fliper_katrill 18 Aug 2010 22:58 5243 12
  • #1
    fliper_katrill
    Level 20  
    Witam serdecznie!
    W zasadzie szukam u kolegów potwierdzenia tego co wydumałem odnośnie wspomnianego układu:
    1. Układ można zasilać do napięcia 5,25V?
    2. Jeśli chodzi o złącze usb podłączane bezpośrednio do uC (ATmega128) to nie potrzebuję żadnych konwerterów, biorę wyjścia układu FT232RL (TXD,RXD)bezpośrednio pod uC?
    3. Całe urządzenie pracuje pod 5V więc samo podłączenie takiego zasilania pod FT232RL wystarczy do ustalenia odpowiedniej wielkości napięcia logicznych zer i jedynek na TXD i RXD (odnośnie pytania 2)?
    Z góry dziękuję za pomoc :)
  • #2
    arturt134
    Level 27  
    Moim zdaniem to 3xTAK :)
  • #3
    ja_fryta
    Level 19  
    3xTAK
    Musisz tylko odpowiedni schemat wybrać z noty katalogowej (zasilanie z kompa, zasilanie własne, itd)
  • #4
    miono
    Level 15  
    W zasadzie to 3xTAK, jednak musisz mieć świadomość, że na USB nie ma dokładnie 5V. Zgodnie ze standardem urządzenia podłączone do portu USB powinny pracować od napięcia 4V (standard usb 3.0, dla 2.0 było 4.4V) do 5.25V. Czasami spotyka się w komputerach noname napięcie, które dochodzi nawet do 6V (bez obciążenia) ale jest to napięcie niezgodne ze standardem. Atmega128 ma szeroki zakres napięć pracy więc jeśli nie masz innych bardziej wymagających układów i chcesz zasilić je z portu USB to nie powinieneś się obawiać.
  • #5
    doles
    Level 19  
    Witam, pozwolę sobie odkopać temat. Chciałbym zasilać układ FT232RL z 3,3V. W datasheecie jest trochę zawile napisane odnośnie tego. Rozumiem, że pin 3v3out muszę podłączyć pod pin VCCIO, natomiast do VCC zasilanie 3,3V ?
  • #6
    Mirko51
    Level 15  
    Hej

    doles wrote:
    Chciałbym zasilać układ FT232RL z 3,3V. W datasheecie jest trochę zawile napisane odnośnie tego. Rozumiem, że pin 3v3out muszę podłączyć pod pin VCCIO, natomiast do VCC zasilanie 3,3V ?


    i tak i nie. Wczytaj się dokładnie w dokumentację. otwórz sobie dokument:
    http://www.ftdichip.com/Support/Documents/DataSheets/ICs/DS_FT232R.pdf
    strona 26, rys. 6.4. Zobacz przykładowy schemat.

    VCCIO możesz zasilić z 1.8 - 5.25V (np. z wyjścia LDO FTDI lub z zewnątrz).
    VCC wymaga zasilania 4.0 - 5.25V (wewnętrzny OSC), 3.3 - 5.25V (zewnętrzny OSC).

    wbudowane LDO FTDI 3V3 ma wydajność max. 50mA. Więc nie poszalejesz, jeśli chcesz zasilić z niego inną elektronikę.

    Musisz pamiętać, o tym, jakią konfigurację zasilania wybierasz: self powered czy USB bus powered.

    A więc podsumowując:
    - VCCIO możesz podłączyć pod 3V3OUT jeśli wybierasz taki schemat zasilania I/O
    - VCC ma być zasilane od 4V, jeśli korzystasz z wbudowanego OSC, więc trzeba podłączyć pod 5V z USB albo z wewnątrz płytki

    A zastanawiałeś się nad układem FT230X?
    O ile dobrze czytam, to jego pin VCC można zasilać od 2.97V - więc jest lepiej niż dla FT232RL.
  • #7
    doles
    Level 19  
    Witam Cie Mirko51 :) Zaraz zabieram się za przeanalizowanie problemu wg. Twojej wskazówki. W sumie zaskoczyłeś mnie inną możliwością jaką jest układ FT230X, głównie patrząc na dużą różnicę cenową - FT232 jest blisko 2x droższy od układu który mi zaproponowałeś co jest bardzo ciekawe. Czy koralik ferrytowy jest wymagany w tej aplikacji ? Nie ma za dużo mowy o nim, o wartości rezystancji i prądu jaki powinien mieć. Pytam ponieważ w zestawie ewaluacyjnym Gotronik jaki posiadam jest układ FT232 i nie ma tam w ogóle koralika.

    Dziękuję za odpowiedź i życzę spokojnych Świąt Bożego Narodzenia mimo, że już się kończą :)
  • #8
    Mirko51
    Level 15  
    dzieki za zyczenia ;)) rowniez pozdrawiam.

    uklady FT230x i jemu podobne pojawily sie stosunkowo niedawno. Wiekszosc ludzi nadal stosuje FT232RL z rozpedu, jest ogolnie dostepny i popularny. Jak dla mnie ten uklad jest troche na wyrost (posiada pelen UART, a dla wiekszosci przypadkow wystarcza tylko linie RX/TX), jesli potrzeba prostego mostka USB. I cena tez nie powala.
    tu jest super zestawienie ukladow:
    www.ftdichip.com/Products/ICs.htm
    moja rada: dobierac uklad pod aplikacje, nie sugerowac sie tym co inni powielaja bezmyslnie.

    koralik - nie rozumiem czemu wiekszosc aplikacji stosuje koralik w wersji THT, ktory jest ogromny. Ja zalecam stosowanie dlawika/cewki SMD 0805 lub 1206. Chodzi o odfiltrowanie zaklocen. Nic zlego sie nie stanie, jesli nie bedzie koralika/dlawiks - uklad moze byc troszke bardziej podatny na zaklocenia, element jest konieczny w aplikacjach pracujacych w warunkach przemyslowych lub gdzie port USB jest mocno zaszumiony. Moim zdaniem warto dac dlawik SMD, maly, tani.

    Jak zrobisz schemat, wrzuc prosze tutaj, ocenimy czy wszystko OK ;) pozdrawiam.
  • #9
    doles
    Level 19  
    Przedstawiam schemat bez koralika - mógłbym użyć zamiast niego dławika 10uH ?

    FT232RL zasilanie układu, sygnały logiczne
  • #10
    Mirko51
    Level 15  
    dławik 10u? To zależy jaką ma rezystancję DC (najlepiej <0.5R) oraz prąd nasycenia (min. 100mA).
    Ja stosuję ferryty serii BLM18/BM21 Muraty w obudowach 0603/0805. Np. taki może być: BLM21AJ601SN1D. Rdc = 0.3R, Imax=0.2A.

    Generalnie schemat jest dobry. Mam kilka sugestii:
    1. pojemności C21, C22 powinny być mniejsze 10-15p. Wiem, wiem, FTDI podaje 47p, ale taka wartość może tłumić sygnał USB. Na liniach USB sygnał masz 480MHz, do tego harmoniczne sygnału cyfrowego osiągają >1GHz. Typowe elementy ESD dla magistrali USB mają pojemności własne kilka pf, po to by nie obciążać, tłumić sygnału użytecznego.
    2. shield złącza USB - powinien być po stronie Device USB podłączony do GND przez układ rownoległy RC 1M/10n.
    3. kondensator C19 (bypass) powinien znajdować się blisko pinu 12 U6.
    4. brak bypass 100n na pin 3 U6 (VCCIO). Kondensator C20 jest bypassem dla pin 10 U6.
    5. można podłączyć na liniach CBUS opcjonalną sygnalizację LED TX/RX.
    6. można dać na linii USB_VCC diodę zenera 5V6 albo transil 5V0 - proste zabezpieczenie nadnapięciowe (niektóre PC potrafią dać napięcie dochodzące do 6V).
    7. pin RESET jest OK - zazwyczaj zostawia się go niepodłączonego, ale producent podaje możliwość podłączenia nieużywanego RESET do VCC. I dobrze się składa, że pin RESET jest obok 3V3OUT - piny 10 i 11, więc nie będzie problemu z prowadzeniem ścieżek.

    Domyślam się, że ATMEGA jest zasilana z 3V3? Generalnie powinieneś natrafić na nietypowy mankament - jak odłączysz zasilanie od AVR a USB będzie podłączone, to na procesorze będzie dalej napięcie zasilające - ponieważ w stanie ustalonym na TXD U6 występuje stan wysoki, który podawany na linię RX procesora i zasila jego.
    Rozwiązanie powyższego problemu:
    a) zmiana schematu zasilania - self powered
    b) dodanie rezystorów szeregowych 220 - 1k na liniach TX i RX U6.

    Chętnie rzucę okiem na projekt PCB ;)
  • #11
    doles
    Level 19  
    Mirko51 bardzo dziękuję Ci za dotychczasową pomoc i życzliwość :) Dobrze, że na tym forum są jeszcze tacy ludzie, którzy sami chcą pomóc. Właśnie mam wykonany projekt PCB i chciałem go z kimś skonsultować, jest to niewielka część mojej pracy inżynierskiej - dlatego tym bardziej zależy mi aby to działało. Ogólnie z pracą mam parę bardzo trudnych dla mnie i ciężkich do wyjaśnienia problemów a promotora mam ... eh, szkoda gadać. Nic nie pomaga i nic nie doradza, a od tego powinien być. Dobrze, wrzucę narazie schemat całego sterownika oraz PCB bez dodatkowych zmian które zaproponowałeś - w tym wypadku będę musiał się pobawić aby upchnąć to jeszcze na i tak już zapakowane PCB, ale to nie będzie problem - wystarczy, że zmienię listwy pinowe do LCD np w kształt 4x4 a nie 1x8 co jest bardziej "miejscożerne". Pozwolę sobie dla ułatwienia wrzucić cały projekt spakowany do .zip jako załącznik tematu :)

    Pozdrawiam :)
  • #12
    Mirko51
    Level 15  
    tak na szybko zauważone drobiazgi:

    SCH:
    - staraj się w polu wartości (Comment) stosować dokładne part number wybranego komponentu lub przynajmniej skróconą jego wartość. Zalecam nie stosować pola Comment do oznaczania funkcji pełnionej przez komponent (np. LCD_Control, JTAG). Lepiej użyć do tego celu Text String.
    cpu:
    - nety TCK, TMS, SCL_I2C, RESET i inne podobnie wiszące - staraj się kłaść netów w ten sposób, nie wiele trzeba, by wire stracił powiązanie z netem.
    - buzzer - jesteś pewnien, czy I/O da radę go napędzić? Jaki wybrałeś model?
    - nie wiem, gdzie wyprowadzasz sygnały ze złącz RJ, ale to trochę niebezpieczne (zakłócenia, możliwość uszkodzenia I/O lub procesora) - branie sygnału z procka bez żadnej separacji. W najprostszej wersji daj rezystory szeregowe >100R (zależy jaka częstotliwość zmian na I/O oraz obciążalność wymagana linii) albo bufory / transoptory. Wiem, I2C trudno separować od CPU, rezystory mogą zaszkodzić, zwykłe jednokierunkowe bufory nie będą działać na linii DAT (są gotowe scalaki bufor I2C)
    - wyprowadzanie zasilania RJ, Dallas - warto by dać bezpiecznik polimerowy 0805/1206
    - czy LCD będzie standardowy tekstowy HD44780 z zasilaniem 5V? Jesteś pewnien, że może poprawnie pracować przy sterowaniu z linii 3V3? Luknij w PDF wyświetlacza. Czy pamiętałeś o regulacji kontrastu, sterowaniem podświetleniem?
    - stany nieustalone - czy atmega po włączeniu zasilania posiada włączone domyślnie pull-up? jeśli Nie - trzeba uważać na pływające wejścia układów, jeśli Tak - trzeba sprawdzić, co elementy zrobią po podaniu na nie słabej 1 logicznej
    - złącza P1, P2, P3, P12, P13 - nie lepiej dać standardowe 2x7 lub 2x8 pin zgodne z HD44780?
    - brak rezystorów pull-up na I2C to celowy zabieg?
    zasilacz
    - czy ten U5 jest konieczny 1A i w obudowie TO263 jeśli zasilasz tylko LCD? Potrzeba Ci takiej mocy na podświetlenie?
    - przydałby się kondensator >=10u na wyjściu U5
    ukl mocy
    - jaki wiatrak (prąd max. <0.5A) - może Q4, Q5 wystarczyłby w SOT23 - BC817?
    - R7, R8 wystarczy 10k, R9, R10 >= 1k
    - Q4, Q5 - uważać na stany nieustalone; można zmienić na mniejszy w SOT23 - BC817?
    RTC
    - Y2 - można dać pad do przylutowania obudowy, taki kwarc lubi się pałętać po płytce
    - RTC ma być jako generator 1Hz? celowo nie podłączyłeś do procka I2C z RTC? - nie jest to marnotrastwo układu? Nie da się takiego generatora zrobić programowo na timerze procka? Całe szczęście, że RTC startuje na INT jako generator 1Hz ;)
    - RTC o ile pamiętam ma wyjścia Open Drain - brak pull up.
    - RTC - jak nie korzystasz z podtrzymania bateryjnego to zewnętrzny RTC jest zbędny - można w procku emulować RTC z pełnym kalendarzem - mogę podrzucić takie kody, w sieci też znajdziesz taką emulację. Dodatkowo RTC na procku uzyskujesz dowolną podstawę czasu, np. 1ms.
    - USB - jak zmienisz zasilanie na self powered 3V3 to pamiętaj o dodaniu dzielnika na RESET U6

    PCB:
    - footprinty staraj się ujednolicić, najlepiej wszystkie pasywne elemnety, jeśli nie jest wymagane inaczej (moc, napięcie, itp.) daj 0805 (np. C6, C7), zyskasz na miejscu - da się polutować bez problemu nawet osobie początkującej
    - L1 daj w wersji 0805 lub 1206 - np. serii BLM18/BLM21. Rdc < 0.5R, Isat > 0.1A.
    - U7 może być w SO8?
    - sterowanie P7 i P8 - można dać elementy SMD?
    - U3 i U4 - masz przewężenie na GND pin 2 - zmień w Rules => Plane => Polygon Connect dla U3, U4 albo ręcznie wstaw ścieżki w tych krytycznych obszarach (to samo dotyczy innych elementów łączących się z GND)
    - płytkę wykonujesz w płytkarni? Możesz zmiejszyć przelotki na: hole 0,5 / pad 1 mm, ścieżki sygnałowe nie krytyczne wystarczą 10 lub 12 mil.
    - masz kilka "kwiatków" - jak np.: ścieżka do buzzera ze zbędną via, zbędny PolyRegion
    - USB - może być miniUSB?
    - P5, P7, P8 - może być terminal block z rastrem 3,5 lub 3,81?
    - paskudną masz tą masę ;) cięcie poligonu GND na warstwie bottom - staraj się nie ciąć tego poligonu na osobne, małe fragmenty - jak już musisz, to połącz sąsiednie wyspy przelotkami. Popracuj na layoutem ;)
    - jak już chcesz robić otwory montażowe NPTH pod złącza RJ - idziesz w dobrą stronę ;) pad X, Y daj na 0, plated: odznaczone, Hole Size > 0, Solder mask => force tenting => zaznaczone

    Jak zastosujesz powyższe to zmiejszysz płytkę co najmniej 20%.

    projekt:
    - nie ma sensu pakować każdego footprinta do osobnej biblioteki
    - poszalałeś z tym Rules Width dla PCB ;)
  • #13
    doles
    Level 19  
    Witam, nie miałem za bardzo czasu zajrzeć na forum przez ostatnie parę dni :)

    - buzzer -> próbowałem już go odpalić z procka, jest OK. Model to:
    http://www.tme.eu/pl/details/bmt-1203ux/sygna...y-elektromag-z-generatorem/bestar/bmt1203ux/#

    - sygnały ze złącz RJ45 wyprowadzam do dwóch czujników przez 2m kable UTP. Jeden czujnik to SHT11 (czujnik wilgotności i temperatury) drugi to TSL2561 (czujnik światła na I2C). Oba zostały już osobno uruchomione i wszystko działało OK.

    - LCD będzie graficzny, 128x64 piksele ze sterownikiem KS0108. Zasilanie 5V natomiast już wcześniej próbowałem z nim i przy sygnałach rzędu 2,8V wyświetlacz działał poprawnie. Będzie on na osobnej płytce, która już jest zrobiona i działa. Jest tam regulacja kontrastu.

    - co do stanów nieustalonych za bardzo nie rozumiem :P

    - brak rezystorów pull-up na I2C - tak się złożyło, że rezystory te przez nieuwagę i brak pomyślunku wrzuciłem na płytkę PCB z czujnikiem światła. Wartości rezystorów to z tego co pamiętam 10k.

    - stabilizator U5 - wybrałem taki ponieważ mam go przy sobie. Dokładnie 78M05 i nie chcę kupować innego. Bardzo dużo już wydałem pieniędzy na ten projekt, bo doszedł tutaj cały sterownik (statecznik i zapłonnik) lampy sodowej, BOX w którym jest roślina itp. Naprawdę drogo to wszystko wyszło, dlatego staram się używać elementów które mam. W nowej wersji schematu dałem na wejściu i wyjściu U5 kondensator 100uF. Nie za dużo ?

    - dwa wiatraki 12V o maksymalnym prądzie 0,3A. Tutaj tak jak wcześniej napisałem, raczej nie będę zmieniać obudów różnych elementów ze względu na cięcie kosztów :D mam dużo tranzystorów BC547 i BC550 dlatego chciałem je wykorzystać. Tak samo ma się sprawa ze złączami USB itp.

    - RTC - tak, jest tylko generatorem sygnału 1Hz. Być może masz rację z marnotrawieniem scalaka, ale mnie to nie przeszkadza :) Wg. mnie wyszedł fajny pomysł z tym sygnałem 1Hz i przerwaniem zewnętrznym int0 gdzie tylko inkrementuje zmienne aby doliczyć do iluś godziń. Nie chciałem robić tego programowo.

    - jeśli chodzi o USB, to układ FTDI będę zasilał z portu USB.

    U7 jest to DIP8, zmieniać go już nie będę ponieważ mam go na stanie :)
    Co do P7 i P8 to chyba kupię listwy pinowe SMD.
    Płytka wykonana będzie na frezarce w instytucie elektroniki na polibudzie, zgodnie z jej zasadami i regułami.

    Mógłbyś mi podpowiedzieć więcej odnośnie poligonu jako masy ?
    Bardzo dziękuję za konkretne podpowiedzi :)