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

Gdzie znajdę zawartość biblioteki LCD_I2C_PCF8574.lib? BASCOM.

nouki 29 Sty 2023 16:49 1059 15
REKLAMA
  • #1 20411475
    nouki
    Poziom 25  
    Witam.

    Podesłał by ktoś zawartość biblioteki lcd_i2c_PCF8574.lib. Znalazłem jakieś ale wyświetlają błędy przy kompilacji a inne nie działają.

    Dzięki.

    Przejściówkę wykrywa, zmianę adresu wykrywa.

    Gdzie znajdę zawartość biblioteki LCD_I2C_PCF8574.lib? BASCOM.IMG_202301...181423.jpg Download (1.02 MB)

    Wyświetlacz pokazuje jedynie to
    Gdzie znajdę zawartość biblioteki LCD_I2C_PCF8574.lib? BASCOM.IMG_202301...181524.jpg Download (935.6 kB)

    Zadziałała biblioteka z postu:
    https://www.elektroda.pl/rtvforum/topic2955811.html#14261707

    Brak tylko sterowania podświetlaniem.
  • REKLAMA
  • Pomocny post
    #2 20412402
    bart-projects
    Poziom 29  
    Tych bibliotek jest więcej a najnowsza i umożliwiająca podłączenie kilku wyswietlaczy na raz pod róznymi adresami jest tutaj ->
    https://www.mcselec.com/index2.php?option=com_forum&Itemid=59&page=viewtopic&t=14773

    Na MCS trzeba się zarejestrować żeby było widac załączniki.

    W najnowszych bibliotekach trochę zależy od wersji Bascom`a bo jeśli ma wprowadzoną obsługę nowych Xtiny i AVRX to potem stare Bascom`y nie mają wprowadzonych tych stałych.

    Jesli więc jakiś Bascom typu 2080 wyświetla że nie wie co to jest Xtiny_ to trzeba napisać "Const Xtiny_ = 0"

    Bibliotek z podświetlaniem mam conajmniej trzy. W jednej trzeba napisać "Dim Backlight As Byte : Backlight = 1" a w innej że Backlight = 128 bo to jest ósmy bit który to włącza w PCF`ie...
  • #3 20412484
    nouki
    Poziom 25  
    W tej co podałem z linka niby jest 0 lub 1 ale przy 0 jest na wyjściu 0 a przy 1 jest 0,7v . Próbowałem też 128,255.. Każde większe od 1 daje takie same napięcie jak jeden.
  • REKLAMA
  • #6 20413072
    bart-projects
    Poziom 29  
    U mnie ten kod się kompiluje bo mam wersję 2085SLA.
    Dobrym zwyczajem jest zawsze napisać na jakiej wersji się pracuje bo ja mam wszystkie od 2075 i zawsze coś mogę sprawdzić.

    Tymczasem łap inną sprawdzoną bibliotekę z podświetlaniem.

    Kod: VB.net
    Zaloguj się, aby zobaczyć kod
  • #7 20413103
    nouki
    Poziom 25  
    Na 2.0.8.3 kompiluje się na starszej jest błąd jak pokazałem. Po wgraniu z nowszej wyświetlacz nie inicjuje się zostają dwa pola kwadratów linia 1 i 3 i jakieś krzaki.
  • REKLAMA
  • #9 20413115
    nouki
    Poziom 25  
    Poprzednia wypowiedz tyczyła się lcd_i2c_PCF8574.lib.

    Na tej kolejnej (bl_Lcd_i2c.lib) działa, wyświetla ale nadal podświetlania brak.
    Backlight = Backlight_on
    Wait 1
    Backlight = Backlight_off

    Tak samo się zachowuje jak pisałem na początku 0v lub 0,7v. Sprawdzałem na 3 przejściówkach .
  • REKLAMA
  • #10 20413329
    bart-projects
    Poziom 29  
    Kolego napisanie tego kodu i sprawdzenie o co chodzi zajęło mi 10 minut. Na żywym procesorze ahahahaha razem z połączeniem :D

    Kod: VB.net
    Zaloguj się, aby zobaczyć kod


    Kiedyś tam czytałem note katalogową a i multimetrem jakoś władam.
    Otóż ten PCF ma bardzo słabą wydajność prądową jesli chodzi o stan wysoki czyli nie mozna z niego nic "cyckać". Jedyne co może jako tako to "open drain" do masy.

    Tak więc w tej przejściówce zworka musi być założona na stałe tak że podświetlanie jest nawet jak nie jest sterowane a mikroprocesor moze te podświetlanie jedynie wyłączyć.
    Załóż zworkę i ten kod będzie migał podswietlaniem co 500ms.
  • #11 20413615
    nouki
    Poziom 25  
    Między pcf-em a podświetlaniem jest tranzystor w minusie tyle że brak opornika miedzy bazą a wyjściem pcf-a . Plus podświetlania idzie na zworkę.
    Znalazłem jeszcze inną bibliotekę i podświetlanie działa tyle że jak je wyłączy to już się nie załączy.

    Na tym ostatnim programie zapala się i gaśnie pozostając ciemnym.
    Co dziwne z ciekawości zmieniłem adres działa prawidłowo (4C) na 4F jak się wyłączy już nie zapala.


    Natomiast używając biblioteki bl_Lcd_i2c.lib pod adresem 4C można wyłączyć ale już nie reaguję na polecenie Backlight = Backlight_on

    i teraz jeśli napiszemy tak mamy ciągle podświetlony

    Kod: VB.net
    Zaloguj się, aby zobaczyć kod


    a pisząc tak

    Kod: VB.net
    Zaloguj się, aby zobaczyć kod


    podświetlanie jest wyłączone ciągle.
  • #12 20422884
    bart-projects
    Poziom 29  
    W międzyczasie musisz coś do tego wyświetlacza wysłać.
    Pisząc tak:
    Kod: VB.net
    Zaloguj się, aby zobaczyć kod

    Najpierw ustawiasz tylko bit "wyłącz" - nie wysyłasz tego do wyswietlacza tylko czekasz 1s i ustawiasz "włącz" po czym coś do niego już wysyłasz.

    Żeby to działało powinieneś zrobić tak:
    Kod: VB.net
    Zaloguj się, aby zobaczyć kod


    Można też napisać funkcję która odczyta aktualny stan PCF8574 i , żeby wyświetlacz nie zwariował, zmieni tylko ten jeden bit.
  • #13 20450641
    gryzlly
    Poziom 12  
    bart-projects napisał:
    W międzyczasie musisz coś do tego wyświetlacza wysłać.

    EUREKA! :)

    Mnie też się zachciało dzisiaj LCD na I2C i męczę się od rana nad cholerstwem...
    Dzięki za podpowiedz dlaczego podświetlenie nie działało - myślałem że coś w adresie namieszałem, ale jednak nie ! :)

    Ale mam poważniejszy problem z wyświetlaniem - pewnie też jakaś głupota...

    Korzystam z klonu Arduino NANO, biblioteka "bl_lcd_i2c.LIB"
    Wersja BASCOM 2.0.7.1
    Kod: VB.net
    Zaloguj się, aby zobaczyć kod


    Podłączane piny pod PCF'a sprawdzane 10x - w tym "przepikane" miernikiem.
    Podświetlenie się załącza i wyłącza, więc adres jest ok, ale zamiast cokolwiek się wyświetlać, wyświetla się jedno czarne pole - jakby kontrast był akurat na nim na maxa, i to pole pojawia się w losowym miejscu ale tylko w 1 linii.
    Co namieszałem ?

    Kod: VB.net
    Zaloguj się, aby zobaczyć kod
  • #15 20455477
    gryzlly
    Poziom 12  
    Na innych bibliotekach oraz na innych kodach też próbowałem i głupoty wychodziły, albo również wyświetlacz był martwy. Pin R/W zwarłem do masy, więc to też nie problem.
    Podejrzewam uszkodzenie PCF'a (nic innego nie zostaje) - zamówiłem drugi egzemplarz - kontynuuję po jego odebraniu.

Podsumowanie tematu

Użytkownik poszukiwał zawartości biblioteki lcd_i2c_PCF8574.lib do programowania wyświetlacza LCD z interfejsem I2C w BASCOM. W odpowiedziach podano różne wersje bibliotek oraz wskazówki dotyczące konfiguracji, w tym konieczność dostosowania kodu do wersji BASCOM. Problemy z podświetlaniem wyświetlacza były często poruszane, a użytkownicy sugerowali różne metody jego aktywacji oraz sprawdzania stanu. Wskazano również na możliwość uszkodzenia układu PCF8574, co mogło wpływać na działanie wyświetlacza. Użytkownicy dzielili się kodami oraz doświadczeniami związanymi z konfiguracją i działaniem wyświetlaczy LCD.
Podsumowanie wygenerowane przez model językowy.
REKLAMA