Arduino Menu Tasarımında Sorun

Orayı geçti aşağıudaki hatayı verdi


error2.png
 
int switch;

satırınıda ekledim (void den önce)

Şu hatayı verdi

error3.png
 
@Omega abi buldum. void Setup içinde aşağıdaki değişkenler var. Onların void Setup üstünde olması lazım. Hepsini kesip yukarı yapıştır.
deminki 16.satıra eklediğin buttonPoll değişkeninide sil. O da bunların arasında olduğu için çalışmamış. Bunların hepsini yukarı alınca çalışacak.

C:
int state = 0;
int old=0;
int buttonPoll=0;
int pwm_acik=0;
int isik=analogRead(A0);
 
Kod:
// Dosya adı: LDR.ino
#include <PWM.h>//eklendi

int led = 9;   // eklendi
int32_t frequency = 50; //eklendi frequency (in Hz)

#define button 3
#define inPin0// giriş A0 pini
#define LED1 4
#define LED2 5
#define LED3 6
#define LED4 7
#define LED5 8
#define LED6 10
#define LED7 11
int buttonPoll;

void setup() {

pinMode(led,OUTPUT);
pinMode (button,INPUT);
pinMode(13, OUTPUT);
digitalWrite(13, HIGH);   
pinMode (LED1,OUTPUT);
pinMode (LED2,OUTPUT);
pinMode (LED3,OUTPUT);
pinMode (LED4,OUTPUT);
pinMode (LED5,OUTPUT);
pinMode (LED6,OUTPUT);
pinMode (LED7,OUTPUT);



digitalWrite(LED1,LOW);
digitalWrite(LED2,LOW);
digitalWrite(LED3,LOW);
digitalWrite(LED4,LOW);
digitalWrite(LED5,LOW);
digitalWrite(LED6,LOW);
digitalWrite(LED6,LOW);

int state = 0;
int old=0;
int buttonPoll=0;
int pwm_acik=0;
int isik=analogRead(A0);

Serial.begin(9600);
Serial.println(isik);
}

void loop() {
buttonPoll =digitalRead(button);
if (buttonPoll ==1){

  delay(50);
  buttonPoll=digitalRead(button);
  if (buttonPoll ==0){
    state =old+1;
  }
}
  else{
    delay(100);
  }
    isik=analogRead(A0);
    if(isik>50){
        pwm_acik=1;
    }
    else{
        pwm_acik=0;
        digitalWrite(led,LOW);
    }
//switch(state){
case 1:
    digitalWrite(LED1,HIGH);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    if(pwm_acik)   
    {
        pwmWrite(led, 26);   
    }
    old=state;
    break;
case 2:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,HIGH);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 44);
    if(pwm_acik)   
    {
        pwmWrite(led, 51);   
    }
    old=state;
    break;
case 3:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,HIGH);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
//pwmWrite(led, 48);
    if(pwm_acik)   
    {
        pwmWrite(led, 76);   
    }
    pwmWrite(led, 76);
    old=state;
    break;
case 4:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,HIGH);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 52);
    pwmWrite(led, 102);
    old=state;
    break;
case 5:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,HIGH);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 58);
    if(pwm_acik)   
    {
        pwmWrite(led, 127);   
    }
    old=state;
    break;
case 6:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,HIGH);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 62);
    if(pwm_acik)   
    {
        pwmWrite(led, 153);   
    }   
    old=state;
    break;
case 7:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,HIGH);
    //pwmWrite(led, 78);
    if(pwm_acik)   
    {
        pwmWrite(led, 179);   
    }
    old=state;
    break;
default:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    old=0;
    break;
  }
}
Son hali bu şekilde
 
Derleme hatası Allahın emridir, Olmazsa korkmak lazım :)

43. satırdakini de silmeli tabii.
Ben derleme hatalarına bayılıyorum ya. Bulmaca çözmek gibi geliyor bana. yeterki içinden çıkamayacağım bir sorun olmasın :D
 
