Rf haberleşme hakkında yardım.

  • Konbuyu başlatan Konbuyu başlatan ozay34
  • Başlangıç tarihi Başlangıç tarihi

ozay34

Üye
Katılım
22 Ara 2010
Mesajlar
179
Puanları
6
Yaş
44
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
133,383
Mesajlar
971,016
Kullanıcılar
459,236
Son üye
denizkapikiran

Yeni konular

Çevrimiçi üyeler

Geri
Üst