Search Code

TTP224 4-kanałowy pojemnościowy dotykowy Arduino podstawowy kod

TTP224 4-kanałowy pojemnościowy dotykowy Arduino podstawowy kod

Ten samouczek przeprowadzi Cię przez korzystanie z 4-kanałowego czujnika dotykowego pojemnościowego TTP224 z Arduino. TTP224 pozwala stworzyć prosty interfejs dotykowy, który może zapalać diody LED w zależności od tego, który przycisk został naciśnięty. Po zakończeniu tego projektu będziesz mieć działający system, w którym dotknięcie każdego z czterech przycisków włączy odpowiednią diodę LED i wyświetli komunikaty na monitorze szeregowym.

TTP224 touch module

W tej konfiguracji, gdy przycisk zostanie naciśnięty, odpowiedni pin wyjściowy na Arduino zostanie aktywowany, włączając diodę LED. Zobaczysz również komunikat na monitorze szeregowym informujący, który przycisk został dotknięty. Ten projekt jest idealny dla początkujących, którzy chcą poznać technologię dotyku pojemnościowego i podstawy programowania Arduino. Aby uzyskać więcej szczegółów, koniecznie obejrzyj wideo w czasie 2:30.

Wyjaśnienie Sprzętu

Głównym elementem tego projektu jest pojemnościowy czujnik dotyku TTP224. Posiada on cztery przyciski dotykowe, co umożliwia prostą interakcję bez mechanicznych przełączników. Gdy przycisk zostanie dotknięty, czujnik wysyła sygnał wysoki na odpowiednim pinie wyjściowym. Dzięki temu łatwo można go podłączyć do innych urządzeń, takich jak diody LED czy przekaźniki.

Oprócz TTP224 potrzebujesz płytki Arduino do przetwarzania sygnału dotykowego i sterowania diodami LED. Arduino odczytuje piny wyjściowe czujnika i odpowiednio włącza diody LED. Tę konfigurację można również rozszerzyć do bardziej złożonych zastosowań, takich jak sterowanie przekaźnikiem czy tworzenie systemu zamka zabezpieczającego.

Szczegóły z Karty Katalogowej

ProducentTonTouch
Numer częściTTP224
Napięcie logiczne/IO2,5–5,5 V
Prąd wyjściowy (na kanał)maks. 10 mA
Prąd szczytowy (na kanał)maks. 20 mA
Czas reakcji10 ms (typ.)
Obudowa8-DIP

  • Upewnij się, że zasilanie jest stabilne w określonym zakresie.
  • W razie potrzeby użyj rezystorów podciągających do masy, aby zapobiec stanom pływającym.
  • Trzymaj czujnik z dala od źródeł zakłóceń, takich jak silne pola elektromagnetyczne.
  • Rozważ użycie opóźnienia antyodbiciowego, aby zapobiec fałszywym wyzwoleniom.
  • Przetestuj czułość dotyku i dostosuj otoczenie dla optymalnej wydajności.

Instrukcje Podłączania

Wring TTP224 Touch 4 Channel with 4 LED
Wring TTP224 Touch 4 Channel with 4 LED

Aby podłączyć TTP224 do Arduino, zacznij od podłączenia zasilania i masy. Podłącz pin VCC układu TTP224 do pinu 5V na Arduino, a pin GND do pinu masy na Arduino. Następnie podłącz piny wyjściowe TTP224 do pinów cyfrowych Arduino. Dokładnie: podłącz pin wyjściowy 1 do pinu 2, pin wyjściowy 2 do pinu 3, pin wyjściowy 3 do pinu 4 i pin wyjściowy 4 do pinu 5 na Arduino.

Dla diod LED podłącz anody (dłuższe nóżki) każdej diody odpowiednio do pinów Arduino 10, 11, 12 i 13. Podłącz katody (krótsze nóżki) diod do masy przez rezystor (zwykle 220Ω), aby ograniczyć prąd. Ta konfiguracja pozwoli Arduino sterować każdą diodą LED na podstawie sygnału dotykowego z TTP224.

Przykłady Kodu i Omówienie

Kod Arduino inicjalizuje piny wyjściowe dla diod LED oraz piny wejściowe dla czujnika dotyku. Kod używa prostych warunków do sprawdzenia, czy przycisk został naciśnięty, a następnie włącza odpowiednią diodę LED, wyświetlając komunikat na monitorze szeregowym.

int LD = 200; // Opóźnienie pętli. Nie zmieniać.

void setup() {
    Serial.begin(9600);
    pinMode(10, OUTPUT);// LED dla przycisku 1
    pinMode(11, OUTPUT);// LED dla przycisku 2
    pinMode(12, OUTPUT);// LED dla przycisku 3
    pinMode(13, OUTPUT);// LED dla przycisku 4            
    pinMode(2, INPUT);// Przycisk 1 pin wejściowy 2  
    pinMode(3, INPUT);// Przycisk 2 pin wejściowy 3  
}