Yani şimdi ekledim o satıları bu seferde başka bir hata veriyor
Son halini tekrar ekleyeyim .Nerede hata veriyorsa sen yada semih bey baksa ;hatasiz derleyene kadar
Bu arada kodda Photodiyotun A0 tanımlaması da eksik sanırım
Kod:
int state = 0;
int old=0;
int buttonPoll=0;
int pwm_acik=0;
int isik=analogRead(A0);
// Dosya adı: LDR.ino
#include <PWM.h>//eklendi

int led = 9;   // eklendi
int32_t frequency = 50; //eklendi frequency (in Hz)

#define button 3
#define inPin0// giriş A0 pini
#define LED1 4
#define LED2 5
#define LED3 6
#define LED4 7
#define LED5 8
#define LED6 10
#define LED7 11
//int buttonPoll;

void setup() {

pinMode(led,OUTPUT);
pinMode (button,INPUT);
pinMode(13, OUTPUT);
digitalWrite(13, HIGH); 
pinMode (LED1,OUTPUT);
pinMode (LED2,OUTPUT);
pinMode (LED3,OUTPUT);
pinMode (LED4,OUTPUT);
pinMode (LED5,OUTPUT);
pinMode (LED6,OUTPUT);
pinMode (LED7,OUTPUT);



digitalWrite(LED1,LOW);
digitalWrite(LED2,LOW);
digitalWrite(LED3,LOW);
digitalWrite(LED4,LOW);
digitalWrite(LED5,LOW);
digitalWrite(LED6,LOW);
digitalWrite(LED6,LOW);

int state = 0;
int old=0;
int buttonPoll=0;
int pwm_acik=0;
int isik=analogRead(A0);

Serial.begin(9600);
Serial.println(isik);
}

void loop() {
buttonPoll =digitalRead(button);
if (buttonPoll ==1){

  delay(50);
  buttonPoll=digitalRead(button);
  if (buttonPoll ==0){
    state =old+1;
  }
}
  else{
    delay(100);
  }
    isik=analogRead(A0);
    if(isik>50){
        pwm_acik=1;
    }
    else{
        pwm_acik=0;
        digitalWrite(led,LOW);
    }
//switch(state){
case 1:
    digitalWrite(LED1,HIGH);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    if(pwm_acik) 
    {
        pwmWrite(led, 26); 
    }
    old=state;
    break;
case 2:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,HIGH);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 44);
    if(pwm_acik) 
    {
        pwmWrite(led, 51); 
    }
    old=state;
    break;
case 3:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,HIGH);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
//pwmWrite(led, 48);
    if(pwm_acik) 
    {
        pwmWrite(led, 76); 
    }
    pwmWrite(led, 76);
    old=state;
    break;
case 4:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,HIGH);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 52);
    pwmWrite(led, 102);
    old=state;
    break;
case 5:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,HIGH);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 58);
    if(pwm_acik) 
    {
        pwmWrite(led, 127); 
    }
    old=state;
    break;
case 6:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,HIGH);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 62);
    if(pwm_acik) 
    {
        pwmWrite(led, 153); 
    } 
    old=state;
    break;
case 7:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,HIGH);
    //pwmWrite(led, 78);
    if(pwm_acik) 
    {
        pwmWrite(led, 179); 
    }
    old=state;
    break;
default:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    old=0;
    break;
  }
}
 
Yani şimdi ekledim o satıları bu seferde başka bir hata veriyor
Son halini tekrar ekleyeyim .Nerede hata veriyorsa sen yada semih bey baksa ;hatasiz derleyene kadar
Bu arada kodda Photodiyotun A0 tanımlaması da eksik sanırım
Kod:
int state = 0;
int old=0;
int buttonPoll=0;
int pwm_acik=0;
int isik=analogRead(A0);
// Dosya adı: LDR.ino
#include <PWM.h>//eklendi

int led = 9;   // eklendi
int32_t frequency = 50; //eklendi frequency (in Hz)

#define button 3
#define inPin0// giriş A0 pini
#define LED1 4
#define LED2 5
#define LED3 6
#define LED4 7
#define LED5 8
#define LED6 10
#define LED7 11
//int buttonPoll;

