• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Problem z ekranem dotykowym
#3
(19-01-2024, 16:20)kaczakat napisał(a): Niestety projekt zbyt unikatowy sprzętowo by go odtworzyć i coś w nim grzebać. Ale od razu widać, że w ogóle nie starasz się zarządzać czasem w programie, próbując w każdym obiegu loop pytać o czas z RTC.
Do napisania funkcji obsługi przerwania wybierasz pin IRQ z TFT i pod ten pin od strony IO ESP32 piszesz funkcję, wpisz w Google pytanie i masz przykład https://www.upesy.com/blogs/tutorials/wh...duino-code
Kod:
void IRAM_ATTR function_ISR() {
  // Function code
}

void setup() {
  Serial.begin(115200);
  pinMode(23, INPUT_PULLUP);
  attachInterrupt(23, function_ISR, FALLING);
}

void loop() {
}
 Zdziwiłbym się, gdyby biblioteka nie miała odpowiednich opcji, więc może po prostu wystarczy jej podać odpowiednie parametry. Przykład jest dla przypadku, gdy IRQ wywołuje stan niski.
Pin IRQ z TFT podłączyłem pod pin 36, inne mam już zajęte a na PCF8575 nie będzie i tak działał prawidłowo. Po odczytaniu stanu pinu wychodzi zawsze "1" po naciśnięciu jest zmiana na "0". Przerwanie chciałem zrobić na przykładzie podanym przez Ciebie w linku lecz po różnych kombinacjach zawsze po wgraniu do esp niestety sie resetuje w kółko. 
Kod:
void IRAM_ATTR tft_irq_isr(void) {
}
Jedynie oś takiego nie powoduje resetu. 
Kod:
pinMode(TFT_IRQ_PIN, INPUT);     //pin TFT_irq przerwania
tak jest ustawiony pin 36
Kod:
attachInterrupt(TFT_IRQ_PIN, tft_irq_isr, FALLING);
i przerwanie w void setup
 
Odpowiedź
  


Wiadomości w tym wątku
Problem z ekranem dotykowym - przez Daevid - 18-01-2024, 16:03
RE: Problem z ekranem dotykowym - przez kaczakat - 19-01-2024, 16:20
RE: Problem z ekranem dotykowym - przez Daevid - 19-01-2024, 21:56

Skocz do:


Przeglądający: 1 gości