RP2040 & ATMEGA328+ESP01(8266) BLYNK

Kod:
#define bt Serial1//her yere Serial1 yazıp durmayalım diye kısa isim verdim

String b  = "";//bt'den gelecek verilerimizi yazacağımız bir string

void setup() {
  bt.setRX(13);//kullanacağımız rx pini
  bt.setTX(12);//kuellanacağımız tx pini
  delay(50);//gerek varmı bilmiyorum kısa bir bekleme
  bt.begin(9600);//9600baud değerinde haberleşmemizi 12-13 pinlerinden başlattık

}

void loop() {
  if(bt.available()){//eğer bt aktifse
    
    b = bt.read();//bt'den okuduğunu b stringine yaz
    //devamı sana kalmış
    
  }
}
 
Kod:
#define bt Serial1//her yere Serial1 yazıp durmayalım diye kısa isim verdim

String b  = "";//bt'den gelecek verilerimizi yazacağımız bir string

void setup() {
  bt.setRX(13);//kullanacağımız rx pini
  bt.setTX(12);//kuellanacağımız tx pini
  delay(50);//gerek varmı bilmiyorum kısa bir bekleme
  bt.begin(9600);//9600baud değerinde haberleşmemizi 12-13 pinlerinden başlattık

}

void loop() {
  if(bt.available()){//eğer bt aktifse
 
    b = bt.read();//bt'den okuduğunu b stringine yaz
    //devamı sana kalmış
 
  }
}
Ahmet terminalden gönderdiğim kodu binary alıyor sanırım bu ve tek satırda almıyor.

Screenshot_20220423-122302.jpg
binary.png
 
yoksa @taydin abinin dediği başımıza mı geldi?
Bu picoyu yazan earlephilhower abimiz dahil etmedi mi string'i
 
st.png

Gelmemiş sanırım böyle bir eklenti var pico dosyalarımızın içinde.
 
yoksa @taydin abinin dediği başımıza mı geldi?
Bu picoyu yazan earlephilhower abimiz dahil etmedi mi string'i
Valla bilmiyorum ama vardır herhalde çaresi. bir şekilde "convert.toString" gibi birşey yapılıyordur.
Ayrıca terminale nasıl veri göndereceğiz?
Terminalden gönderdiğimi Serial.print(); ile monitöre yazdırıyorum.
 
Sorun String tipinde değil, şu satırda:
b = bt.read();

Burada bt.read() byte tipinde veri döndürüyor (0-255). Siz onu String değişkene atayınca byte (sayı) değerini atamış oluyorsunuz. Aşağıdaki gibi bir iş yapmış oluyorsunuz yani compiler açısından:
String b = 100;

Karakter olarak okumak istiyorsanız char veri tipini kullanabilirsiniz:

char ch = bt.read();
Serial.print("BLT: ");
Serial.println(ch);

Tüm mesajı bir stringde toplamak isterseniz de :

void loop() {
b="";
while (bt.available()){ // bt seriale gelen veri varsa
char ch = bt.read();
b = b + ch;

}
Serial.println("BLT: " + b);
}
 
@ozkarah
Kod:
#define bt Serial1//her yere Serial1 yazıp durmayalım diye kısa isim verdim

String b  = "";//bt'den gelecek verilerimizi yazacağımız bir string

void setup() {
  bt.setRX(13);//kullanacağımız rx pini
  bt.setTX(12);//kuellanacağımız tx pini
  delay(50);//gerek varmı bilmiyorum kısa bir bekleme
  bt.begin(9600);//9600baud değerinde haberleşmemizi 12-13 pinlerinden başlattık

}

void loop() {
  if(bt.available()){//eğer bt aktifse
    
    b = bt.readString();//bt'den okuduğunu b stringine yaz
    //devamı sana kalmış
    
  }
}
Senin yazdığın nizam çok daha doğru olsa da benim dalgınlığıma gelmiş read olarka yazmışım readString olarak çevirirsek sorun kalmıyor
 
Sanırım geçen seneye kadar ücretsiz kullanılabiliyorken sınırlandırma gelmiş. Maker paketi 7$ olmuş. Fiyatlandırma politikası ülkelerin durumuna göre değişiyor galiba. Türkiye için aylık 72TL.

Piyasadaki solar şarj cihazları hep buck çalışıyor. Boost bir cihaza ihtiyacım vardı. Bir ön çalışma yapayım dedim. ESP32'yi sevdim. :ok1:

WhatsApp Image 2024-04-11 at 12.42.13.jpeg
sgp1.blynk.cloud.jpg


WhatsApp Image 2024-04-11 at 12.40.44.jpeg
 
Son düzenleme:

Forum istatistikleri

Konular
7,728
Mesajlar
128,665
Üyeler
3,119
Son üye
İsmail16

Son kaynaklar

Son profil mesajları

Python Geliştirmeye eklediğim yapay zeka sunucusu, yeni başlayanlar için roket etkisi
Bir insanın zeka seviyesinin en kolay tesbiti, sorduğu sorulardır.
yapay zeka interneti yedi bitirdi, arama motoru kullanan, forumlara yazan kaldı mı ?
Freemont2.0 herbokolog Freemont2.0 wrote on herbokolog's profile.
nick iniz yakıyor
:D
az bilgili çok meraklı
Back
Top