TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: Medusa en 30 de Noviembre de 2010, 20:56:22

Título: Duda en como enviar codigo HEX al Hyperterminal
Publicado por: Medusa en 30 de Noviembre de 2010, 20:56:22
Hola, tengo la siguiente duda:

Necesito enviar un bloque de codigos HEX al hyperterminal y que este me muestre el codigo equivalente en ASCII, estoy usando el siguiente codigo, pero el hyperteminal me muestra los valores HEX pero convertidos al ASCII


Código: [Seleccionar]
int16 k;

for (k = 0; k<538; k++)
printf("%lx",read_ext_eeprom(0,k,));

Si envio el 0x32 el hyperterminal me mustra 32 y si envio el 0x43 el hyperterminal me muestra 43 lo que yo necesito es que me muestre el codigo equivalente si envio el 0x32 me muestre el "2" y si envio 0x43 me muestre "C" y asi sucesivamente.

Mi pregunta es: Necesto convertir los valores HEX a ASCII antes de enviarlos o el CCS tiene algun comando que me permita enviar directemente un codigo HEX y el hiperterminal lo reciba en su equivalente ASCII ?
Título: Re: Duda en como enviar codigo HEX al Hyperterminal
Publicado por: jhozate en 30 de Noviembre de 2010, 22:26:26
dentro de la ayuda de ccs puedes encontrar lo relacionado con el Printf.
Título: Re: Duda en como enviar codigo HEX al Hyperterminal
Publicado por: Medusa en 01 de Diciembre de 2010, 01:08:34
Antes de publicar mi consulta ya habia intentado darle formato segun la ayuda del CCS pero no consigo que en el hiperterminal se muestre el caracter equivalente de un dato HEX!!!

EStos son los formatos con los cuales he probado!!
Código: [Seleccionar]
%03u
%u
%2u
%5
%d
%x
%X
%4X
%3.1w
Título: Re: Duda en como enviar codigo HEX al Hyperterminal
Publicado por: XAVICOROSS en 01 de Diciembre de 2010, 02:12:17
Deseo ayudarte, mi pregunta es, qué terminal serial usas, acaso el hyperterminal de windows?, el siow de ccs?, o cuál?
Título: Re: Duda en como enviar codigo HEX al Hyperterminal
Publicado por: bmfranky en 01 de Diciembre de 2010, 10:08:17
Hola Medusa, si lo que quieres es enviar al Hiperterminal , el valor ASCII, de un Hex(char), tendras que usar "%c", porque lo que quieres añadir es el valor ASCII del Char, prueba y luego me comentas como te fue.

PD. esto,
Citar
printf("%lx",read_ext_eeprom(0,k,));

Lo que hace es enviar al hiperterminal el valor en Exadecimal de la variable leida.

Espero haberte ayudado.  :mrgreen:
Título: Re: Duda en como enviar codigo HEX al Hyperterminal
Publicado por: Medusa en 01 de Diciembre de 2010, 14:03:15
Hola bmfranky,

Tenias razon
Citar
tendras que usar "%c"
  :-/  :-/ gracias por la ayuda