Ver Mensaje Individual
  #3 (permalink)  
Antiguo 08/02/2010, 13:37
Avatar de ferny
ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 9 meses
Puntos: 55
Respuesta: PyS60, problema con timer y recepción de datos por BT

Hola

Hay una erratilla en el anterior post, se envían ráfagas de 14 bytes y no de 16 como puse en un principio, sólo como corrección.

Da igual el tamaño del buffer, lo máximo que probé es 256 bytes (sé que pueden ser más, pero ahí ya lo dejé), siempre llega un momento que deja de recibir, y ese momento es cuando hay menos de 256 bytes para "descargar". Puedo saber la cantidad de datos que hay porque se envían 14 bytes cada 2 segundos, con lo cual conozco cómo de "cargado" está el adaptador BT a RS232 en función del tiempo que pasa.

Por ejemplo: si hay cargados 4 mensajes, o sea 4 * 14 = 56 bytes, y descargo a razón de 16 bytes por lectura, obtengo 3 lecturas de 16 bytes, una de 8 bytes, y deja de recibir para siempre. Si descargo a razón de 256 bytes por lectura, obtendo una única lectura de 56 bytes y ya no vuelve a recibir más. Sin embargo esto no pasa cuando el tamaño de buffer es de 1 byte: si no hay datos, se queda a la espera, y cuando los hay los descarga (lo veo porque llega un momento que hace pausas de 2 segundos entre que muestra unos datos y los siguientes)

Ahora mismo estoy tratando de hacerlo con un thread, pues ya conseguí hacer que iniciara el thread metiendo todas las funciones de BT dentro, pero me está dando otros problemas por otro lado...

Sigo investigando

Gracias y un saludo
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.