PulseQrpArge

dedektörler => GPR -ALANTARAMA ŞEMALARI => Konuyu başlatan: Yörük - Tem 25, 2026, 11:52 ÖS

Başlık: New alan tarama
Gönderen: Yörük - Tem 25, 2026, 11:52 ÖS
Merhaba
```

#include <LiquidCrystal.h>

// RS, E, D4, D5, D6, D7

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

const int pinSesArti = 6;

const int pinSesEksi = 7;

const int pinMetalAyrim = 8; // Değerli / Değersiz seçimi

int sesSeviyesi = 5;

bool sadeceDegerli = false;

void setup() {

  lcd.begin(16, 2);

  lcd.clear();

  lcd.setCursor(0, 0);

  lcd.print("PULSE QRP R&G");

  lcd.setCursor(0, 1);

  lcd.print("ALAN TARAMA");

  delay(2000);

  

  pinMode(pinSesArti, INPUT_PULLUP);

  pinMode(pinSesEksi, INPUT_PULLUP);

  pinMode(pinMetalAyrim, INPUT_PULLUP);

  

  ekranGuncelle();

}

void loop() {

  if (digitalRead(pinSesArti) == LOW) {

    if (sesSeviyesi < 10) sesSeviyesi++;

    ekranGuncelle();

    delay(200);

  }

  

  if (digitalRead(pinSesEksi) == LOW) {

    if (sesSeviyesi > 0) sesSeviyesi--;

    ekranGuncelle();

    delay(200);

  }

  

  if (digitalRead(pinMetalAyrim) == LOW) {

    sadeceDegerli = !sadeceDegerli;

    ekranGuncelle();

    delay(300);

  }

}

void ekranGuncelle() {

  lcd.clear();

  lcd.setCursor(0, 0);

  lcd.print("Ses: ");

  lcd.print(sesSeviyesi);

  

  lcd.setCursor(0, 1);

  if (sadeceDegerli) {

    lcd.print("Mod: DEGERLI");

  } else {

    lcd.print("Mod: TUM METALLER");

  }

}

```bu çalışmamız geliştirme sürecinde ina121a  alıcı devremiz detayları ve şemayı paylaşağım
Başlık: Ynt: New alan tarama
Gönderen: Yörük - Tem 30, 2026, 08:06 ÖS
PulseQRParge Alan Tarama
```

#include <Wire.h>

#include <LiquidCrystal_I2C.h>

// LCD Adresi genellikle 0x27 veya 0x3F'dir. Ekran gelmezse 0x3F olarak değiştirin.

LiquidCrystal_I2C lcd(0x27, 16, 2);

// Pin Tanımlamaları

const int SENSOR_PIN = A0;   // İyon sensör anten girişi

const int BUZZER_PIN = 8;    // Sesli uyarı buzzerı

const int BUTTON_PIN = 3;    // Eşik / Ses ayar butonu

// Degişkenler

int sensorValue = 0;

int threshold = 300;         // Varsayılan tetiklenme eşiği

int soundMode = 1;           // 0: Mute (Sessiz), 1: Normal, 2: Yüksek Hassasiyet

unsigned long lastDebounceTime = 0;

unsigned long debounceDelay = 200;

void setup() {

  pinMode(BUZZER_PIN, OUTPUT);

  pinMode(BUTTON_PIN, INPUT_PULLUP);

  // LCD Başlatma

  lcd.init();

  lcd.backlight();

  // Açılış Mesajı

  lcd.setCursor(0, 0);

  lcd.print("  PulseQRParge  ");

  lcd.setCursor(0, 1);

  lcd.print("  Ion Scanner   ");

  

  // Açılış Sesi

  tone(BUZZER_PIN, 1000, 150);

  delay(200);

  tone(BUZZER_PIN, 1500, 200);

  delay(1800); // Açılış yazısının ekranda kalma süresi

  lcd.clear();

}

void loop() {

  // Sensör Okuma ve Filtreleme (Kararlı okuma için ortalama alma)

  long total = 0;

  for(int i = 0; i < 10; i++) {

    total += analogRead(SENSOR_PIN);

    delay(2);

  }

  sensorValue = total / 10;

  // Buton Kontrolü (Ses ve Eşik Ayarı)

  if (digitalRead(BUTTON_PIN) == LOW) {

    if ((millis() - lastDebounceTime) > debounceDelay) {

      soundMode = (soundMode + 1) % 3; // 0, 1, 2 arasında döner

      

      switch(soundMode) {

        case 0: threshold = 800; break; // Sessiz / Çok Düşük Hassasiyet

        case 1: threshold = 300; break; // Normal

        case 2: threshold = 100; break; // Yüksek Hassasiyet

      }

      

      // Kısa bip bildirimi

      tone(BUZZER_PIN, 2000, 50);

      lastDebounceTime = millis();

    }

  }

  // Ekran Güncelleme

  lcd.setCursor(0, 0);

  lcd.print("ION:");

  lcd.print(sensorValue);

  lcd.print("   "); // Kalıntı karakterleri temizleme

  

  lcd.setCursor(10, 0);

  if (soundMode == 0) lcd.print("MOD:MUTE");

  else if (soundMode == 1) lcd.print("MOD:NORM");

  else if (soundMode == 2) lcd.print("MOD:HIGH");

  // Görsel Sinyal Barları (Sinyal Şiddeti Göstergesi)

  lcd.setCursor(0, 1);

  int barCount = map(sensorValue, 0, 1023, 0, 16);

  for (int i = 0; i < 16; i++) {

    if (i < barCount) lcd.print((char)255); // Dolu blok karakteri

    else lcd.print(" ");

  }

  // Sesli Uyarı Mantığı (Eşik değer geçildiğinde)

  if (soundMode != 0 && sensorValue > threshold) {

    // Sinyal şiddetine göre değişen tonda ses (Pitch modulation)

    int pitch = map(sensorValue, threshold, 1023, 400, 2500);

    tone(BUZZER_PIN, pitch, 40);

  } else {

    noTone(BUZZER_PIN);

  }

  delay(50);

}

```
Başlık: Ynt: New alan tarama
Gönderen: Yörük - Tem 30, 2026, 08:09 ÖS
Merhaba.
Yazılım arduino ile çalışıyor analog çatı 
İna121a ve opa27 pullap dirençlerden oluşuyor 
Şemayı çizip yükleyeceğim