void setup() {

pinMode(led,OUTPUT);
pinMode (button,INPUT);
pinMode(13, OUTPUT);
digitalWrite(13, HIGH);
pinMode (LED1,OUTPUT);
pinMode (LED2,OUTPUT);
pinMode (LED3,OUTPUT);
pinMode (LED4,OUTPUT);
pinMode (LED5,OUTPUT);
pinMode (LED6,OUTPUT);
pinMode (LED7,OUTPUT);



digitalWrite(LED1,LOW);
digitalWrite(LED2,LOW);
digitalWrite(LED3,LOW);
digitalWrite(LED4,LOW);
digitalWrite(LED5,LOW);
digitalWrite(LED6,LOW);
digitalWrite(LED6,LOW);

int state = 0;
int old=0;
int buttonPoll=0;
int pwm_acik=0;
int isik=analogRead(A0);

Serial.begin(9600);
Serial.println(isik);
}

void loop() {
buttonPoll =digitalRead(button);
if (buttonPoll ==1){

  delay(50);
  buttonPoll=digitalRead(button);
  if (buttonPoll ==0){
    state =old+1;
  }
}
  else{
    delay(100);
  }
    isik=analogRead(A0);
    if(isik>50){
        pwm_acik=1;
    }
    else{
        pwm_acik=0;
        digitalWrite(led,LOW);
    }
//switch(state){
case 1:
    digitalWrite(LED1,HIGH);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    if(pwm_acik)
    {
        pwmWrite(led, 26);
    }
    old=state;
    break;
case 2:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,HIGH);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 44);
    if(pwm_acik)
    {
        pwmWrite(led, 51);
    }
    old=state;
    break;
case 3:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,HIGH);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
//pwmWrite(led, 48);
    if(pwm_acik)
    {
        pwmWrite(led, 76);
    }
    pwmWrite(led, 76);
    old=state;
    break;
case 4:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,HIGH);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 52);
    pwmWrite(led, 102);
    old=state;
    break;
case 5:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,HIGH);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 58);
    if(pwm_acik)
    {
        pwmWrite(led, 127);
    }
    old=state;
    break;
case 6:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,HIGH);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 62);
    if(pwm_acik)
    {
        pwmWrite(led, 153);
    }
    old=state;
    break;
case 7:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,HIGH);
    //pwmWrite(led, 78);
    if(pwm_acik)
    {
        pwmWrite(led, 179);
    }
    old=state;
    break;
default:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    old=0;
    break;
  }
}
Abi ben derleyecektim de kütüphanede pwm kütüphanesini bulamadım. sendeki kütüphaneyi ekler misin buraya?
 
pwm kütüphanesi linki (Açıklama satırında)
https://yadi.sk/d/IACaiyBLYLNwcw

Al abi bu şekilde hata vermeden derlendi. Photodiyotu da ekledim.

C:
// Dosya adı: LDR.ino
#include <PWM.h>//eklendi

int led = 9;   // eklendi
int32_t frequency = 50; //eklendi frequency (in Hz)

#define button 3
#define photoDiode A0 // giriş A0 pini
#define LED1 4
#define LED2 5
#define LED3 6
#define LED4 7
#define LED5 8
#define LED6 10
#define LED7 11

int state = 0;
int old=0;
int buttonPoll=0;
int pwm_acik=0;
int isik=analogRead(photoDiode);

void setup() {

pinMode(led,OUTPUT);
pinMode (button,INPUT);
pinMode(13, OUTPUT);
digitalWrite(13, HIGH);   
pinMode (LED1,OUTPUT);
pinMode (LED2,OUTPUT);
pinMode (LED3,OUTPUT);
pinMode (LED4,OUTPUT);
pinMode (LED5,OUTPUT);
pinMode (LED6,OUTPUT);
pinMode (LED7,OUTPUT);



digitalWrite(LED1,LOW);
digitalWrite(LED2,LOW);
digitalWrite(LED3,LOW);
digitalWrite(LED4,LOW);
digitalWrite(LED5,LOW);
digitalWrite(LED6,LOW);
digitalWrite(LED6,LOW);



Serial.begin(9600);
Serial.println(isik);
}

