• Sábado 4 de Mayo de 2024, 12:59

Autor Tema:  Comprobar Envío Serial  (Leído 1841 veces)

andreçao

  • Nuevo Miembro
  • *
  • Mensajes: 22
    • Ver Perfil
Comprobar Envío Serial
« en: Miércoles 28 de Marzo de 2007, 00:24 »
0
Hola, qué tal?

Estoy comunicando via serie un pc con pic (16f876a). Mi intención era que cuando el pc envíe un carácter como por ejemplo una "a", el microcontrolador ejecute una acción.
¿Qué es lo que hay que hacer para que el pic sepa que le ha llegado una "a"?
A lo mejor con algún tipo de comparación....
También me gustaría saber si hay que hacer algún tratamiento a la información llegada por el puerto serie, me refiero a que si hay que hacer algún tipo de conversión o algo así para que el microcontrolador pueda entender lo que le llega por parte del pc.

Les agradezco todo tipo de aportación. Muchas gracias.

Toph

  • Moderador
  • ******
  • Mensajes: 420
  • Nacionalidad: sv
    • Ver Perfil
    • http://www.electronicayotros.blogspot.com/
Re: Comprobar Envío Serial
« Respuesta #1 en: Miércoles 28 de Marzo de 2007, 01:21 »
0
Cita de: "andreçao"
Hola, qué tal?

Estoy comunicando via serie un pc con pic (16f876a). Mi intención era que cuando el pc envíe un carácter como por ejemplo una "a", el microcontrolador ejecute una acción.
¿Qué es lo que hay que hacer para que el pic sepa que le ha llegado una "a"?
A lo mejor con algún tipo de comparación....
el puerto serie envia y recibe los caracteres en ASCII, es decir si envias una "a" realmente estas enviando el hexadecimal 61 es esto lo que le llegara al pic.
entonces para que el pic reconozca que es una "a" exactamente debes hacer una comparacion, hay varias formas de hacerlo una seria (la que recomiendan los libros):

Código: Text
  1. movlw 0x61;61="a"
  2. bcf STATUS,2;limpia la bandera Z
  3. xorwf NUM,W;hace la funcion xor entre num(que tendria el caracter recibido y w que tiene 0x61(a)
  4. btfss STATUS,2; si eran iguales el xor da 0 por eso se explora si se puso en 1 la bandera Z, si es asi salta a goto IGUAL
  5. goto NOIGUAL;si eran diferentes el xor da diferente de cero la bandera Z no se pone a 1 el programa se va a goto NOIGUAL
  6. goto IGUAL
  7.  
       
Cita de: "andreçao"
También me gustaría saber si hay que hacer algún tratamiento a la información llegada por el puerto serie, me refiero a que si hay que hacer algún tipo de conversión o algo así para que el microcontrolador pueda entender lo que le llega por parte del pc.

Pues como te digo la informacion llega en asccii, si mandas numeros ejemplo 123
recibiras 313233 (su respectivo en ascii), entonces depende de tu aplicacion el hacer una conversion.
Por favor leer esto antes de postear. Gracias
NO alimenten al TROLL y morirá
¿Querés ayudar?, pues doná comida gratis con un simple clic aqui ,sin trucos
photobucket , Google , wine y cutepdf Rock!!!


programacion,c,c++,
Microcontroladores,java,linux,videojuegos,
,.NET,asm,codigo
por favor este 2012 que sea

andreçao

  • Nuevo Miembro
  • *
  • Mensajes: 22
    • Ver Perfil
Re: Comprobar Envío Serial
« Respuesta #2 en: Miércoles 28 de Marzo de 2007, 13:26 »
0
Muchas gracias Tania_D. Realmente me  ha servido bastante.

Un saludo.

jpaler

  • Miembro MUY activo
  • ***
  • Mensajes: 479
    • Ver Perfil
Re: Comprobar Envío Serial
« Respuesta #3 en: Miércoles 28 de Marzo de 2007, 17:08 »
0
Bueno... la marea mas facil de comprobar si le ha llegado un dato
al pic desde el puerto serial del pc, es q el pic envie nuevamente
ese mismo caracter q le ha llegado al pc....

Es decir, cuando el pc se lo envia al pic, este lo toma y se lo
envia nuevamente al pc... y si estas usando el HyperTerminal
de Windows, entoces te debe aparecer todo lo q le q le envies
desde el pic al pc...