fbpx

Expresate

Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:

Avisos
Vaciar todo

Pin WAKE del transceiver de Microchip para 802.15.4

16 Respuestas
4 Usuarios
0 Reactions
3,631 Visitas
beamspot
Respuestas: 1132
Topic starter
(@beamspot)
Noble Member
Registrado: hace 17 años

Hola:

Hace algún tiempo que tengo ganas de hacer algún módulo inalámbrico para las placas entrenadoras que hay en la wiki. Así que investigando encontré un modulillo muy interesante y económico de Microchip, de venta en Farnell.

Leyendo los datasheets de Microchip, estos días, así como las notas de aplicación, en ningún lado he encontrado para que sirve ni cómo se utiliza el pin de WAKE del MJ24J40 (o como se llame).

He deducido que un flanco ascendente puede generar una interrupción, pero no tengo donde agarrar. ¿Hace algo más que simplemente generar una interrupción en el micro? Si no lo utilizo, ¿que tengo que poner, un pull up o un pull down?

Por otro lado, aunque aún no me he metido a investigar cómo funcionarían los drivers de software (ya sé que hay librerías, pero quiero/necesito saber cómo funciona), ni los diferentes modos o estados en que puede estar según el estándar 802.15.4, ni cómo lo paso a dormir, ni cómo se cambia de estado (attached, tx, rx, sleep, power-down, etc).

Aunque haya librerías escritas, ¿que pasa si quiero usarlo con otro micro? ¿Que pasa si quiero usar mi propio protocolo? ¿Que cantidad de CPU necesita para tráfico intenso? ¿Que pasa si quiero hacer ciertas funciones extra que no están contempladas en el protocolo, pero que estoy seguro que se pueden hacer, aunque conlleve reescribir parte de los drivers? ¿Tengo que investigar entre las librerías y código fuente para conseguir una información que cualquier otro fabricante de transceivers me da en el datasheet (Atmel, Freescale, Texas Instruments - ChipCon)?

¿Alguien puede echarme una mano?

Gracias por vuestra colaboración y paciencia al aguantarme 😉

Responder
15 respuestas
beamspot
Respuestas: 1132
Topic starter
(@beamspot)
Noble Member
Registrado: hace 17 años

Hola otra vez:

Para aclarar las cosas, que siempre me expreso como un libro cerrado, el link del que he sacado los pdf's e informaciones varias es el siguiente:

http://www.microchip.com/wwwproducts/De ... e=en027752

Semejante módulo inalámbrico por menos de 10€ me hace la boca agua. Para cualquier robot puede significar recoger los datos más importantes en tiempo real desde nuestro PC, mientras el primero va haciendo lo que sea que esté progrmado para hacer...

¿Alguien se apunta?

Responder
fj_sanchez
Respuestas: 1083
(@fj_sanchez)
Ardero
Registrado: hace 19 años

Muy buenas, yo tengo 3 de esos módulos, concretamente el MRF24J40MA que se controla directamente por SPI y trae la antena integrada (por 8€ cada una). De momento solo he estado leyéndome la documentación de Microchip. Hay algunas cosas que no puedes hacer, pues hay bastantes cosas que van controladas por hardware, así que no te confíes porque no se puede hacer todo lo que quieras.

A ver si tengo tiempo y puedo probarlas entre dos micros. Aún no lo he hecho por la pega de que va a 3.3V y mis micros/placas van a 5. Ya tengo preparados un par de 18LF4680 para probar. Además me he pillado de maxim unos traductores bidireccionales (de hasta 4Mbps) para poder usarlas con micros de 5v.

Responder
beamspot
Respuestas: 1132
Topic starter
(@beamspot)
Noble Member
Registrado: hace 17 años

Gracias, FJ. ¿Puedes poner un link a estos traductores de maxim? Me irían de perlas, aunque lo más probable es que lo ponga todo a 3V3.

Como la mayoría de transceivers 802.15.4, buena parte del procesado del mesaje lo realiza el mismo integrado, como la discriminación del mensaje, el cálculo del CRC, y la posible respuesta de ACK en caso necesario. Pero eso es faena que se le quita al micro, y que no perjudica en nada a mis intenciones. Más bien, las favorecen, pues reducen la carga de la CPU, algo que para comunicaciones es importantísimo.

De hecho, para el ZigBee y redes un poco grandes, hacen falta micros bastante gordos, con mucha RAM, y a ser posible, con buenas capacidades de proceso, sobre todo, alimentados a 3V3. Lo habitual últimamente son ARM's, pues se ha demostrado que micros de 8 bits, incluso con buenos MIPS como son los AVR, se llegan a quedar cortos. Por no hablar de los Freescales, que con mucho morro han inchado su stack, para que uno necesite un micro muy sobredimensionado.

Por suerte está el 6lowPAN, que es más ligero, libre, y compatible con IPv6.

Responder
ranganok
Respuestas: 3875
(@ranganok)
Ardero
Registrado: hace 19 años

beamspot, hola

Supongo que se te ha pasado, en la página 121 del datasheet te explican cómo usar el pin WAKE (es para despertar el módulo de un SLEEP, aunque también se puede hacer vía comando).

La dirección es de entrada al MRF24J40 así que el flanco de subida lo tienes que generar tú (analógicamente o desde el micro).

S2

Ranganok Schahzaman

Responder
Página 1 / 4
Compartir: