#include <16F84A.h>
#fuses HS,NOWDT,NOPROTECT
#use delay(clock=4000000)
#include <stdio.h>
#use rs232(baud=9600, xmit=PIN_A4,rcv=PIN_A3,stream=COM2,BITS=8,PARITY=N,FORCE_SW)
//#use rs232(baud=9600,stream=COM2,BITS=8,PARITY=N)
#use fast_io(A)
#use fast_io(B)
#byte porta=0x05
#byte trisa=0x85
#byte portb=0x06
#byte trisb=0x86
#byte OptionRegister=0x81
#bit RBPU=0x81.7
#bit TOCS=0x81.5
void main()
{
char letra;
char *letras[2];
output_low(pin_B0);
output_low(pin_B1);
output_low(pin_B2);
output_low(pin_B3);
while(1){
//RBPU=1;
//TOCS=0 ;//no usa el pin A4 como clk
trisb=0x00;
//trisa=0b00010000;
if(kbhit()){
letras[1]='\0';
delay_ms(500);
}
switch(letras[0]){
case 'a': output_high(pin_B0);delay_ms(500);break;
case 'b': output_high(pin_B1);delay_ms(500);break;
case 'l': output_high(pin_B2);delay_ms(500);break;
case 't': output_high(pin_B3);delay_ms(500);break;
case ' ':output_low(pin_B0);
output_low(pin_B1);
output_low(pin_B2);
output_low(pin_B3);break; // deberia hacer una variable donde guardase el estado de los pines y cambiarlo
}
}//while(1)
}//main