HC-06 Bluetooth - Pic Haberleşmesi

Telefondan denedim şimdi veriler yan yana geldiğinden doğru görünüyor. Fakat burada da "a" ilk gelmiş gibi görülüyor. C#'da listbox'a verileri alıyorum. Sizce RS232 de sorunsuz alıyor neden modülden verileri doğru almıyor. Listbox yerine richtextbox ta denedim yine eksik geliyor.
 
Peki Docklight gibi seri port arayüzünde gelen karakterlerin hex'ine baksana, mesela a harfi ile r habi arasında gelen karakterlerin hex i ne
 
Dediğiniz gibi "araba" kelimesinin her harfine ASCII kodlarına baktım. Arada bir veri görünmüyor. 6 tane hex çıkıyor. C# tekrar denedim sorunlu geldi gene.
C# veriyi "serialPort1_DataReceived" fonksiyonundan alıyorum.
Veriyi ise "string data = serialPort1.ReadExisting();" koduyla okuyorum.
En sonda "listBox2.Items.Add(data);" kullanarak listbox'ta yazdırıyorum.
Sizce sorun okuma kısmında mı yoksa başka bir yerde mi ?
 
Benim programdaki kısımda şu şekildeydi,
private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
{
RxString = serialPort1.ReadExisting();
this.Invoke(new EventHandler(DisplayText));
}

Eğer kasteddiğiniz, araba kelimesi tam geliyor, ama a geldikten 1 sn sonra falan geliyorsa, aynı şey bende de oluyor..
 
Kodlarla oynarken okuma ayarını değiştirdim.
"string data = serialPort1.ReadExisting();" yerine "string data = serialPort1.ReadLine();" yazdım verileri arada bekleme olmaksızın aldı.
Verdiğiniz tüm cevaplar için tekrar teşekkür ederim.
 
bende basic kullanıyorum hc-06 modüle max 232 bağlantı yaptım picden veri aktarıyorum fakat aktardığım verilerden alakası bilgiler geliyor sebebi nedir acaba yardımcı olursanız sevinirim mesela 1 gönderiyorum fakat s harfi geliyor
 
#include <16f877.h>
#fuses XT,NOWDT,NOPROTECT,NOBROWNOUT,NOLVP,NOPUT,NOWRT,NODEBUG,NOCPD

#use delay (clock=4000000)

#define use_portb_lcd TRUE // LCD B portuna bağlı

#include <benim_LCD.c> // lcd.c dosyası tanıtılıyor

#use rs232 (baud=9600, xmit=pin_C6, rcv=pin_C7, parity=N, stop=1)
#use fast_io(c)
int data;

/********* ANA PROGRAM FONKSİYONU********/

void main ( )
{
setup_psp(PSP_DISABLED); // PSP birimi devre dışı
setup_timer_1(T1_DISABLED); // T1 zamanlayıcısı devre dışı
setup_timer_2(T2_DISABLED,0,1); // T2 zamanlayıcısı devre dışı
setup_adc_ports(NO_ANALOGS); // ANALOG giriş yok
setup_adc(ADC_OFF); // ADC birimi devre dışı
setup_CCP1(CCP_OFF); // CCP1 birimi devre dışı
setup_CCP2(CCP_OFF); // CCP2 birimi devre dışı

set_tris_c(0b10000000);

lcd_hazirla();

while(1)
{

imlec(1,1);
printf(lcd_veri,"Bluetooth Test");
data=getch();

imlec(2,1);
printf(lcd_veri,"%04d"data);
delay_ms(1000);
putc(data);
delay_ms(2000);
}
}
Arkadaşlar,
HC-06 bluetooth modül ile devre yapmak istiyorum. Pic16f877A kullanıyorum. Öncelikle basit bir devre yapmak istedim. Cihazı test etmek için. Bu programı 232 port ile denediğimde çalışıyor. klavyeden gönderdiğim sayıyı tekrar geri alıyorum. Ama modül ile çalışmıyor. Konuda bahsedilen her şeyi denedim. Cihaza 3.3 volttan fazla gerilim vermedim. Sorun nerede olabilir. Modül yanmış olabilir mi?
 
bende basic kullanıyorum hc-06 modüle max 232 bağlantı yaptım picden veri aktarıyorum fakat aktardığım verilerden alakası bilgiler geliyor sebebi nedir acaba yardımcı olursanız sevinirim mesela 1 gönderiyorum fakat s harfi geliyor

data=getch(); Veri göndermek için bu komutu
putc(data); Veri almak için bu komutu kullan bende sorunsuz çalıştı.
 

Forum istatistikleri

Konular
127,950
Mesajlar
913,859
Kullanıcılar
449,598
Son üye
kadir12366

Yeni konular

Geri
Üst