Odpowiem tak aby nie wymyślać za wiele. Chodzi o to że kombinuję na sterownikiem do panelu dotykowego ale programowalnego. Chcę odciążyć procek od interpretacji współrzędnych i zrobić to tak aby można było w dodatku jeszcze go programować poprzez wgranie nowych współrzędnych miejsc do macania
Zwracać ma kod odpowiadający powiedzmy umownie nazwę - klawiszowi. Założenie jest takie że ma być kilkupoziome menu a panel wraz ze zwracanymi przez siebie danymi ma w zakresie wyboru ma podążać za zmieniającymi się ekranami. Może się mylę ale jeśli bym tym zajęciem obciążył zasadniczego procka to byłaby to dla niego spora robota . Jakiś mały Atmega np M162 moim zdaniem spokojnie się wyrobi z tym zagadnieniem a koszt samego przesięwzięcia nie przekroczy dedykowanego IC dla panelu dotykowego który i tak jest o tyle ubogi że nie interpretuje tego co sobie odczyta. Nawet jeśli pola do "macania" będą nieregularne (elipsa, koło czy też cokolwik innego) to zawsze da się to opisać jako prostokąt. Niestety nie mogę założyć jak będzie taki prostokąt umiejscowiony krótszym czy dłuższym bokiem do dołu. Takie założenie wymaga sporych zasobów pamięci ale te są przecież do zrobienia za pomocą pierwszego z brzegu SRAM któremu można jeszcze na dodatek przełączać banki pamięci. W końcu coś wymyślę, ale póki co nie mam żadnego punktu zaczepienia.
Na razie pomysł mam taki aby na początek przelecieć całą tablicę od góry do dołu w poszukiwaniu współrzędnych lewego górnego rogu które będą większe lub równe odczytanym aktualnie współrzędnym z panelu, tworząc tymczasową tablicę z indeksami odpowiadającym tym kryteriom elemnentom globalnej tablicy. Potem zaś znowu od początku do końca pobierać z tej tymczasowej tablicy indeks na dopasowane elementy i sprawdzać czy z kolei odczytana współrzędna jest mniejsza lub równa dla zdefiniowanych wczsniej współrzędnych. Tak aż do pierwszego dopasowania. tym samy ograniczę sobie możliwość przeszukiwania całej tablicy, dla powiedzmy drugiego kroku. nie wiem czy nei namąciłem za bardzo.