#include <16F877.h>
#include <string.h>
#FUSES NOWDT,NOPUT,NOPROTECT,BROWNOUT,NOLVP
#use delay(clock=4000000)
#use rs232(baud=300,parity=N,rcv = PIN_C7, XMIT = PIN_C6, bits=8, BRGH1OK )
#Byte PORTD = 8
#Byte PORTB = 8
#Byte PORTC = 8
#Byte PORTA = 3
char m1;
char m2;
#Bit e1 = PortA.0
#Bit e2 = PORTA.1
#Bit e3 = PortA.2
#Bit s1 = PortD.0
#Bit s2 = PORTD.1
#Bit s3 = PortD.2
#Bit s4 = PortD.3
#Bit s5 = PortD.4
#Bit s6 = PortD.5
#Bit s7 = PortD.6
#Bit s8 = PortD.7
void ilk();
void main()
{
ilk();
basla:
switch(true)
{
case e1==1:
if(s1==1) putc('a'); delay_ms(50);
if(s2==1) putc('b'); delay_ms(50);
if(s3==1) putc('c'); delay_ms(50);
if(s4==1) putc('d'); delay_ms(50);
if(s5==1) putc('e'); delay_ms(50);
if(s6==1) putc('f'); delay_ms(50);
if(s7==1) putc('g'); delay_ms(50);
if(s8==1) putc('h'); delay_ms(50);
break;
case e2==1:
if(s1==1) putc('t'); delay_ms(50);
if(s2==1) putc('b'); delay_ms(50);
if(s3==1) putc('c'); delay_ms(50);
if(s4==1) putc('d'); delay_ms(50);
if(s5==1) putc('e'); delay_ms(50);
if(s6==1) putc('f'); delay_ms(50);
if(s7==1) putc('g'); delay_ms(50);
if(s8==1) putc('h'); delay_ms(50);
break;
}
goto basla;
}
void ilk(){
Set_tris_B(0B00110010);
Set_Tris_D(0xff);
Set_Tris_C(0xff);
Set_Tris_A(0xff);
clear_interrupt(INT_RDA);
clear_interrupt(INT_EXT);
Disable_interrupts(GLOBAL);
PortD = 0b11111111;
PORTB = 0b11110010;
PORTC = 0b00000010;
setup_timer_0(RTCC_INTERNAL);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_uart(True);
}