Co do define, to robisz:
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
i masz zdefiniowane dwa adresy. Tylko teraz należy tak wywoływać biblioteki by były odpowiednio wybierane adresy.
A to się wiąże niestety z tym ze musisz trochę poprzerabiać te biblioteki i ich wywołania. Bo większość jest pisana tak by był obsługiwany tylko jeden taki sam element - dla lcd_locate() nie ma zaimplementowanego mechanizmu wielowyświetlaczowego.
Jak to masz dokładnie zrobić to już Ty musisz wymyśleć w zależności od tego jak korzystasz z bibliotek i co według Ciebie jest najlepsze - jak to Mirek powtarza
Cytuj:
wszystko można zrobić na 1000 sposobów
i większość z implementacji jest równie dobra.
Możesz na przykład zrobić zmienną globalna i przez korzystaniem z funkcji wysokopoziomowych zmieniać w niej numer lcd. Wtedy tylko trzeba zmodyfikować niskopoziomowe funkcje zmieniając w nich wybierany adres urządzenia. Ale jak masz jakieś buforowania dla lcd, pamiętanie stanów, x/y, itp to musisz także te zmienne zduplikować. Czyli zamiast np.
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
będziesz mógł od razu zrobić uniwersalnie dla dowolniej liczby wyświetlaczy
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
gdzie przez LCD_COUNT definiujesz ile masz tych wyświetlaczy

język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Dlatego jak chcesz mieć uniwersalnie to może lepiej od razu wprowadzić do funkcji bibliotecznych dodatkowy parametr nr_lcd i na podstawie niego zmieniać operowanie na zmiennych.
Po to Mirek dał źródła bibliotek byś w takich wypadkach mógł je sobie zmodyfikować do własnych potrzeb.
W poradniki o OLEDach Mirek pisze bibliotekę dla 2 LCD. Ale chyba to było tylko w wersji SPI. Ale zawsze możesz obejrzeć. Na pewno nic nie stracisz a pewnie dużo zyskasz

--
Pozdrawiam,
Robert