Picproje Elektronik Sitesi

BİLGİSAYAR => Gömülü İşletim Sistemleri => Android => Konuyu başlatan: hakanmelik - 21 Aralık 2015, 21:31:27

Başlık: Arduinodan Androide BT ile veri aktarmak
Gönderen: hakanmelik - 21 Aralık 2015, 21:31:27
Merhaba arkadaşlar,

Arduino ve sensörden veri okuyup HC-06 blueetooth modülü ile Android uygulamasına veri gönderiyorum. Bunun için developer.android sitesisindeki BluetootChat örneğini kullanıyorum. Bu uygulama ile bağlandım ve veri alışverişi sıkıntısız gerçekleşiyor.

Ama şöyle bir sorunum var. Andoid tarafında 3 adet TextView'i güncellemek istiyorum ama başaramıyorum. Sıkıntı ise gelen veri byte tipinde ve Arduinodan veri gönderirken hepsini aynı anda gönderiyor(3 sensör değerini, int olarak). Yani ben ayırt edemiyorum hangisi hangi veri. Peş peşe hepsini gönderiyor.

Android tarafında  Handler metodu altındaki
case Constants.MESSAGE_READ:

seçeneğinin altında varsayılan olarak


byte[] readBuf = (byte[]) msg.obj;


bu geliyor ve ben

sicaklikTX.setText( readBuf[0]  );

yapınca veriyi alabiliyorum. Eğer Arduino tarafında 3 tane veri gönderdiysem hepsini sırayla ekrana basıyor haliyle sadece son gönderiğim ekranda görünüyor. Yani eğer Arduino tarafında aşağıdaki gibi tek veri gönderseydim sıkıntı olmuyordu,

SoftwareSerial bt(12, 13);

bt.write(sicaklık);



Kısaca: Aynı kanaldan birden fazla veriyi nasıl gönderirim ve istediğim yere yazabilirim.

Şimdiden teşekkürler.
Başlık: Ynt: Arduinodan Androide BT ile veri aktarmak
Gönderen: erdcan - 22 Aralık 2015, 01:55:58
uygulama kodlarınızı göremediğimden pratik çözüm önerisi olarak göndereceğiniz verilerin arasına karakter koyun.hersensör değerinden sonra# işareti ile veriyi gönderin. Android tarafında da # işaretini yakalayınca sensör değerini almış olursunuz.
Başlık: Ynt: Arduinodan Androide BT ile veri aktarmak
Gönderen: peko - 22 Aralık 2015, 08:30:17
Alıntı Yaphepsini sırayla ekrana basıyor haliyle sadece son gönderiğim ekranda görünüyor.



byte[] bytes = {...}
String str = new String(bytes, "UTF-8"); // for UTF-8 encoding
byte[] b = new byte[1];
fos.read(b);
fos.close();
String message = new String(b);



StringBuilder builder = new StringBuilder();
for (String details : list2) {
   builder.append(details + "\n");
}

custName.setText(builder.toString());


Başlık: Ynt: Arduinodan Androide BT ile veri aktarmak
Gönderen: hakanmelik - 23 Aralık 2015, 12:28:33
@erdcan
O karakter olayını denedim ama ama tam beceremedim.

Başlık: Ynt: Arduinodan Androide BT ile veri aktarmak
Gönderen: hakanmelik - 23 Aralık 2015, 12:33:38
@peko
Hocam ilk yazdığınız kodda fos olayını anlamadım.
İkincisinde de for yapısını tam anlamadım. Biraz yardımcı olabilir misiniz ?
Başlık: Ynt: Arduinodan Androide BT ile veri aktarmak
Gönderen: peko - 23 Aralık 2015, 13:42:54

Alıntı YapKısaca: Aynı kanaldan birden fazla veriyi nasıl gönderirim ve istediğim yere yazabilirim.

byte[] readBuf = (byte[]) msg.obj;
String message = new String(readBuf);

Bu şekilde message olarak aldığın bilgi nedir yazabilir misin?
Başlık: Ynt: Arduinodan Androide BT ile veri aktarmak
Gönderen: hakanmelik - 24 Aralık 2015, 16:07:22
@peko
Eğer readBuf[0] dan okursam istediğim değeri sağlıklı okuyorum ama message den alirsam gelen veri biraz değişiyor. Mesela 30 ise gelen veri 45-50 gibi bisey oluyor .
Başlık: Ynt: Arduinodan Androide BT ile veri aktarmak
Gönderen: protezdiyot - 28 Aralık 2015, 21:16:12
Hakan bey merhaba, bende benzer bir işlem yapmak istiyorum ve 3 gündür uğraşıyorum ama arpa boyu yol alamadım. Yardımcı olabilirseniz sevinirim. Öncelikle benim problemim android stüdyo. Elimde hc06 Bluetooth ile yapılmış bir proje var ve ben bu projeyi android stufyo ile açınca sadece kodları görebiliyorum. Telefonun ekranında butonları nasıl yerleştirilmiş bu ekranı göremiyorum. Bunu nasıl açabilirim? Yardımcı olabilirseniz mutlu olurum.
Başlık: Ynt: Arduinodan Androide BT ile veri aktarmak
Gönderen: protezdiyot - 28 Aralık 2015, 21:18:56
Konu ile alakalı aşağıdaki linkte bir başlık açtım. İsterseniz oraya da yazabilirsiniz... Şimdiden teşekkürler  https://www.picproje.org/index.php?topic=62633.msg485061.msg#485061
Başlık: Ynt: Arduinodan Androide BT ile veri aktarmak
Gönderen: hakanmelik - 29 Aralık 2015, 19:49:39
@protezdiyot

Hocam BluetoothChat örneğini %90 çözdüm. Muhtemelen senin çözümün bende. Bana mail adresini ver benim projeyi sana atayım gerekli yerleri düzenleyip kullanırsın.

Ben byte olarak veri alıp gönderebiliyorum.

Başlık: Ynt: Arduinodan Androide BT ile veri aktarmak
Gönderen: protezdiyot - 30 Aralık 2015, 12:59:07
@hakanmelik mail attım adresinize. Teşekkürler şimdiden
Başlık: Ynt: Arduinodan Androide BT ile veri aktarmak
Gönderen: ceka - 12 Aralık 2017, 11:16:57
çoktandır foruma girmedim belki aynı sorunu yaşayanlar vardır diye ekliyorum daha fazla yazı yazmaya gerek yok




https://www.youtube.com/watch?v=5YovICoYCLg&t=254s (https://www.youtube.com/watch?v=5YovICoYCLg&t=254s)