void loop() {
buttonPoll =digitalRead(button);
if (buttonPoll ==1){

  delay(50);
  buttonPoll=digitalRead(button);
  if (buttonPoll ==0){
    state =old+1;
  }
}
  else{
    delay(100);
  }
    isik=analogRead(photoDiode);
    if(isik>50){
        pwm_acik=1;
    }
    else{
        pwm_acik=0;
        digitalWrite(led,LOW);
    }
switch (state){
case 1:
    digitalWrite(LED1,HIGH);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    if(pwm_acik)   
    {
        pwmWrite(led, 26);   
    }
    old=state;
    break;
case 2:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,HIGH);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 44);
    if(pwm_acik)   
    {
        pwmWrite(led, 51);   
    }
    old=state;
    break;
case 3:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,HIGH);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
//pwmWrite(led, 48);
    if(pwm_acik)   
    {
        pwmWrite(led, 76);   
    }
    pwmWrite(led, 76);
    old=state;
    break;
case 4:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,HIGH);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 52);
    pwmWrite(led, 102);
    old=state;
    break;
case 5:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,HIGH);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 58);
    if(pwm_acik)   
    {
        pwmWrite(led, 127);   
    }
    old=state;
    break;
case 6:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,HIGH);
    digitalWrite(LED7,LOW);
    //pwmWrite(led, 62);
    if(pwm_acik)   
    {
        pwmWrite(led, 153);   
    }   
    old=state;
    break;
case 7:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,HIGH);
    //pwmWrite(led, 78);
    if(pwm_acik)   
    {
        pwmWrite(led, 179);   
    }
    old=state;
    break;
default:
    digitalWrite(LED1,LOW);
    digitalWrite(LED2,LOW);
    digitalWrite(LED3,LOW);
    digitalWrite(LED4,LOW);
    digitalWrite(LED5,LOW);
    digitalWrite(LED6,LOW);
    digitalWrite(LED7,LOW);
    old=0;
    break;
  }
}
 
Gökhan ve Semih yardımlarınız için teşekkür ederim
Ben şimdi A0 A Photo diyotu lehimleyeyim sonuca bakacağım.
İnşallah mantık hatasıda yoktur
Gerçi programlama böyle öğrenilmez ama şimdilik böyle olsun
Yardımcı olan herkese tekrar teşekkürler
 
Kodu karta yükledim photodiyotuda bağladım fakat istediğim şekilde çalışmadı
CASE lerin altındaki satırlarda
if(pwm_acik) satırından anladığım kadarıyla karşılaştırma yanlış yapılıyor gibi
Eğer Photodiyota 50 den fazla ışık geiyorsa bu case deki pwm değerini gönder demesi gerekli den az deger gönderiyorsa seçilmiş pwm i gönderme demesi gerekiyordu
 

Forum istatistikleri

Konular
6,953
Mesajlar
118,766
Üyeler
2,824
Son üye
selocan32

Son kaynaklar

Son profil mesajları

hakan8470 wrote on Dede's profile.
1717172721760.png
Dedecim bu gul mu karanfil mi? Gerci ne farkeder onu da anlamam. Gerci bunun anlamini da bilmem :gulus2:
Lyewor_ wrote on hakan8470's profile.
Takip edilmeye başlanmışım :D ❤️
Merhaba elektronik tutsakları...
Lyewor_ wrote on taydin's profile.
Merhabalar. Elektrik laboratuvarınız varsa bunun hakkında bir konunuz var mı acaba? Sizin laboratuvarınızı merak ettim de :)
Lyewor_ wrote on taydin's profile.
Merhabalar forumda yeniyim! Bir sorum olacaktı lcr meterler hakkında. Hem bobini ölçen hemde bobin direnci ölçen bir lcr meter var mı acaba?
Back
Top