Comunicación por Radiofrecuencia entre PICs y nRF24L01

#41
Cuando intento igualar el retorno 3 (ret3), con el comando de encendido del modulo no me lo permite y me dice "A numeric expression must appear here", quisiera saber por qué pasa esto si en la interrupción estoy haciendo lo mismo con el comando RF_RECEIVE()
Porque RF_ON no retorna nada, es una subrutina.
Tan sólo puedes llamarla:
RF_ON();

void RF_ON()
{
}
Y RF_RECEIVE() si es una función que puede retornar un valor.
int RF_RECEIVE()
{
}

Nota que las rutinas que pueden devolver valores, tienen al inicio el tipo que deben retornar.
Int o Int8 en PIC C de CCS = 8 Bits. (1 Byte)
Void = Sin retorno. (O retorno Nulo)

Cuando las rutinas no contienen nada entre los paréntesis, también se entiende como Void.
En éste caso; rutina sin retorno y sin parámetros.
void mi_rutina (void)
{
}

Rutina con retorno y con parámetros:
int16 mi_funcion (int8 param1, int8 param2)
{
int16 x = param1 + param2;
return (x);
}
 
Última edición:
#42
buenas tardes luvhines, e visto todos los comentarios que se han dicho es te foro con respecto al modulo nfr NRF24L01 y su funcionamiento es muy bueno, pero tengo una pregunta es posible enviar una cadena de texto "String" o un "hola mundo ", que el maestro envíe el hola mundo y que el esclavo lo reciba y cuando lo reciba enviarlo por serial para verlo en pc.
muchas gracias podría aclarar me esa duda.
 
#43
Puedes hacerlo enviando los caracteres uno a uno en hexadecimal. El receptor, o esclavo, lo va almacenando en la EEPROM, y cuando se haya finalizado la transmisión lo envía a la PC.
 
#44
Hola.

ante todo, muchas gracias por todo lo compartido.

en los primeros posts hay algunas orientaciones sobre la distancias. Yo aún no recibí mis módulos pero ya quiero empezar a armar los PCB.

Me gustaría saber en que posición de los módulos se tiene la mejor recepción. paralelos o perpendiculares al piso?

Gracias por los comentarios que puedan compartir.

Saluds.
 
#45
Hola.

ante todo, muchas gracias por todo lo compartido.

en los primeros posts hay algunas orientaciones sobre la distancias. Yo aún no recibí mis módulos pero ya quiero empezar a armar los PCB.

Me gustaría saber en que posición de los módulos se tiene la mejor recepción. paralelos o perpendiculares al piso?

Gracias por los comentarios que puedan compartir.

Saluds.
Hola, a mi experiencia la posición del modulo no es algo que importe realmente mi amigo.



buenas tardes luvhines, e visto todos los comentarios que se han dicho es te foro con respecto al modulo nfr NRF24L01 y su funcionamiento es muy bueno, pero tengo una pregunta es posible enviar una cadena de texto "String" o un "hola mundo ", que el maestro envíe el hola mundo y que el esclavo lo reciba y cuando lo reciba enviarlo por serial para verlo en pc.
muchas gracias podría aclarar me esa duda.
como dice el compañero más abajo, puedes ver que el modulo envía cada vez un paquete de 8bits que en en el emisor es el estado de un puerto, y el receptor refleja el estado de ese puerto, pero no deja de ser un simple paquete de 8bits, bien puedes usar la tabla ascii para tu propósito, en lugar del estado de un puerto envías un carácter que por naturaleza es un hexadesimal y lo recibes en el receptor.
 
Última edición:
#46
Hola a todos. Estuve probando el ejemplo expuesto aquí y no me funciona. Grabe los 2 pics sin modificarle nada y estoy alimentado mis pics con un regulador (mas o menos 4v) y los nrf con unas bases que traen regulador incluido. Cuando lo pruebo siempre obtengo que el ack no fue recibido..... ayuda D@rkbytes por favor!!!!!!!
 
#48
D@rkbytes
Es tu ejemplo con el pic 16f690 sin cambio alguno. Lo que hace es que el transmisor me marca que no recibe ack y el receptor no hace nada. Probé las antenas con módulos usb y si funcionan. Lo único que no he probado es alimentar todo a 3.3 ya que los pics los tengo a 4v y las antenas con una base que incluyen regulador.

Mañana subo fotos, por cierto está en protoboard
 
Última edición:
#49
Ese proyecto está probado físicamente y funciona al 100%
Realiza todo tal cual y debe funcionar.
Principalmente, usa los reguladores de 3.3 V que usa el proyecto. (L78L33)
 
#51
Yo tuve un problema con los conectores que estás usando: no hacían buen contacto con los módulos.

Trata de fabricar un zócalo para los módulos, de manera que puedas conectarlos directamente al protoboard sin necesidad de cables.


Otro: trata de peinar tus cables, un poco de prolijidad te ayudará a detectar fallas.
 
#52
Sí. Por ese motivo diseñé los footprints para los módulos. Jamás me pasó por la mente conectarlos con cables.
También es muy importante la calidad del protoboard.
Yo he tirado varios que con el uso van presentando fallas, e incluso también he comprado algunos que desde nuevos se van directamente al bote de la basura.

El sistema que desarrollé con esos módulos sigue funcionando actualmente y no ha tenido problemas.
 
#56
Saludos a todos, utilice el código del post #30 ,para utilizarlo con PIC16F628A, pero el programa no me hace la copilación, ya que, me sale un error de librería en el Transmisión y el Receptor.
Los pines en ambos datasheet salen iguales solo cambie el include.

16F628A Tx.JPG 16F628A Rx.JPG 16F628A Tx.JPG 16F628A Rx.JPG
 
#57
Saludos a todos. Utilicé el código del post #30 para utilizarlo con un PIC16F628A, pero el programa no me hace la compilación, ya que me sale un error en la librería del Transmisor y el Receptor.
Los pines en ambos datasheet salen iguales solo cambie el include.
El PIC16F628A no tiene módulo SSP para poder usar SPI por hardware.
Por eso es que el compilador muestra el error "Undefided Identifier -- spi_write"
Usa SPI por software con: #USE SPI (options)
 
#58
Buenas tardes...

Me pueden ayudar como conseguir la librería del modulo NRF24L01 para Proteus, para poder simularlo. Muchas gracias.
Saludos
 
Última edición:

Arriba