Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Manual Bzi Rf2gh4
Manual Bzi Rf2gh4
BIZINTEK INNOVAS.L.
BIZINTEK INNOVAS.L.
ndice
ndice ................................................................................................................................ 3
1. Introduccin:................................................................................................................. 4
2. Especificaciones tcnicas ............................................................................................. 4
3. Descripcin general ...................................................................................................... 5
4. Librera para el mdulo BZI-RF2GH4 en ensamblador............................................... 6
Variables....................................................................................................................... 6
Funciones...................................................................................................................... 7
5. Ejemplos en ensamblador........................................................................................... 12
6. Librera para el mdulo BZI-RF2GH4 en C para CCS ............................................. 14
Variables..................................................................................................................... 14
Funciones.................................................................................................................... 14
7. Ejemplos en C para el compilador CCS ..................................................................... 19
8. Prcticas...................................................................................................................... 22
Programa 1.................................................................................................................. 22
Programa 2.................................................................................................................. 22
9. Regulador 3.3v (LE33CZ).......................................................................................... 22
BIZINTEK INNOVAS.L.
1. Introduccin:
Este manual pretende ser una gua rpida para quienes se disponen a abordar una
aplicacin haciendo uso del mdulo BZI-RF2GH4. En ella se irn exponiendo las
caractersticas principales del dispositivo y se dar una orientacin acompaada de
ejemplos prcticos para una mejor comprensin.
2. Especificaciones tcnicas
Parmetro
Tensin mnima de alimentacin
Tensin mxima de alimentacin
Potencia mxima de salida
Velocidad mxima de transmisin
Corriente en modo transmisin @ 0dbm potencia de salida
Corriente en modo recepcin @ 2000kbps
Corriente en modo Power Down
Frecuencia mxima del bus SPI
Rango de temperatura
Valor
1.9
3.6
0
2000
11.3
12.3
900
8
-40 a +85
Pines
Vcc
Vss
CE
CSN
SCK
SDI
SDO
IRQ
N
1
2
3
4
5
6
7
8
Descripcin
Tensin de alimentacin del mdulo
GND
Chip Enable
Chip Select del SPI (Negado)
Reloj del bus SPI
Entrada de datos del bus SPI
Salida de datos del bus SPI
Salida interrupcin (negado)
Tabla 2. Pinout del mdulo BZI-RF2GH4
Unidad
V
V
dBm
Kbps
mA
mA
nA
Mhz
C
BIZINTEK INNOVAS.L.
3. Descripcin general
El mdulo de comunicacin por radiofrecuencia BZI-RF2GH4 est basado en el
transceptor nRF24L01 fabricado por Nordic Semiconductors. En este circuito
integrado se ha incorporado toda la lgica necesaria para establecer una comunicacin
inalmbrica bidireccional con acuse de recibo. La comunicacin con el
microcontrolador se realiza a travs de un bus SPI.
Las principales caractersticas del mdulo BZI-RF2GH4 son:
Bajo consumo.
Frecuencia de trabajo de 2.4GHz,
Potencia de emisin entre -18 y 0 dBm,
Velocidad de transmisin entre 1 y 2 Mbps,
128 canales de transmisin seleccionables por el bus SPI,
BIZINTEK INNOVAS.L.
Variables
RF_STATUS
Esta variable de solo lectura informa de la situacin de la comunicacin por el
mdulo de radio.
Bit7
Bit6
Bit5
Sin uso
-
Bit4
Bit3
Bit2
RCVNW RCVOK
Bit1
ACK
Bit0
SNDOK
Bit 7-4:
Sin uso
Bit 3:
Bit 2:
Bit 1:
BIZINTEK INNOVAS.L.
Funciones
La librera consta de nueve funciones que facilitarn bastante el trabajo a la hora
de desarrollar una aplicacin de comunicacin con los mdulos BZI-RF2GH4. A
continuacin se dar una breve descripcin de cada una de ellas.
Funciones para el mdulo BZI-RF2GH4
Configura las entradas y salidas del microcontroladori as como
RF_CONFIG
parmetros del mdulo de radio.
Configura las entradas y salidas del microcontrolador ii as
RF_CONFIG_SPI
como los parmetros necesarios para utilizar el bus SPI.
Activa el mdulo de radiofrecuencia en modo escucha.
RF_ON
Desactiva el mdulo de radiofrecuencia y lo deja en modo de
RF_OFF
bajo consumo
Enva una trama de datos (8 Bytes) a la direccin indicada.
RF_SEND
Comprueba si se ha producido una recepcin y de ser as,
RF_RECEIVE
recoge la trama.
Realiza la misma funcin que RF_RECEIVE solo que por
RF_RECEIVE_INT
interrupcin.
i
ii
El usuario puede cambiar estos pines modificando la parte de la librera donde se define el patillaje
dem.
Avda. Altos Hornos de Vizcaya, 33 CEDEMI
48902 Barakaldo
www.bizintekinnova.com
info@bizintekinnova.com
BIZINTEK INNOVAS.L.
RF_INT_EN
RF_CONFIG
Variables de entrada
RF_DIR
RF_CHN
PIN PIC
IRQ
CSN
CE
RB0
RB7
RC2
El canal debe ser comn a todos los mdulos que van a participar en la
comunicacin. El usuario puede elegir cualquier canal de los 128 disponibles. Sin
embargo, si en el entorno existe ms de una comunicacin entre mdulos en diferentes
canales, hay que dejar un espaciamiento de 2 entre los canales a utilizar para evitar
interferencias dejando as 32 canales tiles. Otra cuestin a tener en cuenta es la
existencia de otras tecnologas que utilizan la banda ISM 2.4GHz (Wifi, Bluetooth,etc.)
y que tambin pueden causar interferencias en alguno de los canales.
Fig. 2: Canales RF
La direccin que se asigna a cada dispositivo debe ser unvoca dentro de cada
canal.
BIZINTEK INNOVAS.L.
RF_CONFIG_SPI
La velocidad del SPI no debe superar los 8 Mhz por lo que la utilizacin de esta
funcin queda limitada a microcontroladores PIC con una frecuencia menor de 32Mhz.
En la funcin se configuran los diferentes parmetros del mdulo SPI y los pines del
PIC.
PIN RF
PIN PIC
SCK
SDI
SDO
RC3
RC4
RC5
RF_ON
Esta rutina activa el mdulo de radio en modo escucha para poder recibir datos
y/o realizar envos de datos.
Es importante tener en cuenta que tras la llamada a esta rutina el mdulo necesita
2,5ms para estar listo.
RF_OFF
Esta rutina desactiva el mdulo de radio dejndolo en modo de bajo consumo. No
borra la configuracin establecida.
RF_SEND
Variables de entrada
RF_DIR
RF_DATA_0 RF_DATA_7
Variables de salida
FLAGS: SNDOK y ACK
BIZINTEK INNOVAS.L.
Variables de salida
RF_DIR
RF_DATA_0 RF_DATA_7
RCVOK y RCVNW
Variables de salida
RF_DIR
RF_DATA_0 RF_DATA_7
RCVOK, RCVNW
BIZINTEK INNOVAS.L.
IRQ=1
RF_RECEIVE
IRQ=0
RCVOK
Tratar datos
RCVNW
Salir recepcin
BIZINTEK INNOVAS.L.
5. Ejemplos en ensamblador
En este apartado se muestran fragmentos de cdigo a modo de ejemplo para
orientar en la utilizacin de las funciones.
;--------[Rutina configuracin con interrupcin y activacin]-----;Habilitar interrupciones
call
RF_INT_EN
;Configurar mdulos SPI del PIC
call
RF_CONFIG_SPI
;Configurar mdulo RF (canal y direccin)
movlw
0x01
;Direccin propia
movwf
RF_DIR
movlw
movwf
0x40
RF_CHN
;Canal
call
RF_CONFIG
;Activar el mdulo RF
call
RF_ON
;----------------------------------------------------------------------------;---------[Rutina configuracin sin interrupcin y activacin]-----;Configurar mdulos SPI del PIC
call
RF_CONFIG_SPI
;Configurar mdulo RF (canal y direccin)
movlw
0x01
;Direccin propia
movwf
RF_DIR
movlw
movwf
0x40
RF_CHN
;Canal
call
RF_CONFIG
;Activar el mdulo RF
call
RF_ON
;----------------------------------------------------------------------------;----------------------[Rutina de envo de datos]----------------------;Preparacin de la direccin del receptor
;y de los datos.
movlw
0x02
movwf
RF_DIR
;Datos a enviar
BIZINTEK INNOVAS.L.
clrf
clrf
clrf
clrf
clrf
clrf
clrf
clrf
RF_DATA_0
RF_DATA_1
RF_DATA_2
RF_DATA_3
RF_DATA_4
RF_DATA_5
RF_DATA_6
RF_DATA_7
;Enviar trama
call
RF_SEND
btfss
RF_STATUS,SNDOK
nop
;No enviado
btfss
RF_STATUS,ACK
nop
;ACK no recibido
;----------------------------------------------------------------------------;--------- -[Rutina de recepcin de datos con interrupcin]--------LEER_MAS_DATOS
call
RF_RECEIVE_INT
btfsc
RF_STATUS,RCVOK
;Tratar datos
nop
btfsc
RF_STATUS,RCVNW
goto
LEER_MAS_DATOS
goto
SALIR_INTERRUPCIONES
;-------------------------------------------------------------------------;----- Rutina de recepcin de datos sin interrupcin]------------RECIBIR
call
RF_RECEIVE
btfsc
RF_STATUS,RCVOK
nop
;Tratar datos
btfsc
RF_STATUS,RCVNW
goto
RECIBIR
goto
PRINCIPAL
;---------------------------------------------------------------------------
BIZINTEK INNOVAS.L.
Variables
RF_DATA
Es una variable de 8 bytes que es utilizada por la funcin de recepcin y
transmisin. En ella estn los datos recibidos y transmitidos.
RF_DIR
Esta variable es de un solo byte. Indica el origen o destino del mensaje de 8 bytes
de RF_DATA. En esta variable escribiremos la direccin del destinatario a la hora de
realizar un envo. En el caso de la recepcin, en esta variable podremos ver la direccin
de quien nos est enviando la informacin.
Funciones
Para manejar el paso de parmetros y el retorno de valores, se utilizan variables
externas que hay que modificar antes o verificar despus de cada llamada. En cada
funcin se expondr cules son y cmo actan.
Funciones para el mdulo BZI-RF2GH4
Configura las entradas y salidas del
void RF_CONFIG(int canal, int dir) microcontroladorii as como parmetros del
mdulo de radio.
Configura las entradas y salidas del
microcontrolador i as como los parmetros
void RF_CONFIG_SPI()
necesarios para utilizar el bus SPI.
i
ii
BIZINTEK INNOVAS.L.
void RF_ON()
void RF_OFF()
int RF_SEND()
int RF_RECEIVE()
void RF_INT_EN()
Variables de entrada
RF_DIR
RF_CHN
PIN PIC
IRQ
CSN
CE
RB0
RB7
RC2
El canal debe ser comn a todos los mdulos que van a participar en la
comunicacin. El usuario puede elegir cualquier canal de los 128 disponibles. Sin
embargo, si en el entorno existe ms de una comunicacin entre mdulos en diferentes
canales, hay que dejar un espaciamiento de 2 entre los canales a utilizar para evitar
interferencias dejando as 32 canales tiles. Otra cuestin a tener en cuenta es la
existencia de otras tecnologas que utilizan la banda ISM 2.4GHz (Wifi, Bluetooth,etc.)
y que tambin pueden causar interferencias en alguno de los canales.
dem.
Avda. Altos Hornos de Vizcaya, 33 CEDEMI
48902 Barakaldo
www.bizintekinnova.com
info@bizintekinnova.com
BIZINTEK INNOVAS.L.
Imagen 1. Canales RF
PIN PIC
SCK
SDI
SDO
RC3
RC4
RC5
void RF_ON()
Esta rutina activa el mdulo de radio en modo escucha para poder recibir datos
y/o realizar envos de datos.
Es importante tener en cuenta que tras la llamada a esta rutina el mdulo necesita
2,5ms para estar listo.
void RF_OFF()
Esta rutina desactiva el mdulo de radio dejndolo en modo de bajo consumo. No
borra la configuracin establecida.
int RF_SEND()
Variables de entrada
RF_DATA
RF_DIR
Avda. Altos Hornos de Vizcaya, 33 CEDEMI
48902 Barakaldo
www.bizintekinnova.com
info@bizintekinnova.com
BIZINTEK INNOVAS.L.
Retorno de la Funcin
0: Envo correcto (ACK OK)
1: Recepcin incorrecta de
ACK
(NO ACK)
2: No enviado
int RF_RECEIVE()
Variables de salida
RF_DATA
RF_DIR
Retorno de la Funcin
0
1
23
BIZINTEK INNOVAS.L.
RF_RECEIVE()
Retorno
23
Tratar datos
Tratar datos
Salir interrupcin
RF_RECEIVE()
Retorno
23
Tratar datos
Tratar datos
Salir recepcin
BIZINTEK INNOVAS.L.
BIZINTEK INNOVAS.L.
while (ret == 1)
{
ret = RF_RECEIVE();
** Sustituir por cdigo necesario para tratar los datos restantes **
}
}
//En caso de recepcin nica
else if (ret == 0)
{
** Sustituir por cdigo necesario para tratar los datos **
}
else{
//no se ha producido recepcin
}
}
//--------------------------------------------------------------------------------------//----------------[Rutina de recepcin sin interrupcin]-------------------------while(1){
ret=2;
while(ret==2 || ret==3){
ret = RF_RECEIVE();
}
if (ret == 1)
//En caso de recepcin mltiple
{
RF_DIR=0x02;
** Sustituir por cdigo necesario para tratar los datos **
while (ret == 1)
Avda. Altos Hornos de Vizcaya, 33 CEDEMI
48902 Barakaldo
www.bizintekinnova.com
info@bizintekinnova.com
BIZINTEK INNOVAS.L.
{
ret = RF_RECEIVE();
** Sustituir por cdigo necesario para tratar los datos restantes **
}
}
else if (ret == 0)
//En caso de recepcin nica
{
** Sustituir por cdigo necesario para tratar los datos **
}
//---------------------------------------------------------------------------------------
BIZINTEK INNOVAS.L.
8. Prcticas
El usuario tiene disponibles 2 programas ejemplo en ensamblador y en C.
Programa 1
Envo de una trama con ceros a la direccin 0x02 cada 5 segundos. Tambin tiene
implementada la rutina de recepcin con interrupcin.
Cada 5 seg.
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
Direccin=0x01
Canal=0x40
Programa 1
Direccin=0x02
Canal=0x40
Programa 2
Al recibir una trama desde cualquier direccin la retransmite a la direccin 0x02.
Este programa recibe las tramas sin interrupcin, chequeando continuamente si se
produce una nueva recepcin.
Trama
Direccin= Canal=0x40
Trama
Direccin=0x01
Canal=0x40
Programa 2
Direccin=0x02
Canal=0x40
BIZINTEK INNOVAS.L.
Pines
Vout
GND
Vin
N
1
2
3
Descripcin
Tensin de salida
Tierra
Tensin de entrada
Tabla 8. Pinout regulador
Vin
+-
2.2uF
0.1uF
Regulador
1
2
3
4
5
6
7
8
Mdulo RF
Vista superior