Witajcie.
Zmagam się z problemem uruchomienia wyświetlacza BIG-LCD 4x20 znaków. Zakupiłem kiedyś w/w bibliotekę w Atnelu, jak również MK_I2C i kilka innych. Do tej pory nigdy
nie miałem z nią (MK_LCD) problemu. Podłączałem różne wyświetlacze 2x14, 4x20 małe, jak również 4x20 duże. Ostatnio podłączałem również po I2C. Co się dokładnie dzieje.
Testowane na zestawie ATB i płytka Arduino Nano z wgranym bootloaderem pod zwykłe C. Podłączony ekspander do SDA i SCL. Konfiguracja 100% OK. Adres dla PCF-A OK.
Biblioteka w oryginale. Nic nie gmerane w środku.
Podłączam 3 różne wyświetlacze, małe, duże, 2x16, 4x20 i wszystko śmiga bez problemu do 800KHz. Cały czas jeden i ten sam ekspander. Przepinam tylko LCD.
Następnie podłączam ten problemowy WINSTAR i system się zawiesza w momencie dojścia programu do lcd_init(); Wiem, bo mam diodę w przerwaniu w pętli i ona przestaje migać.
Po zakomentowaniu lcd_init(); dioda w pętli miga.
Dochodzę do sedna...... Biorę arduino uno z bootloaderem arduino. Wgrywam program arduino do wyświetlania czegoś dowolnego. Podłączam wszystkie wyświetlacze i wszystkie śmigają
włącznie z tym trefnym. Zmieniam jakiś tekst, wgrywam i wszystko działa, jak należy.
Wnioskuję z tego, że ten wyświetlacz nie chce działać z MK_LCD, a powinien, skoro w drugim przypadku jest ok.
W takim razie skorzystałem z poradnika o pułapce programowej Mirka z diodą led. Zacząłem "od góry" do dołu z funkcji na funkcję i doszedłem do ostatniego miejsca, gdzie dalej juz nie mogłem.
Zatrzymałem się w pliku mk_lcd.c na funkcji :
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Pod koniec tej funkcji jest instrukcja:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Jak pułapkę wstawię przed nią (po CLR_E;) to dioda debagera świeci ciągle i pojawiają się przypadkowe znaki na lcd. Nieraz miga kwadrat i kreska, czyli coś się dzieje.....
Natomiast jak pułapkę wstawię po instrukcji:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
To dioda gaśnie, czyli klops.
Niestety moja skromna wiedza nie podpowiada mi nic, co mógłbym sam zadziałać. Może komuś coś zaświta, jak to uruchomić
Tutaj wstawiam fotkę na dowód, że arduinowska biblioteka odpala system bez problemu.
