Hola, estoy dandole vuelta a un problema, anoche casi ni duermo!!!!
el tema es que conecte un modulo Bluetooth por el puerto serie de un 16f883. en una tablet tengo una aplicacion en appinventor tratando de enviar un byte al micro y este en funcion del byte activa o apaga un led.
de apoco fui haciendo andar cada parte, hasta que llegó el momento final y no puedo resolverlo.
tengo todo configurado, el baudrate a 9600, interrupcion al recivir, y hasta dereccion de errores. cuando entra en la interrupcion por rcif lo primero que hago es preguntar por error de frame y de overrun, si hay error prendo un LED.
luego guardo el rcreg en una variable tipo char. acto seguido asigno esa variable a txreg, para hacer un echo. luego pongo if(rcv == 1) prender un led tambien puse if(rcv == ‘1‘) prender led. puse el osciloscopio en el rx y en el tx del micro.
cuando mando un 1 (con sendbyte) en el osciloscopio veo en un canal el codigo del 1 y en el canal correspondiente al tx veo que sale el mismo 1, con esto verifico que el baudrate esta bien y que en rcv tengo lo que me manda el bt. probe en vez de mandar un 1 mandar un 2 y en el osciloscopio veo todo bien....
el problema es que esos if no funcionan, es decir no entra nunca, es como que rcv == 1 o rcv == ‘1‘ estubiese mal. probe de poner rcv != 0 y ahi si entra al if y prende el LED.
disculpen que no ponga codigo, pero no estoy en casa ahora.
la gran pregunta es como devo declarar la variable para almacenar lo que recivo y como devo comparar contra una constante para saber lo que me envió la tablet....
es lo uncio que me queda com fuente de error para que no funcione... encima no tengo nada para hacer debug!!!! por cierto, en mplab x hay algún programador clon que sirva para hacer debug?
Saludos y gracias!!!