<div>Hola,</div>
<div> </div>
<div>Si alguien me pudiera echar una mano con esto lo agradeceria mucho...le he dado mil vueltas y no se ni siquiera si se podría hacer...</div>
<div>Les cuento mi problema: </div>
<div>-Estoy leyendo datos del puerto serie: </div>
<div> </div>
<div>SERIAL_PORT_EVENT(HANDLE * hPort)<br>{<br> char c[10];<br> </div>
<div>Read_Port(*hPort,c,8);<br> <br> printf("[%d]=%s\n",numero,c);<br> numero++;<br>}</div>
<div>
<p>-Al llamar a Read_Port se ejecuta lo siguiente:</p>
<p>Read_Port(HANDLE fd,char *Data,int SizeData)<br> {<br> long n;</p>
<p> ReadFile (fd, // Port handle<br> Data, // Pointer to the data to write <br> SizeData, // Number of bytes to write<br> &n, // Pointer to the number of bytes read
<br> NULL); // Must be NULL for Windows CE<br> printf("bytes leidos %d\n",n);<br> <br> return n;<br> }</p>
<p>- El problema está en que los datos que me llegan los veo siempre como char, y necesito acceder a ellos para saber su valor en entero o hexadecimal.</p>
<p>La comunicacion sé que está bien, porque veo lo mismo desde el hyperterminal que ejecutando mi programa, pero eso, veo caracteres tipo char y necesito saber su valor entero, he probado la conversion directamente al imprimir pero lo que obtengo no equivale a lo mismo....
</p>
<p>Si alguien tuviera idea de como se podria hacer, de verdad que lo agradezco.</p>
<p>Muchisimas gracias por adelantado</p>
<p>Saludos!!</p></div>