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.

LCD / Atmega - Podłączenie LCD 5V do Atmega 3V3

maximus22_kr 17 Gru 2016 23:24 633 9
  • #1 17 Gru 2016 23:24
    maximus22_kr
    Poziom 18  

    Witam
    Chciałem podłączyć do Atmegi 328 zasilanej z 3,3V, wyświetlacz numeryczny LCD, który wymaga 5V. Szukając rozwiązania problemu, znalazłem trzy wyjścia:
    1. zakup wyświetlacza przystosowanego na 3,3V, jest niestety mniejszy wybór i czasem wyższe ceny.
    2. podłączenie wyświetlacza i jego podświetlania do 5V, linie danych do Atmegi zasilanej z 3,3V, większość osób pisze, że działa, tylko nie można odczytywać zawartości wyświetlacza ( czego nie zamierzam robić )
    3. użycie konwertera poziomów

    i właśnie to ostatnie rozwiązanie mnie interesuje.
    Zamierzam użyć 74LVC245, bo ma odpowiednią ilość wejść/wyjść. Czytając jego notę wyciągnąłem wniosek, że jego wejście A jest na 5V a wyjście B na 3,3V. Jeśli tak, to powinienem podłączyć A do wyświetlacza, a B do Atmegi i ustawić kierunek ( DIR oraz OE ) z B do A.
    Czy dobrze "kombinuję" ?

    Pozdrawiam
    Piotr

    0 9
  • #3 18 Gru 2016 00:44
    BlueDraco
    Specjalista - Mikrokontrolery

    Wyświetlacz z linią R/-W zwartą do masy (bez możliwości odczytu) może współpracować z uC zasilanym z 3.3 V.

    0
  • #4 18 Gru 2016 11:03
    tmf
    Moderator Mikrokontrolery Projektowanie

    I trzecia możliwość - podłączenie także R/W, czyli możliwość odczytu, przy czym na wszystkie linie IO dajemy rezystory 2,2-4,7 kOm.

    0
  • #5 18 Gru 2016 20:04
    BlueDraco
    Specjalista - Mikrokontrolery

    Można, tylko po co cokolwiek odczytywać? Znacznik BUSY nie daje przecież informacji o gotowości sterownika, a odwracanie kierunku portów do odczytu gotowości niepotrzebnie zajmuje czas.

    Najprzyjemnije się gada z HD44780 przez DMA wyzwalane timerem, z przygotowaniem danych dla DMA w przerwaniu timera. :) żadnego oczekiwania, LCD odświeża się prawie sam.

    0
  • #6 18 Gru 2016 20:11
    tmf
    Moderator Mikrokontrolery Projektowanie

    @BlueDraco To prawda, ale jak zaimplementować to na ATMega?:) Szczególnie ten fragment z DMA. Chociaż przy czasach dostępu to tego kontrolera, to równie dobrze to działa w oparciu o przerwania. Kod jak zwykle w mojej stopce :)

    0
  • #8 18 Gru 2016 23:18
    maximus22_kr
    Poziom 18  

    Cytat:
    Wyświetlacz (5V) podłącz przez PCF8574 szyną I2C z konwersją sygnału na dwóch mosfetach i po problemie.

    Tak też na pewno w przyszłości zrobię - na tranzystorach BSS138 + rezystory 10K ( tak przynajmniej robią Chińczycy w swoich konwerterach ), tym bardziej, że mam swoją własną płytkę I2C/LCD.

    Teraz jednak mam już gotową płytkę, którą zasilam obecnie z 5V, a chciałbym do niej podłączyć RFM12 i NRF24L01, podłączyć do niej 3,3V nie problem, podobnie jak podpięcie samego wyświetlacza pod 5V.

    Jeśli jest tak, jak pisze sporo ludzi, że działa sterowanie LCD zasilanego z 5V kontrolowanego z Atmegi zasilanej z 3,3V no to ułatwi to mi działanie.
    Podobno z wyświetlaczami graficznymi jest łatwiej, najczęściej na płytce elektroniki wyświetlacza jest miejsce na układ ( chyba 7660 ) i dwa kondensatory, po ich dodaniu wyświetlacz działa na 3,3V.

    Do tej pory w różnych swoich pomysłach robiłem raczej odwrotnie, np. podpinając kartę microSD przez 74LVC125.

    Jednak z ciekawości brnę dalej i zapytam:
    Zasilając 74LVC245 z 5V, powinienem podłączyć A do wyświetlacza, a B do Atmegi i ustawić kierunek ( DIR oraz OE ) z B do A ?
    Niby nie ma po co utrudniać sobie życia, ale gdyby były jakieś problemy to chciałbym na przyszłość wiedzieć, jak to zrobić "zgodnie ze sztuką", bo jak to niektórzy użytkownicy tego forum piszą: działa, dopóki działa".

    0
  • #10 19 Gru 2016 00:03
    trol.six
    Poziom 31  

    maximus22_kr napisał:
    Zasilając 74LVC245 z 5V, powinienem podłączyć A do wyświetlacza, a B do Atmegi i ustawić kierunek ( DIR oraz OE ) z B do A

    Jedno zasilanie 3V3, reszta dowolna, bo to jest port dwukierunkowy.
    W nocie niby piszą że ma zabezpieczenia. Bo zawsze trzeba uważać gdy podpina się linie różnych napięć, gdy oba są w stanie wyjść, niektóre układy mogą nie wytrzymać bez dodatkowych rezystorków.

    maximus22_kr napisał:
    Niby nie ma po co utrudniać sobie życia, ale gdyby były jakieś problemy to chciałbym na przyszłość wiedzieć, jak to zrobić "zgodnie ze sztuką"

    "Sztuka jest sztuka". Ja często używam rezystorków i działa, tam gdzie działać może. Choć dodatkowa rezystancja na linii narzuca ograniczenia, pogarsza jakość sygnału. Więc nie sprawdzi się w każdym przypadku.

    Są też np. drivery z dwoma zasilaniami np 74LVC1T45.

    0