2 pic arasında RF haberleşme

Başlatan saybatli, 11 Ağustos 2017, 00:14:16

saybatli

Merhaba;

2 tane pic var 1 tanesi diğer pic'e ADC den okuduğu float voltaj değeri gönderecek şekilde ayarlamak istiyorum. Denem olarak putc  ile tek rakam gönderip getc ile veri alabiliyorum ama sadece 1 karakter oluyor bu. ben float olan değeri göndermek istiyorum. printf ile string olarak göndermeyi denedim karşı alıcı pic hiç bir veri almadı. Float değerler nasıl gönderilir ?

XX_CİHAN_XX

Merhaba, yeni konu açmadan önce ilgili konu hakkında forumda arama yapınız. Geçmişte çok defa konuşulan bir konu. Aramalarda bulamadığınız ya da anlamadığınız noktaları sorarak ilerlerseniz daha hızlı çözüm bulabilirsiniz.
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

sigmoid

Union ile yapabilirsiniz. Union içinde bir float ve 4 bytelık dizi oluşturun. Union olarak tanımladığınız iki değişkende aynı adreste saklanır. Hesaplamalarda float değişkeni, veri gönderip alırken diziyi kullanmanız yeterli.

saybatli

Alıntı yapılan: sigmoid - 11 Ağustos 2017, 09:48:35
Union ile yapabilirsiniz. Union içinde bir float ve 4 bytelık dizi oluşturun. Union olarak tanımladığınız iki değişkende aynı adreste saklanır. Hesaplamalarda float değişkeni, veri gönderip alırken diziyi kullanmanız yeterli.

bende o konuya bakıyordum böyle birşey buldum ama nasıl işliyor tam anlamadım

union u_tab {
int ival;
long lval;
float fval;
};

union u_tab Tab;
void main (void) {
      int Val  = (int) Tab.fval;
}

polleme

Alıntı yapılan: saybatli - 11 Ağustos 2017, 09:56:58
bende o konuya bakıyordum böyle birşey buldum ama nasıl işliyor tam anlamadım

union u_tab {
int ival;
long lval;
float fval;
};

union u_tab Tab;
void main (void) {
      int Val  = (int) Tab.fval;
}

Burada union olarak yaratılan u_tab değişkeni, altında üç alt değişken içeriyor ve biz ana değişken üzerinden bu üçüne erişebiliyoruz. Bu değişkenler bir grup yapılmış oluyor. Ardından alttaki union komutu ile bu u-tab formatına uygun Tab değişkeni yaratılıyor. Bu Tab değişkeni, programın kalan kısmında kullanılacak kopya değişken olmuş oluyor. Nihayet  int Val  = (int) Tab.fval; satırı ile de bu Tab değişkeni altındaki fval alt değişkeninin değeri okunup Val adlı yeni yaratılan değişkene aktarılıyor.


saybatli

Alıntı yapılan: polleme - 11 Ağustos 2017, 15:59:11
Burada union olarak yaratılan u_tab değişkeni, altında üç alt değişken içeriyor ve biz ana değişken üzerinden bu üçüne erişebiliyoruz. Bu değişkenler bir grup yapılmış oluyor. Ardından alttaki union komutu ile bu u-tab formatına uygun Tab değişkeni yaratılıyor. Bu Tab değişkeni, programın kalan kısmında kullanılacak kopya değişken olmuş oluyor. Nihayet  int Val  = (int) Tab.fval; satırı ile de bu Tab değişkeni altındaki fval alt değişkeninin değeri okunup Val adlı yeni yaratılan değişkene aktarılıyor.

cevap için çok teşekkür ederim şimdi uygulamaya çalışacağım.