10. sınıf robotik kodlama dersinde Bluetooth ile giden arabanın kodlarının mantığı nedir?

erenucnokta

Femtopat
Katılım
27 Haziran 2023
Mesajlar
42
Daha fazla  
Cinsiyet
Erkek
Robotik kodlama kitabı 10. sınıf 230. sayfa devresindeki robot için sınıfta bu kodu anlayamadık. Yazabilirseniz sevinirim.
 
C++:
#include<SoftwareSerial.h>
SoftwareSerial bluetooth1(12,13);//tx=12,Rx=13
char veri;
void setup(){
Serial.begin(9600);
bluetooth1.begin(9600);
}
void loop(){
if(bluetooth1.available())
{
veri=bluetooth1.read();
Serial.println(veri);
}
}
#include<SoftwareSerial.h>
SoftwareSerial bluetooth1(12,13);//tx=12,Rx=13
int h = 150;
char veri;
void setup(){
bluetooth1.begin(9600);
 pinMode(5, OUTPUT);// sağ motor ileri pini.
pinMode(6, OUTPUT);// sağ motor geri pini.
pinMode(9, OUTPUT);// sol motor ileri pini.
pinMode(10, OUTPUT);// sol motor geri pini.
}
void loop(){
if(bluetooth1.available())
{
veri= bluetooth1.read();
if(veri=='1') ileri();
if(veri=='2') geri();
 if(veri=='3') sol();
if(veri=='4') sag();
 if(veri=='5') dur();
}
}
void ileri(){
analogWrite(5,h);
analogWrite(6,0);
analogWrite(9,h);
analogWrite(10,0);
}
void geri(){
analogWrite(5,0);
analogWrite(6,h);
analogWrite(9,0);
analogWrite(10,h);
}
void sol(){
analogWrite(5,h);
analogWrite(6,0);
analogWrite(9,0);
analogWrite(10,h);
}
void sag(){
analogWrite(5,0);
analogWrite(6,h);
analogWrite(9,h);
analogWrite(10,0);
}
void dur(){
analogWrite(5,0);
analogWrite(6,0);
analogWrite(9,0);
analogWrite(10,0);
}

Tam kod bu.
Bak şimdi nasıl bir hata yaptığınızı anlatayım. Kodu anlamaya çalışmak, ne yapıldığını anlamaya çalışmak yerine her şeyi kopyala yapıştır yapmışsınız. Hata burada başlıyor. Attığınız kod mikroişlemciye iki farklı kod farkında mısınız bilmiyorum. Kitap size ilk başta minimal versiyonu göstermiş, sonra da kendileri nasıl yapmışı göstermiş.

Ya bunu atacaksınız, hareket yok sadece aldığı veriyi geri basıyor ekrana okumanız için.
1714390359467.png

Yada bunu, bu hareketin olduğu kod. İkisini birden değil. Okusanız, anlamaya çalışsanız hataları bu kadar zorlanmazsınız.
C++:
#include<SoftwareSerial.h>
SoftwareSerial bluetooth1(12,13);//tx=12,Rx=13
int h = 150;
char veri;
void setup(){
bluetooth1.begin(9600);
 pinMode(5, OUTPUT);// sağ motor ileri pini
pinMode(6, OUTPUT);// sağ motor geri pini
pinMode(9, OUTPUT);// sol motor ileri pini
pinMode(10, OUTPUT);// sol motor geri pini
}
void loop(){
if(bluetooth1.available())
{
veri= bluetooth1.read();
if(veri==’1’) ileri();
if(veri==’2’) geri();
 if(veri==’3’) sol();
if(veri==’4’) sag();
 if(veri==’5’) dur();
}
}
void ileri(){
analogWrite(5,h);
analogWrite(6,0);
analogWrite(9,h);
analogWrite(10,0);
}
void geri(){
analogWrite(5,0);
analogWrite(6,h);
analogWrite(9,0);
analogWrite(10,h);
}
void sol(){
analogWrite(5,h);
analogWrite(6,0);
analogWrite(9,0);
analogWrite(10,h);
}
void sag(){
analogWrite(5,0);
analogWrite(6,h);
analogWrite(9,h);
analogWrite(10,0);
}
void dur(){
analogWrite(5,0);
analogWrite(6,0);
analogWrite(9,0);
analogWrite(10,0);
}

Bluetooth kütüphanesini eklemeniz gerek.
Hatayı okumadın bile değil mi? Bluetooth gördün tak diye atladın bt eklemen lazım diye.
 
Bak şimdi nasıl bir hata yaptığınızı anlatayım. Kodu anlamaya çalışmak, ne yapıldığını anlamaya çalışmak yerine her şeyi kopyala yapıştır yapmışsınız. Hata burada başlıyor. Attığınız kod mikroişlemciye iki farklı kod farkında mısınız bilmiyorum. Kitap size ilk başta minimal versiyonu göstermiş, sonra da kendileri nasıl yapmışı göstermiş.

Ya bunu atacaksınız, hareket yok sadece aldığı veriyi geri basıyor ekrana okumanız için.
Eki Görüntüle 2181603
Ya da bunu, bu hareketin olduğu kod. İkisini birden değil. Okusanız, anlamaya çalışsanız hataları bu kadar zorlanmazsınız.
C++:
#include<SoftwareSerial.h>
SoftwareSerial bluetooth1(12,13);//tx=12,Rx=13
int h = 150;
char veri;
void setup(){
bluetooth1.begin(9600);
 pinMode(5, OUTPUT);// sağ motor ileri pini.
pinMode(6, OUTPUT);// sağ motor geri pini.
pinMode(9, OUTPUT);// sol motor ileri pini.
pinMode(10, OUTPUT);// sol motor geri pini.
}
void loop(){
if(bluetooth1.available())
{
veri= bluetooth1.read();
if(veri==’1’) ileri();
if(veri==’2’) geri();
 if(veri==’3’) sol();
if(veri==’4’) sag();
 if(veri==’5’) dur();
}
}
void ileri(){
analogWrite(5,h);
analogWrite(6,0);
analogWrite(9,h);
analogWrite(10,0);
}
void geri(){
analogWrite(5,0);
analogWrite(6,h);
analogWrite(9,0);
analogWrite(10,h);
}
void sol(){
analogWrite(5,h);
analogWrite(6,0);
analogWrite(9,0);
analogWrite(10,h);
}
void sag(){
analogWrite(5,0);
analogWrite(6,h);
analogWrite(9,h);
analogWrite(10,0);
}
void dur(){
analogWrite(5,0);
analogWrite(6,0);
analogWrite(9,0);
analogWrite(10,0);
}

Hatayı okumadın bile değil mi? Bluetooth gördün tak diye atladın BT eklemen lazım diye.

Teşekkürler.
 
Son düzenleyen: Moderatör:

Geri
Yukarı