Arduinoda yardım istiyen gelebilir

Merhaba çok basit bir koda ihtiyacım var ama internette bulamadım. devrede 1 buton olacak, her basışta 2 adet led konum değiştirecek yani ilk basışta led1 on led2 off tekrar butona basınca led1off led2 on.
Şimdiden teşekkürler.
int butondurum=0,butonsayac=0,oncekidurum=0;
void setup()
{
}
void loop()
{
butondurum=digitalRead(2);
if(butondurum !=oncekidurum)
{
if (butondurum==1){
butonsayac++;
if(butonsayac==5)butonsayac=1;
}
}
oncekidurum=butondurum;
switch(butonsayac) {
case 1 : //led bir yak diğerleri sönük
break;
case 2 : //led 2 yak
break;
case 3: //hepsini yak
break;
case 4: //hepsini söndür
break
}k;
}
int butondurum=0,butonsayac=0,oncekidurum=0;
void setup()
{
}
void loop()
{
butondurum=digitalRead(2);
if(butondurum !=oncekidurum)
{
if (butondurum==1){
butonsayac++;
if(butonsayac==5)butonsayac=1;
}
}
oncekidurum=butondurum;
switch(butonsayac) {
case 1 : //led bir yak diğerleri sönük
break;
case 2 : //led 2 yak
break;
case 3: //hepsini yak
break;
case 4: //hepsini söndür
break
}k;
}
sanırım istediginiz kod bu iyi çalışmalar.
 
int butondurum=0,butonsayac=0,oncekidurum=0;
void setup()
{
}
void loop()
{
butondurum=digitalRead(2);
if(butondurum !=oncekidurum)
{
if (butondurum==1){
butonsayac++;
if(butonsayac==5)butonsayac=1;
}
}
oncekidurum=butondurum;
switch(butonsayac) {
case 1 : //led bir yak diğerleri sönük
break;
case 2 : //led 2 yak
break;
case 3: //hepsini yak
break;
case 4: //hepsini söndür
break
}k;
}

sanırım istediginiz kod bu iyi çalışmalar.

Çok tesekkür ederim aslında butona her basışta ledlerin yanması değişecek led1 on led2off butona bas led1 off led1 on gibi bu işlem butona her basışta tekrarlayacak. Hepsi yansın ve hepsi sönsün işlemleri olmayacak.
 
S. A. hocam rc522 mfrc kütüphanesini çözebilir misiniz? bana mfrc522'nin okuma prosedürü lazım. Ben okudum ama anlamadım. Yardımcı olursanız sevinirim.
 
Merhaba Max30100 nabiz sensörüyle degerleri alıyorum ancak cok degişken sensörden gelen degerlerin ortalamasını nasıl alabilirim Kodlar su sekilde:
Kod:
#include <Wire.h>
#include "MAX30100_PulseOximeter.h"
#include <LiquidCrystal_I2C.h>

#define Raporlama_hizi     1000
PulseOximeter pox;

// I2C LCD modülümüzü 0x27 adresine ayarlıyoruz ve kullanacağımız ekran tipini 16x2 olarak belirliyoruz.
LiquidCrystal_I2C lcd(0x27, 16, 2);

uint32_t SonKayit = 0;

// Pulse algıladığında bu fonksiyon çalışıyor.
void atimalgilandi()
{
  Serial.println("Atım Algılandı ...");
  lcd.setCursor(15, 1);
  lcd.print("*");
}

void setup()
{

  lcd.begin();

  // LCD Ekranın Arkaplan ışığını açıyoruz.
  lcd.backlight();

  Serial.begin(115200);
  lcd.setCursor(0, 0);
  lcd.print("");
  lcd.setCursor(0, 1);
  lcd.print("");
  delay(1500);
  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print("Nabiz Sensor");
  lcd.setCursor(0, 1);
  lcd.print("OKUMA PROJESI");
  delay(1500);
  lcd.clear();



  lcd.setCursor(0, 0);
  lcd.print("Sensor");
  lcd.setCursor(0, 1);
  lcd.print("Hazirlaniyor");
  delay(2000);
  Serial.print("Pulse Oksimetre Sensörü Hazırlanıyor ...");
  lcd.clear();
  lcd.setCursor(0, 0);
  // Pulse Oksimetre sensörünü kontrolünü yapıyoruz.
  // Arızalar genelde yanlış I2C kablolaması, eksik güç kaynağı nedeniyledir.

  if (!pox.begin()) {
    Serial.println("BAŞARISIZ");
    lcd.print("BASARISIZ");
    for (;;);
  } else {
    Serial.println("TAMAMLANDI");
    lcd.print("TAMAMLANDI");
  }
  // delay(500);
  // Atım algılandığında geri çağrılacak olan fonksiyon

  pox.setOnBeatDetectedCallback(atimalgilandi);
}

