Arduino Polska Forum

Pełna wersja: Prośba o przerobienie biblioteki OPEN-SMART
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
Witajcie, kupiłem ostatnio trochę wyświetlaczy open-smart 3.5" i zamówiłem partię PCB do swoich urządzeń. Niestety, pojawił się problem - nie zauważyłem, że oryginalnie ten shield z wyświetlaczem jest przystosowany do pracy np z arduino uno i linia danych (równoległa, 8-bit) jest dopasowana do całego portu w arduino, a ja w swoim projekcie montuję procesor (ATMEGA328PB) bezpośrednio na płytce urządzenia, a piny wyświetlacza podłączyłem do niego po prostu tak żeby się wygodnie projektowało PCB  Confused 
No i teraz jest problem. Nie wiem jak przerobić tą bibliotekę aby przypisać piny w mojej konfiguracji:

Kod:
CS  -  PB2  -  D10
RS  -  PD4  -  D4
WR  -  PD3  -  D3
RD  -  PE2  -  D25
RST -  PE0  -  D23
D0  -  PE3  -  D26
D1  -  PC0  -  D14
D2  -  PC1  -  D15
D3  -  PB1  -  D9
D4  -  PB0  -  D8
D5  -  PD7  -  D7
D6  -  PD6  -  D6
D7  -  PD5  -  D5

Strasznie byłbym wdzięczny za pomoc z tą biblioteką. Zamówienie kolejnej partii PCB na chwile obecną nie wchodzi w grę więc musi zostać tak jak jest.
Sprawa niestety jest dość skomplikowana i bez dokładnej znajomości budowy urządzenia może być ciężko i nie sądzę, aby ktoś się za to wziął za Ciebie.

Zapisy w samej bibliotece i w opisie do niej mówią wyraźnie, że piny są hardcoded for shield usage.

Piny funkcyjne znajdziesz w plikach .h, dodatkowo w plikach w katalogu [...]\[OPEN-SMART] 3.5inch TFT LCD Breakout ILI9327(4).zip\Arduino library\OPENSMART_TFT\examples\3.5inch ILI9327 masz przykłady i w jednym z nich jest użyty konstruktor z możliwością zakodowania własnych pinów.

Problem jest z D0 - D5, bo tutaj już zabawa z portami, maskami i ogólnie dupa.

Dużo tych płytek PCB masz już wykonanych?
(10-07-2023, 19:13)MadMrQ napisał(a): [ -> ]Dużo tych płytek PCB masz już wykonanych?

No niestety tak...
Domyślam się, że nie będzie to proste, ale sądzę, że jest wykonalne. Bardzo byłbym wdzięczny za pomoc Smile
Wg. mnie wyjść masz kilka:
1) rzeźbić samemu - na podstawie informacji, które uzyskałeś na elektrodzie
2) zamieścić ogłoszenie w dziale Zlecenia / Oferty pracy i zaproponować konkretne pieniążki
3) skontaktować się z producentem (autorem biblioteki) i od niego uzyskać informacje, jak te piny pozmieniać

W plikach nagłówkowych .h masz dla każdego obsługiwanego shielda przyporządkowany pinout i odpowiednie operacje na rejestrach. Tam musisz wprowadzać modyfikacje. Ja niestety jestem za cienki w temacie programowania AVR na rejestrach więc pomóc nie będę w stanie.