ben sana devreyi 628 de tasarladım sen istiyosan sadece kodların basındaki 628 i 877 yapabilrsin tabi kodlardada tx - rx kısmını uygun pini ayarlamalısın kodlar ccs c de yazılmıstır. a noktasını yanlız bir max232 li devreye girmen lazım nette ararsan cok rahat bulursun. burada pin b2 pc ye veri yollamak için kullanılır sen bu ucu kullanmayacan pin b1 ise pc den veri alabilmek için kullanılır. umarım yardımı olur
#include <16f628A.h>
#use delay(CLOCK=4000000)
#use fast_io(a)
#use fast_io(b)
#fuses XT,NOPUT,NOPROTECT,NOBROWNOUT,NOLVP,NOWDT
#use rs232 (baud=9600, xmit=PIN_B2, RCV=PIN_B1, parity=N, stop=1)
int temp=0;
#INT_RDA
void seri_kesme()
{ disable_interrupts(INT_RDA);
temp=getc();
}
void main()
{ set_tris_b(0x02);
set_tris_a(0x00);
output_b(0x00);
output_a(0x00);
enable_interrupts(GLOBAL);
while(true)
{ enable_interrupts(int_rda);
if(temp=='S')
{ temp=0X00;
output_bit(PIN_A3,1);
output_bit(PIN_A2,0);
output_bit(PIN_A1,0);
output_bit(PIN_A0,0);
}
if(temp=='A')
{ temp=0X00;
output_bit(PIN_A2,1);
output_bit(PIN_A3,0);
output_bit(PIN_A1,0);
output_bit(PIN_A0,0);
}
if(temp=='E')
{ temp=0X00;
output_bit(PIN_A1,1);
output_bit(PIN_A2,0);
output_bit(PIN_A3,0);
output_bit(PIN_A0,0);
}
if(temp=='D')
{ temp=0X00;
output_bit(PIN_A0,1);
output_bit(PIN_A2,0);
output_bit(PIN_A1,0);
output_bit(PIN_A3,0);
}
}
}


LinkBack URL
About LinkBacks

Alıntı ile Cevapla


