Arduino,STM32,PIC - C# ile Veri Okuma (SerialDataReceivedEventHandler)

Поделиться
HTML-код
  • Опубликовано: 7 янв 2025

Комментарии • 35

  •  5 лет назад +12

    O hatayı neden aldığını söyleyeyim. Program sonlanırken senin thread in hala çalışıyor. Yani en son thread fonksiyonu bellekten siliniyor.
    button2 ye yada form.closed olayına şu kodu ekle;
    seriaPort.DataRecived -= SerialDataRecivedEventHandler(serialPort1_DataRecived)
    yada
    seriaPort.DataRecived -= serialPort1_DataRecived
    bu sayede önce thread silinecek sonra programın sonlanacak.

    • @sametbinal5419
      @sametbinal5419 5 лет назад

      kapanırken donma olayını çözemedim tam olarak ne yapmam gerekiyor yardımcı olabilirmisiniz

    •  5 лет назад

      @@sametbinal5419 Samet kardeş, serialPort1.Close(); satırını button2 nin click event ına ekle , çünkü portun hala açık ve veri almaya devam ediyor... Daha da garantiye almak istersen serialPort1.DataRecived -= SerialDataRecivedEventHandler(serialPort1_DataRecived) bu satırıda serialPort1.Close() satırının altına ekleyebilirsin... Aslında ilk yorumumda serialPort1.Close(); ekle demeliydim ama unutmuşum :) yaşlılık işte ....

    • @sametbinal5419
      @sametbinal5419 5 лет назад

      private void button2_Click(object sender, EventArgs e)
      {
      serialPort1.Close();
      serialPort1.DataReceived += new SerialDataReceivedEventHandler(serialPort1_DataReceived);
      }
      nerde yanlış yapıyorum hata devam ediyor
      Bir iş parçacığı çıkışı veya bir uygulama isteği nedeniyle G/Ç işlemi iptal edildi. yazıyor hatada

    •  5 лет назад

      @@sametbinal5419 Her şey normal görünüyor... Belkide sistemle alakalıdır. Yani bu mesajı windows un kendisi veriyor olabilir.. Bu mesaj program kapandıktan sonra mı geliyor yoksa program kapanmadan mı? Eğer programını visual studio nun için den değil de proje klasörünün içinden çalıştırırsan net anlayabilirsin. Bu mesaj windowsun kendi mesajı gibi görünüyor.

    • @sametbinal5419
      @sametbinal5419 5 лет назад

      @ çalışmaya başladığında sıkıntı yok veri geliyor ama durdur butonuna bastığımda yada formu kapattmaya çalıştığımda form donuyor kapanmıyor. Hatta serialPort1.DiscardInBuffer(); kodunuda denedim ama bi çözüm bulamadım. formu delete+alt+ctrl yapıp kapatınca Bir iş parçacığı çıkışı veya bir uygulama isteği nedeniyle G/Ç işlemi iptal edildi yazıyor. data = serialPort1.ReadLine(); hata bu satırı gösteriyor.

  • @atakancevik9126
    @atakancevik9126 2 года назад

    2 Gündür uğraşıyorum. Arduino Leonardo doğru bir şekilde seri porta değer yazıyor. Bunu başka monitörler ile de gördüm. ama gösterdiklerini harfiyen yapmama rağmen data almıyordu. Sonra yabancı bir forumda Portu açmadan buton eventine serialPort1.RtsEnable = true; ve serialPort1.DtrEnable = true; ile çözüldüğünü gördüm. Yaptım oldu

    • @olci1427
      @olci1427 Год назад

      Atakan bey merhaba, serialPort1.RtsEnable = true; ve serialPort1.DtrEnable = true; kodlarını tam olarak nereye eklediniz acaba? Ben de aynı sorunu yaşıyorum. Seri port'a bağlanıyorum ancak herhangi bir veri akışı olmuyor. Galiba sizinle aynı problemi yaşıyorum. Ancak verdiğinz kodları tam olarak nereye ekleyeceğimi bulamadım. :( Yardımcı olursanız sevinirim, saygılar.

    • @olci1427
      @olci1427 Год назад

      Tamamdır sorunu çözdüm. :) serialPort1.BaudRate = 9600;'in hemen altına ekledim ve çalıştı. Tam emin değilim ancak arduino leonardo ve mega kullananlar bu problemi yaşıyormuş galiba. Eğer arduino leonardo veya mega kullanıyorsanız Atakan beyin verdiği bu iki kodu eklemelisiniz. :) Kolaylıklar dilerim.

    • @nalbantyasin
      @nalbantyasin 9 месяцев назад

      @@olci1427 EVET ARDUİNO LEONARDO VE MEGADA SERİ PORT AKTİF ETMEN GEREKİYOR RTS VE DTR İLE SERİAL PORT OPEN YETERLİ OLMUYOR TX VE RX IŞIKLARI YANMIYOR

  •  5 лет назад +1

    Videoyu beğendiyseniz beğenmeyi ve kanalıma abone olmayı unutmayın :)

  • @electronic7979
    @electronic7979 5 лет назад +1

    Elinize sağlık 👍

  • @mehmetkurnaz2712
    @mehmetkurnaz2712 4 года назад +1

    Merhaba, başarılı bir video teşekkür ederim. '*' ile gelen iki veriyi ayrı ayrı okudunuz. Peki 2 den fazla veriyi mesela 10 adet veriyi nasıl okumalıyız ?

  • @tayfun11100
    @tayfun11100 4 года назад

    Çok faydalı dersler gercekten, teşekkürler. Bir soru sormak istiyorum; henuz yeni başladım, bir arayüz kullanarak Arduino ile veri okuma ve gerektiginde ledleri yakıp söndürme şeklinde bir uygulama yapmam gerekiyor. Python mu bu iş icin daha uygun yoksa C# mı? Eger aralarında fark yoksa C#' ı tercih ederim çünkü daha pratik görünüyor ama genelde insanlar Python ve Firmata ile Arduino haberlesmesi yapmıs gibi.

  • @hobarey5029
    @hobarey5029 5 лет назад

    C# kalmıştı sayende ona da bulaştık:) emeğine sağlık...

    •  5 лет назад +1

      hoba rey C# iyidir iyi:)

  • @fesa9926
    @fesa9926 5 лет назад

    Stm32f103c8 kullanarak bluetooth ile telefon arasındaki veri alışverisinde hangi komutları kullanıcaz acaba. Sizi burda arduino için yazdınıž. Stm32 için nasıl yazmalıyız?

  • @fear1973
    @fear1973 11 месяцев назад

    Merhaba, string olarak tanımladığımız data ve textleri, bir if-else yapısında < ya da > olarak karşılaştırmak istiyorum.Bir dht sicaklik sensörü okuyorum.
    Örneğin, eğer sicaklikDegeri.Text (sicaklikdegeri.text yanii splitted_data[0]) eğer < 20'den şunu şunu yap gibi. Yani sicaklik değerimiz 20 sayısından büyük ise şunu yap. int olarak dönüştürmeye çalıştım fakat yine de yapamadım.. Yardımcı olabilir misiniz?

    •  11 месяцев назад

      bahadirayd@gmail.com adresine dönüştürme işlemlerini nasıl yaptığınızı yazarsanız yardımcı olabilirim.

  • @oguzkrbyk4092
    @oguzkrbyk4092 5 лет назад

    Hocam video içeriği çok faydalı ancak sonraki videolarda yazı boyutunu büyütebilirseniz çok güzel olur.

    •  5 лет назад

      C# ile alakalı başka bir video çekersem tamam büyüteyim fontu. Teşekkürler.

  • @oguzhansimsektr
    @oguzhansimsektr 5 лет назад

    öncelikle verdiğin bilgiler için tesekkurler.
    hatayı duzeltmek için:
    button1_click kodunu try-catch icerisinde yazınca hata alma problemi ortadan kalkıyor.

    • @sametbinal5419
      @sametbinal5419 5 лет назад

      dediğinizi nasıl yapıcaz acaba tam anlamadım veri almayı durdurduğumda yada formu kapatmaya çalıştığımda form donuyor hata veriyor

  • @hasanyldz7328
    @hasanyldz7328 2 года назад

    Button 2' ye basınca thread hatası almaktayım, Mehmet Özcan' ın çözümü işe yaramadı. Yardımcı olabilir misiniz?

    • @sefasayrac9702
      @sefasayrac9702 Год назад +1

      Hocam merhabalar, şu şekilde çözebilirsiniz. Event için oluşturduğunuz serialPort1_DataReceived fonksiyonu içerisinde ki label.text'e;
      Invoke((MethodInvoker)delegate
      {
      label1.Text = splitted_data[0];
      });
      Bu şekilde yazmayı deneyiniz. Ayrıca durdurma olarak kullanacağınız buton içerisine de;
      if (serialPort1.IsOpen)
      {
      serialPort1.Close();
      }
      kullanırsanız işi daha garantiye alırsınız. Bu şekilde sorun olmayacağını düşünüyorum. İyi çalışmalar.

  • @gunerg50
    @gunerg50 3 года назад +1

    merhaba, linkler çalışmıyor,

    •  3 года назад

      Merhaba, yarın kontrol edip burdan haber veririm size

  • @alibilim5082
    @alibilim5082 4 года назад

    Hocam merhaba ben Arduino ya 4 tane sensör bağlayıp c# ta bunun ayrı ayrı verilerini okutmak istiyorum nasıl yapacağım. Serialport tan kast edilen Arduino da ki port mu yoksa PC de arduinonun bağlı olduğu port mu biraz aciliyeti var hemen dönerseniz çok iyi olur

    •  4 года назад +1

      Ali Bilim Ben burda 2 tane veri okumuşum aynı şekilde 4li okuma yapacaksınız. Her veriyi aralarına *koyarak gönderin C#ta ayırın onları . Port Arduinonun PC’ye bağlı portu.

    • @alibilim5082
      @alibilim5082 4 года назад

      @ hocam ben bir yerde hata yaptım herhalde bu başka bir sorun üsttekinden farkli hocam ben projeyi bitirdim kaydettim sonra tekrar bi bakayım diye açtığımda tasarım kısmı full silinmiş öyle olunca kodlarda hata veriyor ben bu işi nasıl çözerim

  • @Barqunics
    @Barqunics 5 лет назад

    nice

  • @metronom_81
    @metronom_81 4 года назад +1

    Arkadaşım yaptığın şeyin sonunu getirmemişsin hiç yorumları okumuyor musun =?

    •  4 года назад

      Ne gibi bir son bekliyorsunuz anlamadım ?

    • @metronom_81
      @metronom_81 4 года назад

      samet binal diyor ki kapadığımda donma olayı oluyor demiş aşağıdaki yorumun içeriğinde ... yani programı kapadığın zaman kitleniyor...mehmet özcan fikir vermiş ama sanırım o da işe yaramamış ...