W tym fragmencie zmienna LD jest zdefiniowana do kontrolowania opóźnienia pętli. Funkcja setup() inicjalizuje komunikację szeregową i ustawia odpowiednie piny jako wejścia lub wyjścia.

void loop() {
    if(digitalRead(2)){
        Serial.println("Przycisk 1 dotknięty "); 
        digitalWrite(10, HIGH); // Włącz diodę LED     
        delay(LD); 
    }else{
        digitalWrite(10, LOW);// Wyłącz diodę LED
    }
}

Ten fragment kodu pokazuje, jak Arduino sprawdza stan pinu wejściowego podłączonego do przycisku 1. Jeśli przycisk zostanie dotknięty, wyświetla komunikat i włącza odpowiednią diodę LED. Ta sama logika jest powtarzana dla pozostałych przycisków w pełnym kodzie.

Demonstracja / Czego Się Spodziewać

Po uruchomieniu programu dotknięcie każdego przycisku na TTP224 spowoduje zapalenie odpowiedniej diody LED i wyświetlenie komunikatu na monitorze szeregowym. Upewnij się, że podłączenie jest prawidłowe, aby uniknąć problemów. Jeśli dotkniesz wielu przycisków jednocześnie, możesz zaobserwować nieoczekiwane zachowanie, więc bądź ostrożny (na wideo w czasie 5:15).

Znaczniki Czasowe Wideo

  • 00:00 - Wprowadzenie do TTP224
  • 02:30 - Konfiguracja podłączeń
  • 04:15 - Omówienie kodu
  • 05:15 - Demonstracja projektu

Obrazy

TTP224 touch module
TTP224 touch module
Wring TTP224 Touch 4 Channel with 4 LED
Wring TTP224 Touch 4 Channel with 4 LED
19-TTP224 4-Channel Capacitive Touch Arduino Basic Code
Język: C++
/*
 * This is the Arduino code for TTP224 4-Channel Capacitive Touch switch.
 * The output pins 10, 11, 12, and 13 will be ON when keys 1 to 4 are pressed respectively.
 * Pressing button 1 turns pin 10 ON.
 * Pressing button 2 turns pin 11 ON.
 * Pressing button 3 turns pin 12 ON.
 * Pressing button 4 turns pin 13 ON.
 * 
 * Written by Ahmad Shamshiri for Robojax Video
 * Date: December 2, 2017, in Ajax, Ontario, Canada
 * Permission granted to share this code given that this
 * note is kept with the code.
 * Disclaimer: This code is "AS IS" and for educational purposes only.
 * 
 */


 int LD = 200; // Loop Delay. Do not change.

void setup() {
    Serial.begin(9600);
    // out pins
    pinMode(10, OUTPUT);// LED for button 1
    pinMode(11, OUTPUT);// LED for button 2
    pinMode(12, OUTPUT);// LED for button 3
    pinMode(13, OUTPUT);// LED for button 4            

    // input pins
    pinMode(2, INPUT);// Button 1 input pin 2  
    pinMode(3, INPUT);// Button 2 input pin 3  
    pinMode(4, INPUT);// Button 3 input pin 4  
    pinMode(5, INPUT);// Button 4 input pin 5              


    Serial.println("Robojax Test");

}

void loop() {

    // button 1 action
    if(digitalRead(2)){
      Serial.println("Button 1 Touched "); 
      digitalWrite(10, HIGH); // Turn the LED ON     
      delay(LD); 
    }else{
      digitalWrite(10, LOW);// Turn OFF the LED
    }

    // button 2 action
    if(digitalRead(3)){
      Serial.println("Button 2 Touched "); 
      digitalWrite(11, HIGH); // Turn the LED ON
      delay(LD); 
    }else{
      digitalWrite(11, LOW);// Turn OFF the LED
    }   

    // button 3 action
    if(digitalRead(4)){
      Serial.println("Button 3 Touched "); 
      digitalWrite(12, HIGH); // Turn the LED ON       
      delay(LD); 
    }else{
      digitalWrite(12, LOW);// Turn OFF the LED
    }     

   // button 4 action
    if(digitalRead(5)){
      Serial.println("Button 4 Touched "); 
      digitalWrite(13, HIGH); // Turn the LED ON      
      delay(LD); 
    }else{
      digitalWrite(13, LOW);// Turn OFF the LED
    }

}// loop

Zasoby i odniesienia

Brak zasobów.

Pliki📁

Karta katalogowa (pdf)

Inne pliki