Picproje Elektronik Sitesi

DERLEYİCİLER => PIC C => Konuyu başlatan: alperyazir - 16 Nisan 2012, 01:21:33

Başlık: seri iletişim sorunu
Gönderen: alperyazir - 16 Nisan 2012, 01:21:33
üstadlar 2 pic ile iletişim yaptım ama bir tane merkezi picim olsun ve ayrı 2 tane pici bunla haberleştiriyim istiyorum kodlarımda sıkıntı yok gibi ama yanlış çalışıyor bi yardım ederseniz sevinirim.
ısıs şemam ; http://b1204.hizliresim.com/w/j/4hv30.png (http://b1204.hizliresim.com/w/j/4hv30.png)

kodlarımda şöle;
*****verici****
#include "C:\Users\Windows 7 ultimate\Desktop\verici\veric.h"

int a,b;

void main()
{

   setup_adc_ports(NO_ANALOGS);
   setup_adc(ADC_OFF);
   setup_psp(PSP_DISABLED);
   setup_spi(SPI_SS_DISABLED);
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
   setup_timer_1(T1_DISABLED);
   setup_timer_2(T2_DISABLED,0,1);

   set_tris_b(0x03);
   output_b(0x00);
   while(1){
   a=input(pin_b0);
   b=input(pin_b1);
   if(a==1) putc('A');
   if(a==0) putc('B');
   if(b==1) putc('X');
   if(b==0) putc('Y');
   }

}




******alıcı1*****(sağ alltaki pic)
#include "C:\Users\Windows 7 ultimate\Desktop\alıcı1\alıc.h"

int al;
void main()
{

   setup_adc_ports(NO_ANALOGS);
   setup_adc(ADC_OFF);
   setup_psp(PSP_DISABLED);
   setup_spi(SPI_SS_DISABLED);
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
   setup_timer_1(T1_DISABLED);
   setup_timer_2(T2_DISABLED,0,1);

   set_tris_b(0x00);
   output_b(0x00);
   while(1){
   if(getch()==)
   al=getch();
   if(al=='A') output_high(pin_b0);
   if(al=='B') output_low(pin_b0);
   }
}


******alıcı2**** (sol allttaki pic)
#include "C:\Users\Windows 7 ultimate\Desktop\alıcı 2\alıcı2.h"

int al;
void main()
{

   setup_adc_ports(NO_ANALOGS);
   setup_adc(ADC_OFF);
   setup_psp(PSP_DISABLED);
   setup_spi(SPI_SS_DISABLED);
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
   setup_timer_1(T1_DISABLED);
   setup_timer_2(T2_DISABLED,0,1);

  set_tris_b(0x00);
   output_b(0x00);
   while(1){
   al=getc();
   if(al=='X') output_high(pin_b1);
   if(al=='Y') output_low(pin_b1);
   }
}
Başlık: Ynt: seri iletişim sorunu
Gönderen: serhat1990 - 16 Nisan 2012, 14:51:44
picwizard kullanarak yapıyorsunuz ayarlamaları göremiyoruz sonra main'de hata bakmaya çalışıyoruz ayarlarının oldugu fonksiyonuda koyman gerekmiyormu ? Ayrıca yanlışlık nerede ? onuda açıklarsan iyi olur ... Sorunun ne oldugunu yazmamıssın.
Başlık: Ynt: seri iletişim sorunu
Gönderen: vitruvius - 16 Nisan 2012, 14:59:43
Ek olarak led; sol alttaki pic'te pinb0'a, sağ alttaki pic'te pinb1'e bağlı. Bir terslik olmuş.
Başlık: Ynt: seri iletişim sorunu
Gönderen: jackal183 - 16 Nisan 2012, 15:33:14
verici.h, alıcı1.h ve alıcı2.h kodlarını da koyarsan daha iyi yardımcı olabiliriz, ayrıca da sorun tam olarak ne, bunu çözebildin mi?
Başlık: Ynt: seri iletişim sorunu
Gönderen: arslan74 - 16 Nisan 2012, 20:41:26
Öncelik senin sorunun kod gelmeden daha donanımda başlıyor. RS232 peer to peer haberleşme için tasarlanmıştır. Bir verici iki tane alıcı bu şekilde haberleştiremessin, Sorun olur. Tek gönderici birden fazla alıcıda sorun olmaz. Birden fazla Gönderici Tek alıcı olunca çalışmaz. Yani master slavelere gönderebilir ama Slavelerden bilgi okuyamaz.

Araya Rs422 bullanabilirsen çalıştırabilirsin.

Kolay gelsin.