void loop()
{
  // Sensöre tarama yapmasını sağlıyoruz.
  pox.update();

  // Asenkron olarak kalp atış hızı ve oksidasyon seviyelerini okuyoruz
  // Her ikisi için de 0 değeri "geçersiz" anlamına gelir
  //double deger=alfa*oncekideger+(0-alfa)*ritim;
//yenileme=deger-oncekideger;
  if (millis() - SonKayit > Raporlama_hizi) {
    Serial.print("Kalp Atış Hızı: ");
    Serial.print(pox.getHeartRate());
    Serial.print("bpm / SpO2: ");
    Serial.print(pox.getSpO2());
    Serial.println("%");

    SonKayit = millis();



    lcd.clear();
    lcd.setCursor(0,0);

    lcd.print("HR: ");
    lcd.print(pox.getHeartRate());
    lcd.print(" bpm");

    lcd.setCursor(0, 1);

    lcd.print("SpO2: ");
    lcd.print(pox.getSpO2());
    lcd.print("%");

  }
}
 
1 Dk de ortalamayı toplayıp 60 a bölün ve ortalamayı bulun
 
Mrb arkadaşlar Arduino ile servo motor tuşlu Lcd Ekran ve motor sürücüsü kullanarak otamatik köpek yemleme makinası yapmak istiyorum . Bağlantıyı nasıl yaparım ve LCD üzerindeki tuşlar ile yem verme süresini arttırıp asalta bilrmiyim. Mesela hergun belirlediğimiz saate yem verdirebilirmiyim. Acemiyim yardımcı olursanız sevinirim teşekkürler
 
merhaba arduino ile yeni tanıştım ufak tefek şeyleri yapabiliyorum ama yapmam gereken birşey var ve internette de yeterli bilgiyi bulamadım bu konuda bana yardımcı olursanız çok minnettar olurum
sorunum Hz ile alakalı insan kulağının duyamadığı ve yüksek herzlerde duyduğumuz frekans ı alabileceğim bir cihaz yapmam lazım en düşük 4 Hz e en yüksek 22000 Hz ses sinyalini alabileceğim kodlama konusunda yardımcı olabilirmisiniz telefonlara play marketten bu tür programlar indirip çalıştırabiliyoruz ama bunu arduino da yapmak istiyorum

bu konudaki yardımlarınız için şimdiden çok teşekkürlerimi sunarım.
Mrb arkadaşlar Arduino ile servo motor tuşlu Lcd Ekran ve motor sürücüsü kullanarak otamatik köpek yemleme makinası yapmak istiyorum . Bağlantıyı nasıl yaparım ve LCD üzerindeki tuşlar ile yem verme süresini arttırıp asalta bilrmiyim. Mesela hergun belirlediğimiz saate yem verdirebilirmiyim. Acemiyim yardımcı olursanız sevinirim teşekkürler

merhaba bende bunu internetten bulmuştum kendi isteğine göre biraz düzenleyip kullanabilirsin
kolay gelsin.
 

Ekli dosyalar

  • Köpek Yemleme Projesi.zip
    42.3 KB · Görüntüleme: 1
2 buton ile i2c üzerinde yazı yazdırmak istiyorum. kodlar bu şekilde. ama çalıştıramadım. yardımcı olursanız sevinirim.
Kod:
#include <Wire.h>

#include <LiquidCrystal_I2C.h>



LiquidCrystal_I2C lcd(0x27,20,4);

int buton1 = 13;

int buton2 = 10;





void setup()

{



lcd.init();

lcd.init();

lcd.backlight();

pinMode(buton1, INPUT);

pinMode(buton2, INPUT);



}



void loop()

{

if (buton1 == HIGH)

{

lcd.setCursor(0, 1);

lcd.print("GEL");

}

else

{

lcd.clear();

}





if (buton2 == HIGH)

{



lcd.setCursor(0, 1);

lcd.print("GIT");

}

else

{

lcd.clear();

}



}
 
Moderatör tarafında düzenlendi:

Forum istatistikleri

Konular
129,837
Mesajlar
930,651
Kullanıcılar
452,668
Son üye
asmaydın

Yeni konular

Geri
Üst