Rf haberleşme hakkında yardım.

ozay34

Üye
Katılım
22 Ara 2010
Mesajlar
179
Puanları
6
Yaş
41
Arkadaşlar aşağıda kodları yazılı programı başarılı bir şekilde derliyorum.isiste çalışıyor.board üzerine kurduğumda LCD de yazıları görüyorum fakat butonlar aktif değil.butona bastığım halde değişkenler farklı zamanlarda farklı değerleri kafasına göre yazıyor.yardımcı olursanız sevinirim.
Verici kod;
#include <16f877A.h>
#fuses XT, NOPROTECT, NOWDT, PUT
#byte portc=5
#byte portb=6
#byte portd=6
#use delay(clock=4000000)
#use rs232(baud=1200, xmit=PIN_C6, rcv=PIN_C7, parity=N, stop=1)
#use fast_io(b)
#use fast_io(c)
#use fast_io(d)
void main(){
set_tris_b(0xff);
set_tris_d(0xff);
set_tris_c(0x00);
portc=0;

while(1){
if(input(pin_b0))
{
while(input(pin_b0));
putc(0b01010101);
putc('X');
putc('A');
delay_ms(50);
}
if(input(pin_b1))
{
while(input(pin_b1));
putc(0b01010101);
putc('X');
putc('B');
}
if(input(pin_b2))
{
while(input(pin_b2));
putc(0b01010101);
putc('X');
putc('C');
}
if(input(pin_b3))
{
while(input(pin_b3));
putc(0b01010101);
putc('X');
putc('D');
}
if(input(pin_b4))
{
while(input(pin_b4));
putc(0b01010101);
putc('X');
putc('E');
}
if(input(pin_b5))
{
while(input(pin_b5));
putc(0b01010101);
putc('X');
putc('F');
}
if(input(pin_b6))
{
while(input(pin_b6));
putc(0b01010101);
putc('X');
putc('G');
}
set_tris_d(0xFF);


if(input(pin_d0))
{
while(input(pin_d0));
putc(0b01010101);
putc('X');
putc('H');
}
if(input(pin_d1))
{
while(input(pin_d1));
putc(0b01010101);
putc('X');
putc('I');
}
if(input(pin_d2))
{
while(input(pin_d2));
putc(0b01010101);
putc('X');
putc('J');
}
if(input(pin_d3))
{
while(input(pin_d3));
putc(0b01010101);
putc('X');
putc('K');
}
if(input(pin_d4))
{
while(input(pin_d4));
putc(0b01010101);
putc('X');
putc('L');
}
if(input(pin_d5))
{
while(input(pin_d5));
putc(0b01010101);
putc('X');
putc('M');
}
}
}
Alıcı;

#include <16f877A.h>
#fuses XT, NOWDT
#byte portc=5
#byte portb=6
#byte portd=6
#use delay(clock=4000000)
#use rs232(baud=1200, xmit=PIN_C6, rcv=PIN_C7, parity=N, stop=1)
#use fast_io(d)
#define LCD_ENABLE_PIN PIN_D0 //LCD E pini RD0 de
#define LCD_RS_PIN PIN_D1 //LCD RS pini RD1 da
#define LCD_RW_PIN PIN_D2 //LCD RW pini RD2 de
#define LCD_DATA4 PIN_D4 //LCD data pinleri
#define LCD_DATA5 PIN_D5 //..
#define LCD_DATA6 PIN_D6 //..
#define LCD_DATA7 PIN_D7 //..
#define use_portd_lcd TRUE
#include <lcd.c>
char klavye[80];
#int_rda

char yazilan[]="1";
char yazilan1[]="2";
char yazilan2[]="3";
char alinan;
char data;
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);
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);
set_tris_d(0x00);
lcd_init(); //LCD hazırlanıyor


while(true)
{
enable_interrupts(int_rda);
alinan=getc();
if(alinan=='X')
{
data=getc();
if(data=='A')
{
lcd_send_byte(0,0x01);
printf(lcd_putc,"okul\nsınıf");
}
else if(data=='B')
{
printf(lcd_putc,"\f%s",yazilan);//değişken yazdırdık
printf(lcd_putc,"\nDOLU");//(\f temizler \n alt satıra geçer)
}
else if(data=='C')
{
printf(lcd_putc,"\f%s",yazilan);//değişken yazdırdık
printf(lcd_putc,"\nBOS");//(\f temizler \n alt satıra geçer)
}
else if(data=='D')
{
printf(lcd_putc,"\f%s",yazilan1);//değişken yazdırdık
printf(lcd_putc,"\nDOLU");//(\f temizler \n alt satıra geçer)
}
else if(data=='E')
{
printf(lcd_putc,"\f%s",yazilan1);//değişken yazdırdık
printf(lcd_putc,"\nBOS");//(\f temizler \n alt satıra geçer)
}
else if(data=='F')
{
printf(lcd_putc,"\f%s",yazilan2);//değişken yazdırdık
printf(lcd_putc,"\nDOLU");//(\f temizler \n alt satıra geçer)
}
else if(data=='G')
{
printf(lcd_putc,"\f%s",yazilan2);//değişken yazdırdık
printf(lcd_putc,"\nBOS");//(\f temizler \n alt satıra geçer)
}

else if(data=='H')
{
printf(lcd_putc,"\f%s",yazilan);//değişken yazdırdık
printf(lcd_putc,"\nSIPARIS YENI");//(\f temizler \n alt satıra geçer)
}
else if(data=='I')
{
printf(lcd_putc,"\f%s",yazilan);//değişken yazdırdık
printf(lcd_putc,"\nHESAP");//(\f temizler \n alt satıra geçer)
}
else if(data=='J')
{
printf(lcd_putc,"\f%s",yazilan1);//değişken yazdırdık
printf(lcd_putc,"\nSIPARIS YENI");//(\f temizler \n alt satıra geçer)
}
else if(data=='K')
{
printf(lcd_putc,"\f%s",yazilan1);//değişken yazdırdık
printf(lcd_putc,"\nHESAP");//(\f temizler \n alt satıra geçer)
}
else if(data=='L')
{
printf(lcd_putc,"\f%s",yazilan2);//değişken yazdırdık
printf(lcd_putc,"\nSIPARIS YENI");//(\f temizler \n alt satıra geçer)
}
else if(data=='M')
{
printf(lcd_putc,"\f%s",yazilan2);//değişken yazdırdık
printf(lcd_putc,"\nHESAP");//(\f temizler \n alt satıra geçer)
}

}
}

}
 

Forum istatistikleri

Konular
128,098
Mesajlar
914,955
Kullanıcılar
449,798
Son üye
jsons

Yeni konular

Çevrimiçi üyeler

Geri
Üst