centiane
Estacionarios
Reputacion: +0/-0
Desconectado
Mensajes: 52
|
|
« Respuesta #18 : 18 de Febrero de 2013, 23:49:39 » |
|
Ha dia de hoy he conseguido grandes avances, entre ellos he podido analizar el protocolo de transmision del transmisor y sus mas escondidos secretos,jejeje. Para aquellos que deseen conoceros dare una breve descripcion de los mismos. El corazon del sitema es un microcolntrolador de silabs en concreto el C8051F340 con 64Kb de Flash y 4Kb de RAM , no es gran cosa pero calidad precio es casi de lo mejorcito. El nucleo de transmision esta organizado alreddedor del conocido nRF24L01 , para los que no sepais de que se trata comento un poco. Este IC se trata de un transmisor que trabaja en 2,4 Ghz, dispone de 128 canales y es capaz de transmitir-recibir hasta 2Mbps. En el caso de esta emisora transmite a 1Mbps. Detallo un poco el protocolo y los avances que he encontrado. Para enpezar no es compatible con nada que conozca, pues TURNIGY y compatibles no montan el nRF24L01, si no que montan otro integrado de caractericticas similares pero un poco inferior, el A7105. Al no disponer de TURNNIGY ni por el estilo no he podido analizar mas a fondo, pero a ver que me encuentro por ahi. A lo que voy: El protocolo se basa en las siguientes caractericticas. El ID del equipo transmisor se compoe de 3 bytes,. La velocidad de transmision esta fijada en 1 Mbps. Los canales que recorre continuamente estan comprendidos entre el 02 y 81 (un total de 80 CH). En la trama enviada constituida por 17 bytes envia 7Canales analogicos por 2 bytes cada uno 14 bytes (XX), 1 byte donde se almacena el indice del proximo canal al que saltara el transmisor, para que se sincronice el transmisor(TT) y dos bytes de cabecera(CC CC). Quedaria algo como esto.
CC CC TT XX XX XX XX XX XX XX XX XX XX XX XX XX XX
Aqui pongo la captura de una transmision completa con la inicializacion del nRF24L01.
uC--->nRF nRF--->uC
Nº CMD MOSI MISO Registro Descripcion 1 2A CC 66 33
ID PIPE0 2 31 11
Numero de bytes RX para el buffer PIPE0 3 21 00
Auto ACK disable 4 26 24
BitRate 2Mbps, IRQ RX completado 5 20 3F
Modo recepcion, CRC de 2 bytes 6 03 FF 0E 03 Numero de bytes del PIPE0 de 5 bytes 7 23 01
PIPE0 configurado para 3 bytes (CC 66 33) 8 2A CC 66 33
ID PIPE0 9 21 00
Auto ACK disable 10 26 24
BitRate 2Mbps, IRQ RX completado 11 20 3F
Modo recepcion, CRC de 2 bytes 12 03 FF 0E 01 Numero de bytes del PIPE0 de 3 bytes 13 0A FF 0E CC 66 33 Lee ID PIPE0 14 11 FF 0E 11 Lee registro de ACK 15 01 FF 0E 00 Lee registro 11 16 06 FF 0E 24 Lee registro 06 17 00 3F 0E 3F Lee registro 00 18 23 01
PIPE0 configurado para 3 bytes (CC 66 33) 19 2A CC 66 33
ID PIPE0 20 31 11
Numero de bytes RX para el buffer PIPE0 21 21 00
Auto ACK disable 22 26 24
BitRate 2Mbps, IRQ RX completado 23 20 3F
Modo recepcion, CRC de 2 bytes 24 25 23
Canal de recepcion 23 25 23 01
PIPE0 configurado para 3 bytes (CC 66 33) 26 2A CC 66 33
ID PIPE0 27 31 11
Numero de bytes RX para el buffer PIPE0 28 21 00
Auto ACK disable 29 26 24
BitRate 2Mbps, IRQ RX completado 30 20 3F
Modo recepcion, CRC de 2 bytes 31 25 43
Canal de recepcion 43 Tambien tengo decodificada la trama de comfiguracion del transmisor, pero le faltan algunos retoques, la subire en cuanto la tenga lista.
Un saludo Centiane.
P.D. Si disponeis de alguna 9X frita, estoy buscando algo asi, no dudeis en mandarme un MP.
|