dokunmatik ekran ile Arduino kullanımı

Dokunmatik Ekran ve Arduino Kullanımı

Gerekli Malzemeler:

Kodlar:

Youtube Fixaj kanalımızda anlatığımız Video da kullanmış olduğumuz kodlar:

/****************************************Copyright (c)****************************************************
**                             		Fixaj  Mehmet YILDIZ
**
**                             		https://fixaj.com/  
**
** Tüm hizmetler Mehmet Yıldız şirketi Fixaj tarafından sağlanmaktadır.
** FİXAJ MAĞAZALARIMIZ DIŞINDA SATIN ALINAN TOPWAY MARKA DOKUNMATİK EKRANLARDA BU KÜTÜPHANENİN TİCARİ OLARAK KULLANIMI YASAKTIR.
** Herhangi bir program, belge, test sonucu, çözüm, destek ve diğer malzeme ve bilgiler yalnızca referans amaçlıdır
** ve müşterilerin kullanmama veya atıfta bulunma ve kendileri tarafından değişiklik yapma hakları vardır.
** Müşterinin kullanımı sırasında herhangi bir özel, tesadüfi veya dolaylı kayıp meydana gelirse, 
** herhangi bir bütünlük, güvenilirlik ve diğer garantileri sağlamak için şirket sorumlu olmayacaktır.
** HERHANGİ BİR SORUMLULUĞUN KABUL EDİLMEMESİ.
**                                                                        Fixaj
**
**
**--------------File Info-------------------------------------------------------------------------------
** Modified by:            	MEHMET YILDIZ
** Modified date:        	8.06.2023
** Version:                	v0.1
** Description:    
 
********************************************************************************************************/

#include <HardwareSerial.h>
#include <FixajEkran.h>

unsigned long kanalBekleme_sure = 0;
int kanalBekleme_bekleme = 2000;

#define sayiGece 0x080002
#define sayiMotor 0x080004
#define sayiGeri 0x080006
#define sayiSepet 0x080008

int b = 0, m = 0;

#define RX 17  //  Lora nın 3. pini RX in ESP 32 de hangi pine bağlı olduğu
#define TX 16  // Lora nın 4. pini TX in ESP 32 de hangi pine bağlı olduğu

#define kirmiziPin 32
#define yesilPin 33
#define maviPin 27

HardwareSerial fixajSerial(2);  //esp32 hardware serial kullanıyoruz
FixajEkran FixajSS(TX, RX, &fixajSerial, UART_BPS_RATE_115200_Ekran);


Buton geceModu(0, 0);
Buton motor(0, 1);
Buton geri(0, 2);
Buton sepet(0, 3);
Buton bildirim(0, 4);
Buton keypadTest(0, 16);

void setup() {
  Serial.begin(115200);
  while (!Serial)
    delay(100);
  FixajSS.begin();
  delay(500);
  if (!FixajSS.EkranTest()) {
    Serial.println("bağlantı hatası, kabloları kontrol edin");  //ESP yi veya NANO yu PCB den çıkarıp programı yükleyin sonra PCB takın
                                                                //Ekran nın Baud Rate ni de ayarlamayı unutmuş olabilirsiniz.
                                                                //SGTools programından projenize sağ tıklayın Prpject properties-> Baud rate
                                                                //sonra arayüz tasarımını tekrar Ekrana yükleyin.
  }
  delay(100);
  Serial.println("Fixaj.com Basliyor...");

  pinMode(kirmiziPin, OUTPUT);
  pinMode(yesilPin, OUTPUT);
  pinMode(maviPin, OUTPUT);
}

void loop() {

  if (FixajSS.dokunmaDinle()) {
    if (FixajSS.butonBasildiMi(geceModu)) {
      Serial.print("geceModu click: ");
      FixajSS.oku(sayiGece, &b);
      Serial.println(b);
      if (b) {
        digitalWrite(kirmiziPin, 1);
      } else {
        digitalWrite(kirmiziPin, 0);
      }
    }

    else if (FixajSS.butonBasildiMi(motor)) {
      Serial.print("motor click: ");
      FixajSS.oku(sayiMotor, &m);
      Serial.println(m);
      if (m) {
        digitalWrite(yesilPin, 1);
      } else {
        digitalWrite(yesilPin, 0);
      }
    }
  }
}

Arayüz Tasarımı