Przygotowałem uniwersalną wersję biblioteki, teraz użytkownik w pliku .h za pomocą #define lcd_x 192 może wybrać jaką rozdzielczość ma jego wyświetlak.
Niestety nie udało mi się tego zrobić elegancko więc jest po chamsku tzn w pliku .c są 2 biblioteki (dla 128 i 192) od definicji lcd_x będzie zależało która wersja się skompiluje.
Obie wersje są dla wyświetlaczy w których stan niski(chipów) jest stanem aktywnym. Użytkownicy wyświetlaczy 128x64 którzy do tej pory korzystali z oryginalnej biblioteki będą musieli zmienić definicje pinów CSEL1 i CSEL2 żeby działało prawidłowo.
W funkcji GLCD_DrawLine dla wersji 192x zmieniłem zakres zmiennych na większy, ponieważ przy wyświetlaniu najdłuższej możliwej prostej wyświetlało ją niepoprawnie. (zapewne nie wszystkie zmienne muszą mieć większy zakres, może ktoś mądrzejszy to sprawdzi ?)
Na dniach będę chciał dodać wygodne wybieranie funkcji które chcemy kompilować ( na wzór bibliotek Mirka z "niebieskiej")
pliki:
.c
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
.h
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
Teraz prośby do stwórcy tejże biblioteki i innych "szerokich w uszach" Panów
1. W funkcjach graficznych wielce przydatna była by funkcja draw angle line do tworzenia linii pod kątem, argumentami której były by: x i y początku linii, lenght - długość linii w pixlach i kąt o jaki obracamy linię.
(mam nadzieję że ktoś podejmie się stworzenia takiej funkcji... nawet taki laik jak ja mógłby stworzyć coś ładnego
![Szczęśliwy :)](https://forum.atnel.pl/images/smilies/icon_e_smile.gif)
)
2. brakuje mi też funkcji do rysowania łuków. Którą można by wpakować do funkcji GLCD_DrawRoundRect
Taka funkcja musi mieć (jak dla mnie) dobrze przemyślane argumenty. Myślę że najlepiej zrobić to tak jak w G kodzie
czyli xy początku i końca, ij - odległość od punktu początkowego łuku do środka w osi x i y.
Myślę że takie rozwiązanie daje spore możliwości w tworzeniu łuków.
tutaj jest pokazane jak to wygląda w G kodzie:
http://www.numeryczny.pl/?p=678Mam nadzieję że ktoś zauważy potencjał w takich funkcjach i postara się je zrobić
![Puszcza oko ;)](https://forum.atnel.pl/images/smilies/icon_e_wink.gif)
Pozdrawiam