Escolar Documentos
Profissional Documentos
Cultura Documentos
RFM69HCW
DESCRIÇÃO GERAL
DE
DE
RFM69HCW
Para melhor utilizar os módulos RFM69HCW, esta especificação
também envolve um grande número de parâmetros e funções de
seu chip principal RF69H, incluindo aqueles pinos IC que não são retirados. Tudo
isso pode ajudar os clientes a compreender melhor o desempenho dos módulos
RFM69HCW e aprimorar as habilidades de aplicação.
FORMULÁRIOS
Leitura Automatizada de Medidores
+20 dBm - 100 mW Capacidade de saída de energia Alta Sistemas de alarme e segurança sem fio
sensibilidade: até -120 dBm a 1,2 kbps Monitoramento e Controle Industrial
Alta seletividade: filtro de canal FIR de 16 toques M-BUS sem fio
Front-end à prova de balas: IIP3 = -18 dBm, IIP2 = +35 dBm, imunidade de
bloqueio de 80 dB, sem resposta de frequência de imagem Corrente
Página 1
RFM69HCW
Índice Página
Página 2
RFM69HCW
Página 3
RFM69HCW
Página 4
RFM69HCW
Página 5
RFM69HCW
Figura 41. Esquema de +20dBm .......................................... .................................................. ...................................... 77 Figura 42. Desenho do contorno
da embalagem ..... .................................................. .................................................. .................. 78
Tabela 17. Intervalo de durações no modo de escuta ......................................... .................................................. ................... 39 Tabela 18. Critérios de
aceitação de sinal no modo de escuta ..................... .................................................. ............................ 40 Tabela 19. Ações de fim do ciclo de
escuta ............. .................................................. .................................................. ......... 40 Tabela 20. Status do FIFO ao alternar entre diferentes modos
do módulo ........................... ......................... . 46 Tabela 21. Mapeamento DIO, Modo Contínuo ..................................... .................................................. ......................
48 Tabela 22. Mapeamento DIO, Modo Pacote .................. .................................................. .................................................. ... 48 Tabela 23. Resumo
de Registros ........................................... .................................................. ........................................... 60 Tabela 24. Registros de configuração
comuns .................................................. .................................................. ............. 63 Tabela 25. Registros do
Transmissor ........................ .................................................. .................................................. 66 Tabela 26. Registros do
Receptor .......................................... .................................................. .................................... 67 Tabela 27. IRQ e registros de mapeamento de
pinos .................................................. .................................................. ............... 69 Tabela 28. Registros do mecanismo de
pacotes ............................ .................................................. ................................................ 71 Tabela 29. Registros do sensor de
temperatura ............................................. .................................................. ...................... 74 Tabela 30. Registros de
Teste ...................... .................................................. .................................................. .................... 74 Tabela 31. Especificação do
Cristal ........................ .................................................. .................................................. ......... 75
Página 6
RFM69HCW
Siglas
Página 7
RFM69HCW
Esta ficha técnica do produto contém uma descrição detalhada do desempenho e funcionalidade do RFM69HCW.
1. Descrição Geral
O RFM69HCW é um módulo transceptor ideal para aplicações atuais de RF de banda ISM de alto desempenho. Ele foi projetado para uso
como transceptor de RF FSK e OOK de alto desempenho e baixo custo para links de RF bidirecionais half-duplex ágeis de frequência
robustos e onde um desempenho de RF estável e constante é necessário em toda a faixa operacional do dispositivo até 1,8 V.
O RFM69HCW destina-se a aplicações em uma ampla faixa de frequência, incluindo as bandas ISM de 315 MHz, 433 MHz, 868 MHz e 915
MHz. Juntamente com um orçamento de link superior a 140 dB, os recursos avançados do sistema do RFM69HCW incluem um FIFO TX/RX
de 66 bytes, manipulador automático de pacotes configurável, modo de escuta, sensor de temperatura e DIOs configuráveis que melhoram
bastante a flexibilidade do sistema e, ao mesmo tempo, reduzindo significativamente os requisitos de MCU.
O RFM69HCW está em conformidade com os requisitos regulamentares do ETSI e da FCC e está disponível
Página 8
RFM69HCW
Página 9
RFM69HCW
2 MISSÔ
Saída de dados SPI
EU
3 FUMAÇA O
Entrada de dados SPI
4 SCK
Entrada do relógio SPI
EU
5 NSS EU
6 REINICIAR E/S
Redefinir entrada do gatilho
7 DIO5 E/S
E/S digital, software configurado
8 GND -
Chão
9 SOBRE -
Saída/entrada de sinal RF.
10 GND -
Chão
11 DIO3 E/S
E/S digital, software configurado
12 DEUS4 E/S
E/S digital, software configurado
13 3,3V -
Tensão de alimentação
14 DIO0 E/S
E/S digital, software configurado
15 DIO1 E/S
E/S digital, software configurado
16 DIO2 E/S
E/S digital, software configurado
Página 10
RFM69HCW
2. Características Elétricas
- +125 °C
Tj Temperatura de junção
PM - +6 dBm
Nível de entrada RF
- 1 %
DC_20dBm Ciclo de trabalho de transmissão na saída de +20dBm
- 3:1 -
VSWR_20dBm VSWR máximo na porta da antena
VDDop Tensão de alimentação (1,8 V-2,4 V 17dBm, 2,4 V- 3,6 V 20dBm) 1,8 3.6 EM
- 25
clop Carregar capacitância em portas digitais pF
AM - 0 dBm
Nível de entrada RF
Página 11
RFM69HCW
Nota Salvo indicação em contrário, os desempenhos nas outras bandas de frequência são semelhantes ou melhores.
IDDSL - 0,1 1
Corrente de alimentação no modo Sleep vocêA
IDDFS - 9 - mA
Corrente de alimentação no modo
Sintetizador
IDDR - 16 - mA
Corrente de alimentação no modo de recepção
IDDT - 130 - mA
Corrente de alimentação no modo de RFOP = +20 dBm, em PA_BOOST
- 95 - mA
transmissão com correspondência RFOP = +17 dBm, em PA_BOOST
- 45 - mA
apropriada, estável em toda a faixa VDD RFOP = +13 dBm, no pino RFIO
- 33 - mA
RFOP = +10 dBm, no pino RFIO
- 20 - mA
RFOP = 0 dBm, no pino RFIO
- 16 - mA
RFOP = -1 dBm, no pino RFIO
- 80 150 nós
TS_FS Tempo de despertar do sintetizador de Do modo de espera
frequência para o sinal PllLock
- 20 - nós
TS_HOP Tempo de salto do sintetizador de frequência a Passo de 200 kHz
- 20 - nós
no máximo 10 kHz de distância do Passo de 1 MHz
- 50 - nós
alvo Passo de 5 MHz
- 50 - nós
Passo de 7 MHz
- 80 - nós
Passo de 12 MHz
- 80 - nós
Passo de 20 MHz
- 80 - nós
Passo de 25 MHz
Página 12
RFM69HCW
FSTEP - 61,0 - Hz
Etapa do sintetizador de frequência FSTEP = FXOSC/219
2.3.3. Receptor
Todos os testes do receptor são realizados com RxBw = 10 kHz (largura de banda de lado único) conforme programado em RegRxBw,
recebendo uma sequência PN15 com BER de 0,1% (sincronizador de bits habilitado), salvo especificação em contrário. A impedância do LNA
é definida para 200 Ohms, configurando o bit LnaZin em RegLna para 1. Os testes de bloqueio são realizados com uma interferência não
modulada. A potência do sinal desejada para os testes de Imunidade de Bloqueio, ACR, IIP2, IIP3 e AMR é definida 3 dB acima do nível de
sensibilidade nominal.
- -120 -dBm
FDA = 5 kHz, BR = 1,2 kbps *
- -112 -109dBm
RFS_O Sensibilidade OOK, maior ganho LNA BR = 4,8 kb/s
ACR - 42 -
Rejeição de canal adjacente Deslocamento = +/- 25 kHz
37 42 - dBdB
Deslocamento = +/- 50 kHz
- 66 -
COM UM
Bloqueio de imunidade Deslocamento = +/- 1 MHz
- 71 -
Deslocamento = +/- 2 MHz
- 79 - dBdBdB
Deslocamento = +/- 10 MHz
- 62 -
Bloqueio de imunidade Deslocamento = +/- 1 MHz
- 65 -
Sinal desejado com sensibilidade Deslocamento = +/- 2 MHz
+16dB - 73 - dBdBdB
Deslocamento = +/- 10 MHz
RAM Interferência - 66 -
SOU Rejeição, Deslocamento = +/- 1 MHz
modulada AM com profundidade de - 71 -
Deslocamento = +/- 2 MHz
- 79 - dBdBdB
modulação de 100%, fm = 1 kHz, quadrado Deslocamento = +/- 10 MHz
IIP2 - +75 -
Ponto de interceptação de entrada de 2ª ordem Menor ganho de LNA
Tons indesejados estão 20 MHz - +35 - dBmdBm
Maior ganho de LNA
acima do LO
Página 13
RFM69HCW
27 30 - dB
IMR_OOK Rejeição de imagem no modo OOK Nível de sinal desejado = -106 dBm
- 1,7 - EM
TS_RE Hora de despertar do receptor, do estado RxBw = 10 kHz, BR = 4,8 kb/s RxBw =
- 96 - nós
bloqueado do PLL para RxReady 200 kHz, BR = 100 kb/s
- 3,0 EM
TS_RE_AGC Tempo de despertar do receptor, do estado PLL RxBw = 10 kHz, BR = 4,8 kb/s RxBw =
bloqueado, AGC habilitado 200 kHz, BR = 100 kb/s 163 nós
TS_RE_AGC Hora de despertar do receptor, do estado RxBw = 10 kHz, BR = 4,8 kb/s RxBw = 4,8 EM
&AFC de bloqueio PLL, AGC e AFC habilitados 200 kHz, BR = 100 kb/s 265 nós
- 4. Tbit - -
TS_FEI Tempo de amostragem FEI O receptor está pronto
- 4. Tbit - -
TS_AFC Tempo de resposta AFC O receptor está pronto
- 2. Tbit - -
TS_RSSI Tempo de resposta RSSI O receptor está pronto
Máx. - 0 - dBm
*
Defina SensitivityBoost em RegTestLna como 0x2D para reduzir o nível de ruído no receptor
2.3.4. Transmissor
Tabela 7 Especificação do Transmissor
- +20 -
RF_OP Potência de saída RF em 50 ohms Programável com passos máximos de 1dB
- -18 - dBmdBm
No pino RFIO Mínimo
- 120 - nós
TS_TR Hora de despertar do transmissor, até a Sintetizador de frequência habilitado,
primeira borda ascendente do DCLK PaRamp = 10 us, BR = 4,8 kb/s.
Página 14
RFM69HCW
FSCK - - 10MHz
Frequência SCK
50 - - ns
tchau SCK alta hora
t configurar 30 - - ns
Tempo de configuração do MOSI da mudança MOSI para borda ascendente
SCK
30 - - ns
configuração Tempo de configuração do NSS da borda descendente do NSS para a borda ascendente
do SCK
20 - - ns
alto Tempo alto do NSS entre SPI
acessa
250 - - ns
T_DATA Retenção de dados e tempo de configuração
Página 15
RFM69HCW
3. Descrição do Módulo
Esta seção descreve em detalhes a arquitetura do transceptor RFM69HCW de baixo consumo e altamente integrado.
O RFM69HCW emprega um esquema de fonte de alimentação avançado, que fornece características operacionais estáveis em toda a faixa de
temperatura e tensão de operação. Isso inclui a potência de saída total de +20dBm mantida de 2,4 a 3,6V.
O RFM69HCW pode ser alimentado por qualquer fonte de tensão de baixo ruído através dos pinos VBAT1 e VBAT2. Os capacitores de
desacoplamento devem ser conectados, conforme sugerido no projeto de referência, nos pinos VR_PA, VR_DIG e VR_ANA para garantir o correto
funcionamento dos reguladores de tensão integrados.
A geração LO no RFM69HCW é baseada em um PLL N fracionário de última geração. O PLL está totalmente integrado com calibração automática.
Página 16
RFM69HCW
Fornecer uma saída de clock para um processador complementar, economizando assim o custo de um oscilador adicional. CLKOUT pode ser
disponibilizado em qualquer modo de operação, exceto o modo Sleep, e é ativado automaticamente na reinicialização ao ligar.
Para fornecer uma saída de referência do oscilador. A medição do sinal CLKOUT permite o ajuste simples do software do
tolerância cristalina inicial.
Nota para minimizar o consumo de corrente do RFM69HCW, certifique-se de que o sinal CLKOUT esteja desabilitado quando
não requerido.
3.2.3.1. VCO
O VCO funciona a 2, 4 ou 6 vezes a frequência de RF (respectivamente nas bandas de 915, 434 e 315 MHz) para reduzir qualquer vazamento de LO
no modo receptor, para melhorar a precisão da quadratura do receptor e para reduzir os efeitos de tração no o VCO durante a transmissão.
A calibração do VCO é totalmente automatizada. Um ajuste grosseiro é realizado na reinicialização da inicialização e um ajuste fino é realizado cada
vez que o RFM69HCW PLL é ativado. Os tempos de calibração automática são totalmente transparentes para o usuário final, pois seu tempo de
processamento está incluído nas especificações TS_TE e TS_RE .
Modulação FSK de alta velocidade, até 300 kb/s, dentro da largura de banda PLL
Tempos de bloqueio de PLL muito rápidos, permitindo tempos de inicialização curtos e tempos de salto rápidos necessários para aplicações ágeis de frequência
2 19
A frequência da portadora é programada através do RegFrf, dividida entre os endereços 0x07 a 0x09:
Observação A configuração Frf é dividida em 3 bytes. Uma mudança na frequência central só será levada em consideração quando o
o byte menos significativo FrfLsb em RegFrfLsb é gravado. Isso permite esquemas de modulação mais complexos, como o FSK, onde a
modulação de frequência é obtida alterando a frequência de RF programada.
Página 17
RFM69HCW
O tempo de bloqueio do PLL TS_FS é uma função de vários fatores técnicos, como frequência sintetizada, passo de frequência, etc.
Ao usar o sequenciador integrado, o RFM69HCW otimiza o tempo de inicialização e inicia automaticamente o receptor ou transmissor quando o PLL é bloqueado.
Para controlar manualmente o tempo de inicialização, o usuário deve aguardar o TS_FS max fornecido na especificação ou monitorar o indicador de detecção de
bloqueio do sinal PLL, que é definido quando o PLL está dentro de sua faixa de bloqueio.
Ao realizar um AFC, que normalmente corrige erros de frequência muito pequenos, o tempo de resposta do PLL é aproximadamente:
= -------------
Num esquema de salto de frequência, os tempos TS_HOP dados na tabela de especificações fornecem uma ordem de grandeza para os tempos de bloqueio
esperados.
Um sinal de indicação de bloqueio pode ser disponibilizado em alguns dos pinos DIO e é alternado para alto quando o PLL atinge sua faixa de bloqueio. Consulte a
Tabela 21 e a Tabela 22 para mapear esta interrupção para os pinos desejados.
Nota O bloco de detecção de bloqueio pode indicar uma condição de desbloqueio (sinal alternado para baixo) quando o transmissor é modulado por FSK
com grandes configurações de desvio de frequência.
Página 18
RFM69HCW
LNA
PA0
Local
Oscilador
PA1
PA_BOOST
PA2
Ao usar o RFM69HCW no modo Contínuo, o fluxo de dados a ser transmitido pode ser inserido diretamente no modulador via pino DIO2/
DATA de maneira assíncrona, a menos que seja usada filtragem gaussiana, caso em que o sinal DCLK no pino DIO1/DCLK é usado
para sincronizar o fluxo de dados. Consulte a seção 3.3.5 para detalhes sobre o filtro Gaussiano.
No modo Pacote ou no modo Contínuo com filtragem Gaussiana habilitada (consulte a seção 5.5 para detalhes), a Taxa de Bits (BR) é
controlada pelos bits BitRate em RegBitrate:
F XOSC
=
BR -------------------
Taxa de bits
Página 19
RFM69HCW
A modulação FSK é realizada dentro da largura de banda do PLL, alterando a relação do divisor fracionário no circuito de feedback do
PLL. A grande resolução do modulador sigma-delta permite desvios de frequência muito estreitos. O desvio de frequência FDEV é dado
por:
Observe que nenhuma restrição se aplica ao índice de modulação do transmissor, mas o desvio de frequência deve exceder 600 Hz.
A modulação OOK é aplicada ligando e desligando o amplificador de potência. Controle digital e suavização estão disponíveis para
melhorar a resposta de potência transitória do transmissor OOK.
Página 20
RFM69HCW
A modelagem de modulação pode ser aplicada nos modos de modulação OOK e FSK, para melhorar a resposta de banda estreita do transmissor. Ambos os recursos
de modelagem são controlados com bits PaRamp no RegPaRamp.
No modo FSK, um filtro gaussiano com BT = 0,3, 0,5 ou 1 é utilizado para filtrar o fluxo de modulação, na entrada do modulador sigma-delta. Se o filtro
Gaussiano estiver habilitado quando o RFM69HCW estiver no modo Contínuo, o sinal DCLK no pino DIO1/DCLK irá acionar uma interrupção no uC cada
vez que um novo bit tiver que ser transmitido. Consulte a seção 5.4.2 para obter detalhes.
Quando a modulação OOK é usada, as tensões de polarização do PA aumentam e diminuem suavemente quando o PA é ligado e desligado, para reduzir
respingos espectrais.
Observe que o transmissor deve ser reiniciado se a configuração PaRamp for alterada, para recalibrar o filtro integrado.
Um modo de maior potência, quando PA1 e PA2 são combinados, fornecendo até +20 dBm para uma carga correspondente.
Quando PA1 e PA2 são combinados para fornecer +20 dBm à antena, um projeto específico de correspondência de impedância/filtragem de harmônicos é necessário
para garantir a transformação de impedância e conformidade regulatória.
Todas as configurações de PA são controladas pelo RegPaLevel, e a tabela verdade das configurações é fornecida na Tabela 10.
1 0 0 Saída PA0 no pino RFIO -18 a +13dBm -18 dBm + Potência de Saída
0 1 1 PA1 e PA2 combinados no pino PA_BOOST +2 a +17 dBm -14 dBm + Potência de Saída
Notas - Para garantir a operação correta nos níveis de potência mais altos, certifique-se de ajustar a proteção contra sobrecorrente
Limite adequadamente no RegOcp, exceto acima de +18dBm onde deve ser desabilitado
- Se o pino PA_BOOST não for usado (+20dBm aplicações e menos), o pino pode ficar flutuando.
Página 21
RFM69HCW
Nota As configurações de alta potência DEVEM ser desativadas ao usar PA0 e no modo de recepção
O Duty Cycle de transmissão a +20dBm é limitado a 1%, com um VSWR máximo de 3:1 na porta da antena, acima da faixa de operação padrão
[-40;+85°C].
22
18
14
10
2
Beicinho
-2
-22
-18 -14 -10 -6 -2 26 10 14 18
Potência programada [ d Bm ] _ _ _ _ _
Um bloco de proteção contra sobrecorrente está embutido no módulo. Ajuda a prevenir surtos de corrente necessários quando o transmissor é usado
em seus níveis de potência mais altos, protegendo assim a bateria que pode alimentar a aplicação. O valor de fixação atual é controlado pelos bits
OcpTrim no RegOcp e é calculado com a seguinte fórmula:
Imáx = 45 + 5 ÿ OcpTrim ÿ mA ÿ
Nota Imax define um limite apenas para o consumo de corrente do amplificador de potência, portanto, o consumo máximo de corrente do
RFM69HCW é igual a Imax + IFS
Página 22
RFM69HCW
Calibração Rx
Referência
LNA ©/ÿ CORDIC
Único para Misturadores Moduladores Canal CC Complexo
Diferencial Filtro Cancelamento Filtro Estágio FSK
RFI Saída Demodulador
rodamiziD
orE
otnemassecm p
Módulo TAMBÉM
De RSSI
Saída Demodulador
PA1
Ignorado
no FSK
Local
Oscilador AFC
CAG
As seções a seguir fornecem uma breve descrição de cada um dos blocos receptores.
Nota No caso específico onde o ganho do LNA é ajustado manualmente pelo usuário, o receptor não será capaz de lidar adequadamente
com sinais FSK com índice de modulação menor que 2 em uma potência de entrada maior que o ponto de compressão de
1dB, tabulado na seção 3.4. 3.
000 -
Qualquer um dos itens abaixo, definido pelo loop AGC
001 Ganho máximo G1
010 Ganho máximo - 6 dB G2
011 Ganho máximo - 12 dB G3
100 Ganho máximo - 24 dB G4
101 Ganho máximo - 36 dB G5
110 Ganho máximo - 48 dB G6
111 Reservado -
Página 23
RFM69HCW
O receptor permanece no modo WAIT até que RssiValue exceda RssiThreshold por duas amostras consecutivas. Seu consumo de
energia é o consumo de energia do receptor.
Quando esta condição é satisfeita, o receptor seleciona automaticamente o ganho LNA mais adequado, otimizando a
compensação sensibilidade/linearidade.
O ganho LNA programado, acessível para leitura com LnaCurrentGain em RegLna, é executado durante toda a duração do pacote, até
que uma das seguintes condições seja atendida: Modo
pacote: se AutoRxRestartOn = 0, o ganho LNA permanecerá o mesmo para o recepção do seguinte pacote. Se
AutoRxRestartOn = 1, após o controlador ter esvaziado o FIFO, o receptor entrará novamente no modo WAIT descrito acima, após
um atraso de InterPacketRxDelay, permitindo que o transmissor distante diminua a velocidade, evitando assim uma falsa detecção de
RSSI. Em ambos os casos (AutoRxRestartOn=0 ou AutoRxRestartOn=1), o receptor também pode entrar novamente no modo WAIT
configurando o bit RestartRx como 1. O usuário pode decidir fazer isso, para iniciar manualmente um novo procedimento AGC.
Modo contínuo: ao receber dados válidos, o usuário pode decidir entre deixar o receptor habilitado com o mesmo ganho do LNA,
ou reiniciar o procedimento, configurando o bit RestartRx para 1, retomando o modo WAIT do receptor, descrito acima.
Notas - o procedimento AGC deve ser realizado durante a recepção do preâmbulo no modo FSK
- no modo OOK, o AGC dará melhores resultados se for executado recebendo uma sequência “1” constante
Em direção a
-125dBm _
G1G2G3G4G5 G6
Página 24
RFM69HCW
Para a operação correta do AGC, RssiThreshold em RegRssiThresh deve ser configurado para a sensibilidade do receptor. O receptor permanecerá no modo WAIT
até que RssiThreshold seja excedido.
Nota Quando o AFC é ativado e executado automaticamente na inicialização do receptor, o filtro de canal usado pelo receptor durante o AFC e o AGC é RxBwAfc em
vez da configuração RxBw padrão. Isso pode afetar a sensibilidade do receptor e a configuração de RssiThreshold de acordo
Com:
Melhora a margem de desvanecimento do receptor durante a recepção de um pacote, mesmo que o ganho do LNA esteja congelado
Melhora a robustez do receptor em condições de desvanecimento rápido do sinal, ajustando rapidamente o ganho do receptor (a cada 2 bits)
O DAGC é habilitado configurando RegTestDagc como 0x20 para sistemas de baixo índice de modulação (ou seja, quando AfcLowBetaOn=1, consulte a seção
3.4.16) e 0x30 para outros sistemas. Recomenda-se sempre habilitar o DAGC.
Página 25
RFM69HCW
Nas bandas mais baixas de operação (290 a 510 MHz), a arquitetura de mistura multifásica com fases ponderadas melhora a rejeição dos harmônicos LO
no modo receptor, aumentando assim a imunidade do receptor a interferências fora de banda.
A digitalização I e Q é feita por dois conversores analógico-digital (ADC) Sigma-Delta de tempo contínuo de 5ª ordem. Seu ganho não é constante em relação
à temperatura, mas todo o receptor é calibrado antes da recepção, de modo que esta imprecisão não tenha impacto na precisão do RSSI. A saída ADC é um
bit por canal. Ele precisa ser dizimado e filtrado posteriormente. Este ADC também pode ser usado para medição de temperatura; consulte a seção 3.4.17
para obter mais detalhes.
Os dizimadores diminuem a taxa de amostragem do sinal de entrada para otimizar a área e o consumo de energia dos blocos receptores seguintes.
A função do filtro de canal é filtrar ruídos e interferências fora do canal. A filtragem de canal no RFM69HCW é implementada com um filtro de
resposta de impulso finito (FIR) de 16 toques, proporcionando um excelente desempenho de rejeição de canal adjacente, mesmo para aplicações
de banda estreita.
Nota para respeitar as regras de sobreamostragem na cadeia de dizimação do receptor, a taxa de bits não pode ser definida em um valor superior a 2
vezes a largura de banda do receptor de lado único (BitRate <2 x RxBw)
A largura de banda do filtro de canal de lado único RxBw é controlada pelos parâmetros RxBwMant e RxBwExp em RegRxBw:
RxBwMant ÿ 2RxBwEx p + 2
Quando a modulação OOK está habilitada:
RxBwMant ÿ 2RxBwEx p + 3
As seguintes larguras de banda de filtro de canal estão acessíveis (o oscilador é obrigatório em 32 MHz):
ModulaçãoTipo = 00 ModulaçãoTipo = 01
10b/24 7 2.6 1.3
01b/20 7 3.1 1.6
00b/16 7 3.9 2,0
10b/24 6 5.2 2.6
01b/20 6 6.3 3.1
00b/16 6 7,8 3.9
10b/24 5 10.4 5.2
01b/20 5 12,5 6.3
00b/16 5 15.6 7,8
10b/24 4 20,8 10.4
Página 26
RFM69HCW
3.4.7. Cancelamento de DC
O cancelamento DC é necessário em transceptores de arquitetura zero-IF para remover qualquer deslocamento DC gerado por meio da auto-recepção.
Está integrado no RFM69HCW e sua frequência de corte ajustável fc é controlada em RegRxBw:
em RegRxBw % de RxBw
000 16
001 8
010 (padrão) 4
011 2
100 1
101 0,5
110 0,25
111 0,125
O valor padrão da frequência de corte DccFreq é normalmente 4% do RxBw (BW do filtro de canal). A frequência de corte do DCC pode, no entanto,
ser aumentada para melhorar ligeiramente a sensibilidade, sob condições de modulação mais amplas. É aconselhável ajustar a configuração DCC
enquanto monitora a sensibilidade do receptor.
Observe que este filtro é automaticamente ignorado ao receber sinais FSK (ModulationType = 00 em RegDataModul).
3.4.9. RSSI
O bloco RSSI avalia a quantidade de energia disponível na largura de banda do canal receptor. Sua resolução é de 0,5 dB e possui uma ampla faixa
dinâmica para acomodar níveis de sinal pequenos e grandes que possam estar presentes. Seu tempo de aquisição é muito curto, ocupando apenas
períodos de 2 bits. A amostragem RSSI deve ocorrer durante a recepção do preâmbulo em FSK, e recepção constante “1” em OOK.
Página 27
RFM69HCW
- O receptor é capaz de calibração automática de ganho, a fim de melhorar a precisão de suas medições RSSI.
Esta função injeta um sinal de RF conhecido na entrada do LNA e calibra o ganho do receptor de acordo. Esta calibração é
realizada automaticamente durante a inicialização do PLL, tornando-se um processo transparente para o usuário final
- A precisão do RSSI depende de todos os componentes localizados entre a porta da antena e o pino RFIO e, portanto, é limitada
a alguns dB. A calibração no nível da placa é recomendada para melhorar ainda mais a precisão
-20,0
-40,0
Valor
-60,0
-80,0
-100,0
-120,0
-120 -110 -100-90-80-70-60-50-40-30-20-10 0
Pino [dBm]
3.4.10. Córdico
A tarefa Cordic é extrair a fase e a amplitude do vetor de modulação (I+jQ). Esta informação, ainda no domínio digital é utilizada:
Tempo real
Q(t)
Magnitude
Isto)
Página 28
RFM69HCW
0,5 d®
A saída do demodulador FSK pode ser alimentada ao Sincronizador de Bits (descrito na seção 3.4.13), para fornecer ao processador complementar
um fluxo de dados síncrono no modo Contínuo.
RSSI
[dbm]
Limite de ''Pico -6dB''
Nível de ruído do
receptor
Tempo
Ampliação
Quando a saída RSSI é nula por um longo período (por exemplo, após uma longa sequência de "0" recebida ou se nenhum transmissor estiver
presente), o nível de limite de pico continuará caindo até atingir o "Limite de piso", programado em OokFixedThresh .
As configurações padrão do demodulador OOK levam ao desempenho indicado na especificação elétrica. Entretanto, em aplicações nas quais são
esperadas quedas repentinas de sinal durante uma recepção, os três parâmetros devem ser otimizados adequadamente.
Página 29
RFM69HCW
OokFixedThresh determina a sensibilidade do receptor OOK, pois define o limite de comparação para sinais de entrada fracos (ou seja, aqueles próximos
ao nível de ruído). Melhorias significativas de sensibilidade podem ser geradas se configuradas corretamente.
Observe que o nível de ruído do receptor na entrada do demodulador depende de:
Portanto, é importante observar que a configuração de OokFixedThresh dependerá do aplicativo. O procedimento a seguir é recomendado para otimizar
OokFixedThresh.
Incremento
OokFixedThresh
Atividade de
falha em DATA ?
Otimização concluída
O novo valor do limite mínimo encontrado durante este teste deve ser usado para recepção OOK com essas configurações do receptor.
Uma queda repentina na intensidade do sinal pode aumentar a taxa de erro de bit. Para aplicações onde a queda de sinal esperada pode ser estimada, os
seguintes parâmetros do demodulador OOK OokPeakThreshStep e OokPeakThreshDec podem ser otimizados conforme descrito abaixo para um
determinado número de decrementos de limite por bit. Consulte RegOokPeak para acessar essas configurações.
Além do modo de limite Peak OOK, o usuário pode selecionar alternativamente dois outros tipos de detectores de limite:
Limiar médio: Os dados fornecidos pelo bloco RSSI são calculados em média e este modo de operação deve ser usado apenas com dados
codificados sem DC.
Página 30
RFM69HCW
O Bit Synchronizer é ativado automaticamente no modo Pacote. Sua taxa de bits é controlada por BitRateMsb e BitRateLsb no RegBitrate.
Saída bruta do
demodulador
(FSK ou OOK)
DADOS
DCLK
Para garantir a operação correta do Sincronizador de Bits, as seguintes condições devem ser atendidas:
Um preâmbulo (0x55 ou 0xAA) de 12 bits é necessário para sincronização (da interrupção RxReady )
O fluxo de bits de carga útil subsequente deve ter pelo menos uma forma de transição '0' para '1' ou '1' para '0 a cada 16 bits durante a transmissão de dados.
transmissão
A correspondência da taxa de bits entre o transmissor e o receptor deve ser superior a 6,5%.
Notas - Se as taxas de bits do transmissor e do receptor forem iguais, o RFM69HCW será capaz de receber
uma sequência infinita desequilibrada (todos “0s” ou todos “1s”) sem restrição.
- Se houver diferença na taxa de bits entre Tx e Rx, a quantidade de bits adjacentes no mesmo nível que o
O BitSync pode suportar e pode ser estimado da seguinte forma:
- Isto implica aproximadamente 6 bytes consecutivos desequilibrados quando a precisão da taxa de bits é de 1%, o que é facilmente
alcançável (a tolerância do cristal está na faixa de 50 a 100 ppm).
Página 31
RFM69HCW
o resultado assinado é carregado no FeiValue no RegFei, em formato de complemento de 2. O tempo necessário para uma avaliação FEI é 4 vezes o período
do bit.
A soma do deslocamento de frequência e a largura de banda do sinal de 20 dB deve ser menor que a largura de banda do filtro de banda base
A largura de banda de 20 dB do sinal pode ser avaliada da seguinte forma (largura de banda dupla):
= ÿ
SX1239
RFM69HCW no modo
Rx
Sinal de entrada modulado por preâmbulo
Nível de sinal > Sensibilidade
Definir FeiStart
=1
Não
Fei Feito
=1
Sim
Ler
FeiValor
Página 32
RFM69HCW
Quando o AFC é acionado automaticamente (AfcAutoOn = 1), o usuário tem a opção de:
Inicie a avaliação AFC a partir da frequência corrigida anteriormente. Isto pode ser útil em sistemas nos quais o OA mantém
à deriva na “mesma direção”. A compensação por envelhecimento é um bom exemplo.
O RFM69HCW oferece uma configuração alternativa de largura de banda do receptor durante a fase AFC, para acomodar grandes desvios de LO. Caso o usuário
considere que o sinal recebido pode estar fora da largura de banda do receptor, uma largura de banda de filtro de canal maior pode ser programada no RegAfcBw, às
custas do nível de ruído do receptor, o que terá impacto na sensibilidade.
Para sistemas de banda larga, onde o AFC geralmente não é necessário (imprecisões XTAL normalmente não afetam a sensibilidade), é
é recomendado compensar a frequência LO do receptor para evitar dessensibilização. Isso pode ser feito simplesmente modificando Frf em RegFrfLsb.
Uma boa regra é compensar o LO do receptor em 10% do desvio de frequência esperado do transmissor.
Para sistemas de banda estreita, recomenda-se a realização de AFC. O RFM69HCW possui um AFC dedicado, habilitado
quando
AfcLowBetaOn em RegAfcCtrl é definido como 1. Um deslocamento de frequência, programável por meio de LowBetaAfcOffset em RegTestAfc, é adicionado e
calculado da seguinte forma:
Deslocamento = LowBetaAfcOffset x 488 Hz
O usuário deve garantir que o deslocamento programado exceda a frequência de corte do cancelador DC, definida através de DccFreqAfc
em RegAfcBw.
RX Texas RX e TX
f f
RX Texas TX RX
f f
Conforme mostrado na Figura 15, uma sequência AFC padrão usa o resultado do FEI para corrigir a frequência LO e alinhar ambos os osciladores locais. Quando o AFC
otimizado está habilitado (AfcLowBetaOn=1), o LO do receptor é corrigido por “FeiValue + LowBetaAfcOffset”.
Quando a rotina AFC otimizada está habilitada, o tempo de inicialização do receptor pode ser calculado da seguinte forma (consulte a seção 4.2.3):
Página 33
RFM69HCW
A resposta do sensor de temperatura é -1°C/Lsb. Um sensor de temperatura CMOS não é preciso por natureza, portanto deve ser calibrado à temperatura
ambiente para leituras precisas de temperatura.
ValorTemp.
-1°C/Lsb
ValorTemp(t)
ValorTemp(t)-1
O RFM69HCW leva menos de 100 microssegundos para avaliar a temperatura (desde a configuração de TempMeasStart como 1 até a redefinição de
TempMeasRunning ).
O RFM69HCW inclui uma função Timeout, que permite desligar automaticamente o receptor após uma sequência de recepção e, portanto, economizar
energia.
A interrupção de tempo limite é gerada TimeoutRxStart x 16x Tbit após mudar para o modo RX se o sinalizador RssiThreshold não
aumentar dentro deste prazo
A interrupção de tempo limite é gerada TimeoutRssiThresh x 16 x Tbit após o sinalizador RssiThreshold ter sido acionado.
Essa interrupção de tempo limite pode ser usada para avisar o processador complementar para desligar o receptor e retornar ao modo de menor consumo de
energia.
Página 34
RFM69HCW
4. Modos de operação
4.1. Modos Básicos
O circuito pode ser configurado em 5 modos básicos diferentes, descritos na Tabela 16.
Por padrão, ao passar de um modo para outro, os subblocos são despertados de acordo com uma sequência pré-definida e otimizada. Alternativamente,
estes modos de operação podem ser selecionados diretamente desativando o sequenciador automático (SequencerOff em RegOpMode = 1).
O tempo de despertar do oscilador de cristal, TS_OSC, está diretamente relacionado ao tempo para o oscilador de cristal atingir sua posição estável.
estado. Depende notavelmente das características do cristal.
O tempo de despertar do sintetizador de frequência, TS_FS, está diretamente relacionado ao tempo necessário para o PLL atingir seu estado estável.
estado. O sinal PLL_LOCK, fornecido em um pino externo, dá uma indicação do status do bloqueio. Ele aumenta quando o PLL atinge sua faixa de
travamento.
Hora de despertar do receptor no modo Sleep, AGC habilitado = TS_OSC + TS_FS + TS_RE_AGC
Tempo de despertar do receptor do modo Sleep, AGC e AFC habilitados = TS_OSC + TS_FS + TS_RE_AGC&AFC
Em aplicações onde o consumo médio de energia alvo, ou o tempo de inicialização alvo, não requerem configuração do RFM69HCW nos modos de menor
consumo de energia (Sleep ou Standby), os respectivos tempos TS_OSC e TS_FS nas equações anteriores podem ser omitidos.
Página 35
RFM69HCW
O tempo de despertar do transmissor, TS_TR, é dado pela sequência controlada pela parte digital. É um atraso digital puro que depende da taxa de
bits e do tempo de aceleração. No modo FSK, este tempo pode ser derivado da seguinte equação.
Solicitação de inicialização de Tx
(sequenciador ou usuário)
TS_TR
1,25 x PaRamp
Analógico
XO iniciado e PLL bloqueado 0,5 x Tbit (somente no Transmissão de Pacote
atraso de grupo
modo FSK)
5 nós
Modo pronto
TxReady
Conforme descrito na seção anterior, as interrupções ModeReady e TxReady avisam o uC que o transmissor está pronto para transmitir dados
No modo Contínuo, os bits de preâmbulo que precedem a carga útil podem ser aplicados no pino DIO2/DATA imediatamente após
qualquer uma dessas interrupções foi disparada. O sinal DCLK, ativado no pino DIO1/DCLK também pode ser usado para iniciar a alternância do
Pino DATA, conforme descrito na Figura 30.
No modo Pacote, o RFM69HCW modulará automaticamente o sinal RF com bytes de preâmbulo assim que TxReady
ou
ModeReady acontece. A transmissão real do pacote (começando com o número de preâmbulos especificado em PreambleSize) começará
quando o TxStartCondition for atendido.
Página 36
RFM69HCW
Solicitação de inicialização Rx
(sequenciador ou usuário)
TS_RE
Modo pronto
RxReady
Atraso de grupo Atraso de grupo do Atraso de grupo Atraso de grupo do Atraso de grupo
XO iniciado e PLL bloqueado Recepção de Pacote
do Analog FE filtro de canal do DC Cutoff Amostragem RSSI
Amostragem RSSI filtro de canal do DC Cutoff Amostragem RSSI
Modo pronto
RxReady
XO iniciado e Atraso de grupo Atraso de grupo do Atraso de grupo RSSI RSSI Atraso de grupo do Atraso de grupo RSSI Atraso de grupo do Atraso de grupo
AFC Recepção de Pacote
PLL está bloqueado do Analog FE filtro de canal do DC Cutoff amostragem amostragem filtro de canal do DC Cutoff amostragem Bloqueio PLL filtro de canal do DC Cutoff
Ela é Tcf Tdcc Trssi Trssi Tcf Tdcc Trssi Tafc Tplafc Tcf Tdcc
Modo pronto
RxReady
Tempo de bloqueio do PLL após ajuste do AFC: Tpllafc = 5 / PLLBW (PLLBW = 300 kHz)
Tempo de amostragem AFC: Tafc = 4 x Tbit (também denotado TS_AFC na especificação geral)
Tempo de amostragem RSSI: Trssi = 2 x int(4.RxBw.Tbit)/ (4.RxBw) (também conhecido como TS_RSSI)
Nota Os tempos acima representam tempos máximos de acomodação, e tempos de acomodação mais curtos podem ser observados em casos reais
Página 37
RFM69HCW
No modo Contínuo com Bit Synchronizer, o receptor começará a bloquear seu Bit Synchronizer em um mínimo de 12 bits de
preâmbulo recebido (consulte a seção 3.4.13 para detalhes), antes da recepção dos dados corretos, ou Sync Word (se habilitado) pode
ocorrer.
No modo Contínuo sem Sincronizador de Bits, dados válidos estarão disponíveis em DIO2/DATA logo após o RxReady
interromper.
No modo Pacote, o receptor começará a bloquear seu Sincronizador de Bits em um mínimo ou 12 bits de preâmbulo recebido (veja
seção 3.4.13 para detalhes), antes que a recepção de dados corretos ou sincronização de palavra (se habilitada) possa ocorrer.
Salto do transmissor do Canal A para o Canal B: é aconselhável passar pelo modo Rx: (0) RFM69HCW
está no modo Tx no Canal A (1) Programe o
Observe que todas as sequências descritas acima assumem que o sequenciador está ativado (SequencerOff=0 em RegOpMode).
Página 38
RFM69HCW
tListenIdle
Rx Parado Rx
tempo
tListenRx tListenRx
4.3.1. Horários
A duração da fase Idle é dada por tListenIdle. O tempo durante o qual o receptor fica ligado e espera por um sinal é dado por tListenRx. tListenRx inclui
o tempo de despertar do receptor, descrito na seção 4.2.3. Esta duração pode ser programada nos registros de configuração através da interface serial.
Ambos os períodos de tempo tListenRx e tListenIdle (denotados tListenX no texto a seguir) são fixados por dois parâmetros do registro de configuração
e são calculados da seguinte forma:
onde ListenResolX é a resolução Rx ou Idle e é programável independentemente em três valores (64us, 4,1ms ou 262ms), enquanto ListenCoefX é
um número inteiro entre 1 e 255. Todos os parâmetros estão localizados nos registros RegListen .
Página 39
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Notas - a precisão dos tempos típicos dados na Tabela 17 dependerá da calibração do oscilador RC
- A calibração do oscilador RC é necessária e deve ser realizada na inicialização. Consulte a seção 4.3.5 para obter detalhes
4.3.2. Critério
Os critérios adotados para detectar um sinal desejado e, portanto, decidir manter o receptor ligado são definidos por ListenCriteria
em RegListen1.
Página 40
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Critérios de escuta
passado
Parado Rx
OuvirFim = 00
Modo de escuta
Parado Rx Modo
OuvirFim = 01
Modo de escuta
Parado Rx Parado Rx
OuvirFim = 10
Modo de escuta
Programe RegOpMode com ListenOn=0, ListenAbort=1 e a configuração desejada para os bits de modo (Sleep, Stdby, FS, Rx
ou modo Tx) em um único acesso SPI
Programe RegOpMode com ListenOn=0, ListenAbort=0 e a configuração desejada para os bits de modo (Sleep, Stdby, FS, Rx
ou modo Tx) em um segundo acesso SPI
Para aplicações que suportam grandes variações de temperatura e para as quais a fonte de alimentação nunca é removida, a calibração RC pode ser
realizada mediante solicitação do usuário. RcCalStart em RegOsc1 pode ser usado para acionar esta calibração, e o sinalizador RcCalDone será definido
automaticamente quando a calibração terminar.
Página 41
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
abaixo.
Estado intermediário
definido por IntermediateMode
Transmissão automática (AutoTx): Modo = Sleep, IntermediateMode = Tx, EnterCondition = FifoLevel, ExitCondition =
Pacote enviado
Recepção automática (AutoRx): Modo = Rx, IntermediateMode = Sleep, EnterCondition = CrcOk, ExitCondition = caindo
borda de FifoNotEmpty
Recepção automática de confirmação (AutoRxAck): Mode = Tx, IntermediateMode = Rx, EnterCondition = PacketSent,
Condição de saída = CrcOk
...
Página 42
RFM69HCW
5. Processamento de Dados
O circuito contém vários blocos de controle que são descritos nos parágrafos seguintes.
Tx/Rx DIO0
DIO1
DIO2
AO CONTROLE
DIO3
DEUS4
DIO5
Dados RECONHECIMENTO DE
SINCRONIZAÇÃO Rx .
Tx NSS
SCK
FUMAÇA
MISSÔ
O RFM69HCW implementa vários modos de operação de dados, cada um com seu próprio caminho de dados através da seção de processamento
de dados. Dependendo do modo de operação de dados selecionado, alguns blocos de controle ficam ativos enquanto outros permanecem desabilitados.
Modo contínuo: cada bit transmitido ou recebido é acessado em tempo real no pino DIO2/DATA. Este modo pode ser
usado se o processamento de sinal externo adequado estiver disponível.
Modo pacote (recomendado): o usuário apenas fornece/recupera bytes de carga útil de/para o FIFO. O pacote é automaticamente
construído com preâmbulo, palavra de sincronização e esquemas de codificação opcionais AES, CRC e DC-free. A operação reversa é executada
na recepção. A sobrecarga de processamento do uC é, portanto, significativamente reduzida em comparação com o modo Contínuo.
Dependendo dos recursos opcionais ativados (CRC, AES, etc), o comprimento máximo da carga útil é limitado ao tamanho FIFO, 255 bytes ou ilimitado.
Página 43
Cada um desses modos de operação de dados é descrito completamente nas seções a seguir.
RFM69HCW
A interface SPI dá acesso ao registro de configuração através de um protocolo síncrono full-duplex correspondente a CPOL = 0 e CPHA = 0 na
nomenclatura Motorola/Freescale. Apenas o lado escravo é implementado.
Acesso ÚNICO: um byte de endereço seguido por um byte de dados é enviado para acesso de gravação enquanto um byte de endereço é enviado e
um byte de leitura é recebido para o acesso de leitura. O pino NSS fica em nível baixo no início do quadro e em nível alto após o byte de dados.
Acesso BURST: o byte do endereço é seguido por vários bytes de dados. O endereço é incrementado automaticamente internamente
entre cada byte de dados. Este modo está disponível para acessos de leitura e gravação. O pino NSS fica baixo no início do quadro e
permanece baixo entre cada byte. Ele aumenta somente após a transferência do último byte.
Acesso FIFO: se o byte de endereço corresponder ao endereço do FIFO, então o byte de dados seguinte irá endereçar o
FIFO. O endereço não é incrementado automaticamente, mas é memorizado e não precisa ser enviado entre cada byte de dados. O pino NSS fica
baixo no início do quadro e permanece baixo entre cada byte. Ele aumenta somente após a transferência do último byte.
MOSI é gerado pelo mestre na borda descendente do SCK e é amostrado pelo escravo (ou seja, esta interface SPI) na borda ascendente do SCK. MISO
é gerado pelo escravo na borda descendente do SCK.
Uma transferência sempre começa quando o pino NSS fica baixo. MISO é de alta impedância quando NSS é alto.
O segundo byte é um byte de dados, enviado no MOSI pelo mestre no caso de acesso de gravação, ou recebido pelo mestre no MISO no caso de acesso
de leitura. O byte de dados é transmitido primeiro em MSB.
Os bytes seguintes podem ser enviados em MOSI (para acesso de gravação) ou recebidos em MISO (para acesso de leitura) sem aumentar o NSS e
reenviar o endereço. No modo FIFO, se o endereço for o endereço FIFO então os bytes serão escritos/lidos no endereço FIFO. No modo Burst, se o
endereço não for o endereço FIFO, ele será automaticamente incrementado a cada novo byte recebido.
Página 44
RFM69HCW
O quadro termina quando o NSS aumenta. O próximo quadro deve começar com um byte de endereço. O modo de acesso SINGLE é na verdade um caso especial
do modo FIFO/BURST com apenas 1 byte de dados transferido.
Durante o acesso de escrita, o byte transferido do escravo para o mestre na linha MISO é o valor do registrador escrito antes da operação de escrita.
5.2.2. FIFO
No modo de operação por pacote, tanto os dados a serem transmitidos quanto os recebidos são armazenados em um dispositivo FIFO (First In First Out) configurável.
Ele é acessado através da interface SPI e fornece diversas interrupções para gerenciamento de transferência.
O FIFO tem 1 byte de largura, portanto, executa apenas operações de bytes (paralelas), enquanto o demodulador funciona em série. Um registrador de deslocamento
é, portanto, empregado para fazer a interface entre os dois dispositivos. No modo de transmissão, ele pega bytes do FIFO e os envia serialmente (MSB primeiro) na
taxa de bits programada para o modulador. Da mesma forma, em Rx o registrador de deslocamento obtém dados bit a bit
do demodulador e os grava byte por byte no FIFO. Isso é ilustrado na figura abaixo.
FIFO
byte1
byte0
8
Tx/Rx de dados
SR (8 bits)
1
MSB LSB
Nota Ao mudar para o modo Sleep, o FIFO só pode ser usado quando o sinalizador ModeReady estiver definido (quase imediato a partir do
todos os modos, exceto de Tx)
5.2.2.2. Tamanho
FifoFull: A fonte de interrupção FifoFull está alta quando o último byte FIFO, ou seja, todo o FIFO, está cheio. Caso contrário, é baixo.
FifoOverrunFlag: FifoOverrunFlag é definido quando um novo byte é escrito pelo usuário (nos modos Tx ou Standby) ou pelo SR (modo inRx) enquanto o
FIFO já está cheio. Os dados são perdidos e o sinalizador deve ser apagado escrevendo 1, observe que o FIFO também será apagado.
PacketSent: A fonte de interrupção PacketSent fica alta quando o último bit do SR foi enviado.
FifoLevel: Threshold pode ser programado por FifoThreshold em RegFifoThresh. Seu comportamento é ilustrado na figura abaixo.
Página 45
RFM69HCW
Nível Fifo
Nota - A interrupção FifoLevel é atualizada somente após uma operação de leitura ou gravação no FIFO. Assim, a interrupção não pode ser
atualizada dinamicamente alterando apenas o parâmetro FifoThreshold
- A interrupção FifoLevel é válida enquanto não ocorrer FifoFull. Um FIFO vazio restaurará sua operação normal
Em espera/suspensão Tx Não autorizado Para permitir que o usuário escreva o FIFO em Stdby/Sleep antes de Tx
Em espera/suspensão Rx Desmarcado
Rx Tx Desmarcado
Rx Em espera/suspensão Não autorizado Para permitir que o usuário leia FIFO no modo Stdby/Sleep após Rx
Tx Qualquer Desmarcado
O reconhecimento de palavras de sincronização (também chamado de reconhecimento de padrão) é ativado configurando SyncOn em RegSyncConfig.
O sincronizador de bits também deve ser ativado em modo contínuo (feito automaticamente em modo Pacote).
O bloco se comporta como um registrador de deslocamento; ele compara continuamente os dados recebidos com sua palavra Sync programada
internamente e define SyncAddressMatch quando uma correspondência é detectada. Isto é ilustrado na Figura 28 abaixo.
Página 46
RFM69HCW
DADOS Rx
BitNx = Bit N-1 = Bit N =
(NRZ)
Valor_sincronizado[x] Valor_sincronizado[1] Valor_sincronizado[0]
DCLK
SyncAddressMatch
Durante a comparação dos dados demodulados, o primeiro bit recebido é comparado com o bit 7 (MSB) do RegSyncValue1 e o último bit recebido é comparado
com o bit 0 (LSB) do último byte cujo endereço é determinado pelo comprimento da palavra Sync .
Quando a palavra Sync programada é detectada, o usuário pode assumir que este pacote recebido é para o nó e pode ser processado adequadamente.
5.2.3.2. Configuração
Tamanho: O tamanho da palavra de sincronização pode ser definido de 1 a 8 bytes (ou seja, 8 a 64 bits) via SyncSize no RegSyncConfig. No modo
Packet este campo também é usado para geração de palavras Sync no modo Tx.
Tolerância a erros: O número de erros tolerados no reconhecimento da palavra Sync pode ser definido de 0 a 7 bits via SyncTol.
Valor: O valor da palavra Sync é configurado em SyncValue(63:0). No modo Packet este campo também é usado para geração de palavras Sync no
modo Tx.
O manipulador de pacotes é o bloco usado no modo Pacote. Sua funcionalidade está totalmente descrita na seção 5.5.
5.2.5. Ao controle
O bloco de controle configura e controla o comportamento completo do módulo de acordo com as configurações programadas nos registros de
configuração.
Página 47
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Nota Os dados recebidos são mostrados apenas no sinal de dados entre as bordas ascendentes de RxReady e PayloadReady
Página 48
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Tx/Rx DIO0
DIO1/DCLK
DIO2/DADOS
AO CONTROLE
DIO3
DEUS4
DIO5
Dados Rx
SINCRONIZAR
RECONH.
IPS
NSS
SCK
FUMAÇA
MISSÔ
5.4.2. Processamento de Tx
No modo Tx, um clock de dados síncrono para um uC externo é fornecido no pino DIO1/DCLK. O tempo do relógio em relação aos dados é ilustrado
na Figura 30. Os DADOS são amostrados internamente na borda ascendente do DCLK para que o uC possa alterar o estado lógico a qualquer
momento fora da zona de configuração/retenção esmaecida.
T_DATA T_DATA
DADOS
(NRZ)
DCLK
Observe que o uso de DCLK é necessário quando a modelagem de modulação está habilitada (ver seção 3.3.5).
Página 49
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
5.4.3. Processamento Rx
Se o sincronizador de bits estiver desabilitado, a saída bruta do demodulador será disponibilizada diretamente no pino DATA e nenhum sinal DCLK
será fornecido.
Por outro lado, se o sincronizador de bits estiver habilitado, os dados e o relógio limpos síncronos serão disponibilizados respectivamente nos pinos
DIO2/DATA e DIO1/DCLK. Os DADOS são amostrados na borda ascendente do DCLK e atualizados na borda descendente, conforme ilustrado
abaixo.
DADOS (NRZ)
DCLK
Nota no modo Contínuo é sempre recomendado habilitar o sincronizador de bits para limpar o sinal DATA mesmo que o
O sinal DCLK não é usado pelo uC (o sincronizador de bits é habilitado automaticamente no modo Pacote).
Além disso, o manipulador de pacotes RFM69HCW executa várias tarefas orientadas a pacotes, como geração de palavras de preâmbulo e
sincronização, cálculo/verificação CRC, branqueamento/desbranqueamento de dados, codificação/decodificação Manchester, filtragem de endereços,
criptografia/descriptografia AES, etc. reduz a sobrecarga de uC executando essas tarefas repetitivas dentro do próprio módulo de RF.
Outra característica importante é a capacidade de preencher e esvaziar o FIFO no modo Sleep/Stdby, garantindo ótimo consumo de energia e
adicionando mais flexibilidade ao software.
Página 50
RFM69HCW
COMUNICAÇÕES E DETECÇÃO AVANÇADAS FICHA DE DADOS
DIO0
DIO1
DIO2
AO CONTROLE
DIO3
DEUS4
DIO5
Rx de dados
RECONHECIMENTO
DE SINCRONIZAÇÃO.
PACOTE FIFO
IPS
MANIPULADOR
(+SR)
NSS
Tx
SCK
FUMAÇA
MISSÔ
O formato de pacote de comprimento fixo é selecionado quando o bit PacketFormat é definido como 0 e PayloadLength é definido como qualquer valor maior que 0.
Em aplicações onde o comprimento do pacote é fixado antecipadamente, este modo de operação pode ser interessante para minimizar a sobrecarga de RF (nenhum campo de byte de
comprimento é necessário). Todos os nós, sejam somente Tx, somente Rx ou Tx/Rx, devem ser programados com o mesmo valor de comprimento de pacote.
O comprimento da carga útil é limitado a 255 bytes se o AES não estiver habilitado, caso contrário a mensagem será limitada a 64 bytes (ou seja, carga útil máxima de 65 bytes se o
byte de endereço estiver habilitado).
O comprimento programado em PayloadLength refere-se apenas à carga útil que inclui a mensagem e o byte de endereço opcional. Neste modo, a carga útil deve conter pelo menos
um byte, ou seja, endereço ou byte de mensagem.
Uma ilustração de um pacote de comprimento fixo é mostrada abaixo. Ele contém os seguintes campos:
Preâmbulo (1010...)
Dados da mensagem
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
AES Enc/Dez
Preâmbulo 0
Sincronizar Byte de Mensagem CRC
a 65535 bytes
Word 0 a 8 bytes endereço Até 255 bytes de 2 bytes
Carga útil
(mín. 1 byte)
Campos opcionais fornecidos pelo usuário que fazem parte da carga útil
O formato de pacote de comprimento variável é selecionado quando o bit PacketFormat é definido como 1.
Este modo é útil em aplicações onde o comprimento do pacote não é conhecido antecipadamente e pode variar com o tempo. É então necessário que o transmissor envie as informações de
comprimento junto com cada pacote para que o receptor opere corretamente.
Neste modo, o comprimento da carga útil, indicado pelo byte de comprimento, é dado pelo primeiro byte do FIFO e é limitado a 255 bytes se o AES não estiver habilitado, caso contrário a
mensagem é limitada a 64 bytes (ou seja, carga útil máxima de 66 bytes se O byte de endereço está habilitado). Observe que o byte de comprimento em si não está incluído em seu cálculo.
Neste modo, a carga útil deve conter pelo menos 2 bytes, ou seja, comprimento + endereço ou byte da mensagem.
Uma ilustração de um pacote de comprimento variável é mostrada abaixo. Ele contém os seguintes campos:
Preâmbulo (1010...)
Byte de comprimento
Dados da mensagem
AES Enc/Dez
Preâmbulo 0
Sincronizar Byte de Endereço Mensagem CRC
a 65535
Word 0 a 8 bytes comprimento byte Até 255 bytes de 2 bytes
bytes
Carga útil
(mínimo 2 bytes)
Campos opcionais fornecidos pelo usuário que fazem parte da carga útil
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
O formato de pacote de comprimento ilimitado é selecionado quando o bit PacketFormat é definido como 0 e PayloadLength é definido como 0.
O usuário pode então transmitir e receber pacotes de comprimento arbitrário e o registro PayloadLength não é usado nos modos Tx/Rx para contar o comprimento dos bytes
transmitidos/recebidos. Este modo é um substituto para o modo buffer legado em transceptores RF63/RF64.
Em Tx os dados são transmitidos dependendo do bit TxStartCondition . No lado Rx, os recursos de processamento de dados, como filtragem de endereço, codificação
Manchester e branqueamento de dados, não estarão disponíveis se o comprimento do padrão de sincronização estiver definido como zero (SyncOn = 0). O preenchimento
do FIFO neste caso pode ser controlado pelo bit FifoFillCondition. A detecção de CRC em Rx também não é suportada neste modo do manipulador de pacotes, porém a
geração de CRC em Tx está operacional. As interrupções como CrcOk e PayloadReady também não estão disponíveis.
Preâmbulo (1010...).
Dados da mensagem
Preâmbulo
Sincronizar palavra Byte de Comprimento
0 a 65535 bytes
0 a 8 bytes endereço ilimitado da mensagem
Carga útil
Campos opcionais fornecidos pelo usuário que fazem parte da carga útil
Apenas a carga útil (incluindo campos opcionais de endereço e comprimento) deve ser fornecida pelo usuário no FIFO.
Página 53
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
A transmissão de dados de pacote é iniciada pelo Packet Handler somente se o módulo estiver no modo Tx e a condição de transmissão definida por
TxStartCondition for atendida. Se a condição de transmissão não for atendida, o manipulador de pacotes transmite uma sequência de preâmbulo até que a
condição seja atendida. Isso acontece apenas se o comprimento do preâmbulo /= 0, caso contrário ele transmite zero ou um até que a condição seja
atendida para transmitir os dados do pacote.
se TxStartCondition = 1, o manipulador de pacotes espera até que o primeiro byte seja escrito no FIFO, então ele começa a enviar o
preâmbulo seguido pela palavra de sincronização e carga útil do
usuário Se TxStartCondition = 0, o manipulador de pacotes espera até que o número de bytes escritos no FIFO seja igual ao número
definido em RegFifoThresh + 1 Se a
condição para transmissão já foi atendida, ou seja, o FIFO foi preenchido em Sleep/Stdby então a transmissão de
o pacote começa imediatamente ao ativar o Tx
Somente a carga útil (incluindo campos opcionais de endereço e comprimento) é disponibilizada no FIFO.
Quando o modo Rx está habilitado o demodulador recebe o preâmbulo seguido pela detecção da palavra de sincronização. Se o formato de pacote de
comprimento fixo estiver habilitado, o número de bytes recebidos como carga útil será fornecido pelo parâmetro PayloadLength .
No modo de comprimento variável, o primeiro byte recebido após a palavra de sincronização é interpretado como o comprimento do pacote recebido. O
contador de comprimento interno é inicializado com este comprimento recebido. O registro PayloadLength é definido com um valor maior que o comprimento
máximo esperado do pacote recebido. Se o comprimento recebido for maior que o comprimento máximo armazenado no registrador PayloadLength o pacote
é descartado, caso contrário o pacote completo é recebido.
Se a verificação de endereço estiver habilitada, o segundo byte recebido no caso de comprimento variável e o primeiro byte no caso de comprimento fixo
será o byte de endereço. Se o endereço corresponder ao do campo NodeAddress , a recepção dos dados continuará, caso contrário será interrompida. A
verificação do CRC é realizada se CrcOn = 1 e o resultado estiver disponível em CrcOk indicando que o CRC foi bem-sucedido. Uma interrupção
(PayloadReady) também é gerada em DIO0 assim que o payload estiver disponível no FIFO. A carga útil disponível no FIFO também pode ser lida no modo
Sleep/Standby.
Se o CRC falhar, a interrupção PayloadReady não será gerada e o FIFO será limpo. Esta função pode ser substituída definindo CrcAutoClearOff = 1,
forçando a disponibilidade da interrupção PayloadReady e da carga útil no FIFO mesmo se o CRC falhar.
5.5.5. AES
AES é a cifra de bloco de chave simétrica que fornece recursos criptográficos ao transceptor. O sistema proposto pode funcionar com chaves fixas de 128
bits. A chave fixa é armazenada em um registro de configuração do usuário somente gravação de 16 bytes, que mantém seu valor no modo Sleep.
Página 54
RFM69HCW
Conforme mostrado na Figura 33 e Figura 34 acima, a parte da mensagem do pacote pode ser criptografada e descriptografada com a chave de cifra 128 armazenada
nos registradores de configuração.
5.5.5.1. Processamento de Tx
1. O usuário insere os dados a serem transmitidos em FIFO no modo Stdby/Sleep e dá o comando de transmissão.
2. No comando Tx, a máquina de estado do manipulador de pacotes assume o controle e se a criptografia estiver habilitada, a mensagem dentro do FIFO
é lida em blocos de 16 bytes (preenchidos com 0s, se necessário), criptografada e armazenada de volta no FIFO.
Todo esse processamento é feito no modo Tx antes de habilitar a máquina de estado de manipulação de pacotes. Apenas a parte da mensagem do pacote é
criptografada e o preâmbulo, a palavra de sincronização, o byte de comprimento, o byte de endereço e o CRC não são criptografados.
3. Assim que a criptografia for concluída, a máquina de estado de manipulação de pacotes estará habilitada para transmitir os dados.
5.5.5.2. Processamento Rx
1. Os dados recebidos são armazenados no FIFO. O endereço, as interrupções CRC são geradas normalmente porque esses parâmetros não foram
criptografados.
2. Assim que o pacote completo for recebido. Os dados são lidos do FIFO, descriptografados e gravados de volta no FIFO.
A interrupção PayloadReady é emitida quando os dados descriptografados estão prontos no FIFO para leitura através da interface SPI.
A criptografia/descriptografia AES não pode ser usada em tempo real, ou seja, durante a transmissão e recepção de dados. Assim, quando a criptografia/descriptografia
AES está habilitada, o FIFO atua como um buffer simples. Este buffer é preenchido antes de iniciar qualquer transmissão.
Os dados no buffer são então criptografados antes que a transmissão possa começar. No lado de recepção, a descriptografia é iniciada apenas quando o pacote
completo é recebido no buffer.
O processo de criptografia/descriptografia leva aproximadamente 7,0 nós por bloco de 16 bytes. Assim, para um máximo de 4 blocos (ou seja, 64 bytes), podem ser
necessários até 28 nós para completar as operações criptográficas.
O lado de recepção vê o tempo de descriptografia AES como um atraso sequencial antes que a interrupção PayloadReady esteja disponível.
O lado Tx vê o tempo de criptografia AES como um atraso sequencial na inicialização da cadeia Tx, portanto, o tempo de inicialização do Tx aumentará de acordo
com o comprimento dos dados.
No modo de comprimento fixo, a parte da mensagem da carga que pode ser criptografada/descriptografada pode ter 64 bytes. Se a filtragem de endereço
estiver habilitada, o comprimento da carga útil deverá ser de no máximo 65 bytes neste caso.
No modo de comprimento variável, o tamanho máximo da mensagem que pode ser criptografada/descriptografada também é de 64 bytes quando a filtragem de endereço
está desativada; caso contrário, é de 48 bytes. Assim, incluindo o byte de comprimento, o comprimento da carga útil é de no máximo 65 ou 50 bytes (o último quando a
filtragem de endereço está habilitada).
Se a filtragem de endereço for esperada, então AddressFiltering também deverá ser habilitado no lado do transmissor para evitar que o byte de endereço seja
criptografado.
A verificação Crc sendo realizada em dados criptografados, a interrupção CrcOk ocorrerá no "tempo de descriptografia" antes da interrupção PayloadReady .
Página 55
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Para Tx:
O FIFO pode ser pré-preenchido em suspensão/espera, mas deve ser recarregado "on-the-fly" durante o Tx com o restante da carga útil.
1) Preencha previamente o FIFO (primeiro em suspensão/espera ou diretamente no modo Tx) até que FifoThreshold ou FifoFull
seja definido 2) Em Tx, aguarde que FifoThreshold ou FifoNotEmpty sejam apagados (ou seja, FIFO está quase vazio)
4) Continue na etapa 2 até que toda a mensagem tenha sido gravada no FIFO (PacketSent será acionado quando o último bit do pacote for enviado).
Para Rx:
O FIFO deve ser preenchido "on-the-fly" durante o Rx para evitar excesso de FIFO.
2) Suspender a leitura do FIFO se FifoNotEmpty for limpo antes que todos os bytes da mensagem tenham sido lidos 3) Continue para a etapa
Nota A criptografia AES não é viável em pacotes grandes, pois todos os bytes de Payload precisam estar no FIFO ao mesmo tempo para
realizar criptografia
A filtragem/reconhecimento de palavras de sincronização é usada para identificar o início da carga útil e também para identificação da rede. Conforme descrito
anteriormente, o bloco de reconhecimento de palavras Sync é configurado (tamanho, tolerância a erros, valor) nos registradores RegSyncValue . Esta informação é
usada tanto para anexar a palavra Sync em Tx quanto para filtrar pacotes em Rx.
Cada pacote recebido que não inicia com esta palavra de sincronização configurada localmente é automaticamente descartado e nenhuma interrupção é gerada.
Quando a palavra Sync é detectada, a recepção da carga útil é iniciada automaticamente e SyncAddressMatch é ativado.
Página 56
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
A filtragem de endereços pode ser habilitada através dos bits AddressFiltering . Ele adiciona outro nível de filtragem, acima da palavra de sincronização (ou seja, a
sincronização deve corresponder primeiro), normalmente útil em redes de vários nós onde um ID de rede é compartilhado entre todos os nós (palavra de sincronização)
e cada nó tem seu próprio ID (endereço).
Observe que o byte de endereço recebido, como parte da carga útil, não é retirado do pacote e é disponibilizado no FIFO. Além disso, NodeAddress e AddressFiltering
aplicam-se apenas a Rx. No lado Tx, se a filtragem de endereço for esperada, o byte de endereço deverá simplesmente ser colocado no FIFO como qualquer outro byte
da carga útil.
Como a filtragem de endereço requer uma correspondência de palavra Sync, ambos os recursos compartilham o mesmo sinalizador de interrupção SyncAddressMatch.
No modo Pacote de comprimento variável, PayloadLength deve ser programado com o comprimento máximo de carga útil permitido. Se o comprimento do byte recebido
for menor que esse máximo, o pacote será aceito e processado, caso contrário, será descartado.
Observe que o byte de comprimento recebido, como parte da carga útil, não é retirado do pacote e é disponibilizado no FIFO.
Para desabilitar esta função o usuário deve definir o valor de PayloadLength como 255.
A verificação CRC é habilitada definindo o bit CrcOn em RegPacketConfig1. É usado para verificar a integridade da mensagem.
No lado Tx, uma soma de verificação CRC de dois bytes é calculada na parte da carga útil do pacote e anexada ao final da mensagem. No lado Rx, a soma de
verificação é
calculada na carga recebida e comparada com os dois bytes de soma de verificação recebidos. é armazenado no bit CrcOk.
Por padrão, se a verificação CRC falhar, o FIFO será automaticamente limpo e nenhuma interrupção será gerada. Esta função de filtragem pode ser desabilitada via bit
CrcAutoClearOff e neste caso, mesmo se o CRC falhar, o FIFO não é limpo e apenas a interrupção PayloadReady fica alta. Observe que em ambos os casos, os dois
bytes de soma de verificação CRC são removidos pelo manipulador de pacotes e apenas a carga útil é disponibilizada no FIFO.
O CRC é baseado no polinômio CCITT conforme mostrado abaixo. Esta implementação também detecta erros devido a zeros à esquerda e à direita.
Página 57
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Para tanto, duas técnicas são disponibilizadas no manipulador de pacotes: codificação Manchester e branqueamento de dados.
Nota Somente um dos dois métodos deve ser habilitado por vez.
Os dados NRZ são convertidos para o código Manchester codificando '1' como "10" e '0' como "01".
Neste caso, a taxa máxima de chip é a taxa de bits máxima fornecida na seção de especificações e a taxa de bits real é metade
a taxa de chips.
A codificação e decodificação Manchester são aplicadas apenas à carga útil e à soma de verificação CRC, enquanto o preâmbulo e a palavra de
sincronização são mantidos NRZ. No entanto, a taxa de chip do preâmbulo ao CRC é a mesma e definida por BitRate em RegBitRate (Chip Rate =
Bit Rate NRZ = 2 x Bit Rate Manchester).
A codificação/decodificação Manchester torna-se assim transparente para o usuário, que ainda fornece/recupera dados NRZ de/para o
FIFO
1/BR ...Sincronizar
1/BR Carga útil...
Chips RF @ BR ... 1 1 101 001 0 0 1 011 0 1 0...
Usuário/NRZ
1 1 10100 1 0 0 1 0 1 1 0 1 0...
t
bits Manchester OFF ...
Bits de usuário/NRZ
1 1 10100 1 0 0 1 1 ...
Manchester ON...
Página 58
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Outra técnica chamada branqueamento ou embaralhamento é amplamente utilizada para randomizar os dados do usuário antes da transmissão por rádio.
Os dados são branqueados usando uma sequência aleatória no lado Tx e desbranqueados no lado Rx usando a mesma sequência.
Comparando com a técnica Manchester, tem a vantagem de manter a taxa de dados NRZ, ou seja, a taxa de bits real não é reduzida à metade.
O processo de branqueamento/desbranqueamento é habilitado se DcFree = 10. Um LFSR de 9 bits é usado para gerar uma sequência aleatória. A carga útil e a soma de
verificação CRC de 2 bytes são então submetidas a um XOR com esta sequência aleatória, conforme mostrado abaixo. Os dados são desbranqueados no lado do receptor por
meio de XOR com a mesma sequência aleatória.
O branqueamento/desbranqueamento da carga útil torna-se assim transparente para o usuário, que ainda fornece/recupera dados NRZ de/para o FIFO.
X8 X7 X6 X5 X4 X3 x2 X1 X0
Dados branqueados _ _
Trans m it da ta
Página 59
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Padrão
Reiniciar
Endereço Registrar Nome Descrição
(construídas em)
(recomendado)
Página 60
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Padrão
Reiniciar
Endereço Registrar Nome Descrição
(construídas em)
(recomendado)
0x1A RegAfcBw 0x8A 0x8B Controle BW do filtro de canal durante a rotina AFC
0x26 RegDioMapping2 0x05 0x07 Mapeamento dos pinos DIO4 e DIO5, frequência ClkOut
0x27 RegIrqFlags1 0x80 Registro de status: estado de bloqueio PLL, tempo limite, RSSI > limite...
0x2A RegRxTimeout1 0x00 Duração do tempo limite entre a solicitação Rx e a detecção de RSSI
0x2B RegRxTimeout2 0x00 Duração do tempo limite entre a detecção de RSSI e PayloadReady
Página 61
RFM69HCW
Padrão
Reiniciar
Endereço Registrar Nome Descrição
(construídas em)
(recomendado)
0x71 RegTestAfc 0x00 Deslocamento AFC para baixo índice de modulação AFC
0x50 + -
RegTest Registros de teste internos
Página 62
RFM69HCW
TAMBÉM:
00 ÿ sem modelagem
01 ÿ filtragem com fcutoff = BR
10 ÿ filtragem com fcutoff = 2*BR
11 ÿ reservado
Taxa de bits 7-0 (15:8) rw 0x1a MSB de taxa de bits (taxa de chip quando a codificação Manchester é
RegBitrateMsb
(0x03) habilitado)
Página 63
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Taxa de bits 7-0 (7:0) rw 0x0b LSB de taxa de bits (taxa de chip se a codificação Manchester estiver
RegBitrateLsb
(0x04) habilitada)
--------F ----X ----O-----S --- C----------
Taxa de bits =
Taxa de bits (15,0)
(0x0C)
Página 64
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
7-6 ListenResolIdle rw 10 Resolução do modo de escuta Tempo ocioso (RC osc calibrado):
RegListen1
(0x0D) 00 ÿ reservado
01 ÿ 64 nós
10 ÿ 4,1ms
11 ÿ 262ms
5-4 ListenResolRx rw 01 Resolução do tempo Rx do modo Listen (RC osc calibrado): 00 ÿ
reservado
01 ÿ 64 nós
10 ÿ 4,1ms
11 ÿ 262ms
3 Critérios de escuta rw 0 Critérios para aceitação de pacotes no modo Listen: 0 ÿ a
intensidade do sinal está acima de RssiThreshold
1 ÿ a intensidade do sinal está acima de RssiThreshold e
SyncAddress matched Ação
2-1 OuvirFim rw 01 tomada após aceitação de um pacote no modo Listen: 00 ÿ chip
permanece no modo Rx. O modo de escuta para e deve
ser desabilitado (ver seção 4.3). 01 ÿ
o chip permanece no modo Rx até PayloadReady ou
Ocorre interrupção de tempo limite . Em seguida, vai para o modo definido
por Mode. O modo de escuta é interrompido e deve ser desativado
(consulte a
seção 4.3). 10 ÿ o chip permanece no modo Rx até que ocorra a
interrupção PayloadReady ou Timeout . O modo de escuta então é
retomado no estado inativo. O conteúdo FIFO é perdido na
próxima ativação do Rx. 11 ÿ Reservado
0- R 0 não utilizado
Página 65
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Imáx = 45 + 5 ÿ OcpTrimÿ mA ÿ
Página 66
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
(0x14)
Reservado15 7-0 - R 0xB0 não utilizado
(0x15)
Reservado16 7-0 - R 0x7B não utilizado
(0x16)
Reservado17 7-0 - R 0x9B não utilizado
(0x17)
7LnaZin rw 1 Impedância de entrada do
Regras *
(0x18) LNA 0 ÿ 50 ohms
1 ÿ 200 ohms
6 - R 0 não utilizado
5-3 LnaGanhoCorrente R 001 Ganho atual do LNA, definido manualmente ou pelo AGC
2-0 LnaGainSelect rw 000 Configuração de ganho
LNA: 000 ÿ ganho definido pelo loop AGC interno
001 ÿ G1 = maior ganho
010 ÿ G2 = maior ganho – 6 dB
011 ÿ G3 = maior ganho – 12 dB
100 ÿ G4 = maior ganho – 24 dB
101 ÿ G5 = maior ganho – 36 dB
110 ÿ G6 = maior ganho – 48 dB
111 ÿ reservado
TAMBÉM Moda:
Página 67
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Página 68
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Nome Padrão
Nome da variável de bits Modo Descrição
(Endereço) Valor
7-6 Dio0Mapeamento rw 00
RegDioMapping1
(0x25) 5-4 Mapeamento Dio1 rw 00 Mapeamento dos pinos DIO0 a DIO5
7 Modo Pronto R 1 Definido quando o modo de operação solicitado em Modo estiver pronto
RegIrqFlags1
(0x27) - Sono: entrando no modo de suspensão
- Espera: XO está em execução
- FS: PLL está bloqueado
- Rx: A amostragem RSSI é
iniciada - Tx: Aceleração do PA
concluída Limpado ao alterar o modo de operação.
6RxPronto R 0 Definido no modo Rx, após RSSI, AGC e AFC.
Liberado ao sair do Rx.
5TxReady R 0 Definido no modo Tx, após a aceleração do PA.
Liberado ao sair do Tx.
4PllLock R 0 Define (em FS, Rx ou Tx) quando o PLL está bloqueado.
Desmarcado quando não está.
Página 69
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
7FifoFull R 0 Definido quando o FIFO está cheio (ou seja, contém 66 bytes), caso
RegIrqFlags2
contrário é limpo.
(0x28)
6FifoNotEmpty R 0 Definido quando FIFO contém pelo menos um byte, caso contrário é limpo
5FifoNível R 0 Definido quando o número de bytes no FIFO excede estritamente
FifoThreshold, caso contrário, limpo.
4FifoOverrun rwc 0 Definido quando ocorre excesso de FIFO. (exceto no modo Sleep)
Flag(s) e FIFO são apagados quando este bit é energizado. O FIFO
fica então imediatamente disponível para a próxima transmissão/
recepção.
3 pacotes enviados R 0 Definido em Tx quando o pacote completo for enviado.
Limpo ao sair do Tx.
2 Carga útil pronta R 0 Definido em Rx quando a carga estiver pronta (ou seja, último
byte recebido e CRC, se habilitado e CrcAutoClearOff estiver
desmarcado, está OK). Limpado quando o FIFO está vazio.
1CrcOk R 0 Definido em Rx quando o CRC da carga estiver OK. Limpado quando
o FIFO está vazio.
0- R 0 não utilizado
Página 70
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Página 71
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
7-0 Comprimento da carga útil rw 0x40 Se PacketFormat = 0 (fixo), comprimento da carga útil.
RegPayloadLength (0x38)
Se PacketFormat = 1 (variável), comprimento máximo em Rx, não usado
em Tx.
7-0 Endereço do Nó rw 0x00 Endereço do nó usado na filtragem de endereços.
RegNodeAdrs
(0x39)
7-0 Endereço de transmissão rw 0x00 Endereço de broadcast usado na filtragem de endereços.
RegBroadcastAdrs (0x3A)
7-5 InsiraCondição rw 000 Condição de interrupção para entrar no modo intermediário: 000 ÿ Nenhum
RegAutoModes
(0x3B) (AutoModes Off)
001 ÿ Borda ascendente de FifoNotEmpty
010 ÿ Borda de subida do FifoLevel
011 ÿ Borda ascendente do CrcOk
100 ÿ Borda ascendente do PayloadReady
101 ÿ Borda ascendente do SyncAddress
110 ÿ Borda ascendente do PacketSent
111 ÿ Borda descendente de FifoNotEmpty (ou seja, FIFO vazio)
4-2 Condição de Saída rw 000 Condição de interrupção para sair do modo intermediário: 000 ÿ Nenhum
(AutoModes Off)
001 ÿ Borda descendente de FifoNotEmpty (ou seja, FIFO vazio)
010 ÿ Borda de subida do FifoLevel ou Timeout
011 ÿ Borda ascendente de CrcOk ou Timeout
100 ÿ Borda ascendente de PayloadReady ou Timeout
101 ÿ Borda ascendente de SyncAddress ou Timeout
110 ÿ Borda ascendente do PacketSent
111 ÿ Borda ascendente do tempo limite
1-0 Modo Intermediário rw 00 Modo intermediário: 00 ÿ Modo
dormir (SLEEP)
01 ÿ Modo de espera (STDBY)
10 ÿ Modo receptor (RX)
11 ÿ Modo transmissor (TX)
Página 72
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Sempre lê 0.
1 AutoRxRestartOn rw 1 Ativa a reinicialização Rx automática (fase RSSI) após a
ocorrência de PayloadReady e o pacote ter sido completamente lido
do FIFO: 0 ÿ
Desligado. RestartRx pode ser usado.
1 ÿ Ligado. Rx reiniciado automaticamente após
InterPacketRxDelay.
0 AesOn rw 0 Habilite a criptografia/descriptografia AES: 0 ÿ
Desligado
1 ÿ Ativado (carga limitada a no máximo 66 bytes)
7-0 AesKey(127:120) Em
RegAesKey1 0x00 1º byte da chave de cifra (byte MSB)
(0x3E)
7-0 AesKey(119:112) Em
RegAesKey2 0x00 2º byte da chave de cifra
(0x3F)
7-0 AesKey(111:104) Em
RegAesKey3 0x00 3º byte da chave de cifra
(0x40)
7-0 AesKey(103:96) Em
RegAesKey4 0x00 4º byte da chave de cifra
(0x41)
7-0 AesKey (95:88) Em
RegAesKey5 0x00 5º byte da chave de cifra
(0x42)
7-0 AesKey (87:80) Em
RegAesKey6 0x00 6º byte da chave de cifra
(0x43)
7-0 AesKey(79:72) Em
RegAesKey7 0x00 7º byte da chave de cifra
(0x44)
7-0 AesKey(71:64) Em
RegAesKey8 0x00 8º byte da chave de cifra
(0x45)
7-0 AesKey(63:56) Em
RegAesKey9 0x00 9º byte da chave de cifra
(0x46)
7-0 AesKey(55:48) Em
RegAesKey10 0x00 10º byte da chave de cifra
(0x47)
7-0 AesKey(47:40) Em
RegAesKey11 0x00 11º byte da chave de cifra
(0x48)
7-0 AesKey (39:32) Em
RegAesKey12 0x00 12º byte da chave de cifra
(0x49)
7-0 AesKey (31:24) Em
RegAesKey13 0x00 13º byte da chave de cifra
(0x4A)
Página 73
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Nome Padrão
Nome da variável de bits Modo Descrição
(Endereço) Valor
7-4 - R 0000 não utilizado
RegTemp1
(0x4E) 3 TempMeasStart Em 0 Aciona a medição de temperatura quando definida. Sempre
lê 0.
-
RegTemp2 7-0 Valor de temperatura R Temperatura medida -1°C
(0x4F) por Lsb
Precisa de calibração para precisão
Nome Padrão
Nome da variável de bits Modo Descrição
(Endereço) Valor
RegTestLna 7-0 Aumento de Sensibilidade rw 0x1B Modo de alta sensibilidade ou sensibilidade normal: 0x1B
(0x58) ÿ Modo normal
0x2D ÿ Modo de alta sensibilidade
RegTestPa1 7-0 Pa20dBm1 rw 0x55 Defina como 0x5D para operação de +20 dBm em PA_BOOST. 0x55
(0x5A) ÿ Modo normal e modo Rx
0x5D ÿ modo +20 dBm
Reverter para 0x55 ao receber ou usar PA0
RegTestPa2 7-0 Pa20dBm2 rw 0x70 Defina como 0x7C para operação de +20 dBm em PA_BOOST 0x70
(0x5C) ÿ Modo normal e modo Rx
0x7C ÿ modo +20 dBm
Reverter para 0x70 ao receber ou usar PA0
RegTestDagc 7-0 Contínuo Dagc rw 0x30 Melhoria da margem de desvanecimento, consulte
*
(0x6F) 3.4.4 0x00 ÿ Modo normal
0x20 ÿ Margem melhorada, use se AfcLowBetaOn=1
0x30 ÿ Margem melhorada, use se AfcLowBetaOn=0
RegTestAfc 7-0 LowBetaAfcOffset rw 0x00 Offset AFC definido para sistemas de índice de modulação baixa, usado se
(0x71) AfcLowBetaOn=1.
Deslocamento = LowBetaAfcOffset x 488 Hz
Página 74
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
7. Informações de inscrição
7.1. Especificação do ressonador de cristal
A Tabela 31 mostra a especificação do ressonador de cristal para o circuito oscilador de referência de cristal do RFM69HCW.
Esta especificação cobre toda a faixa de operação do RFM69HCW e é empregada no projeto de referência.
26 - 32MHz
Frequência FXOSC XTAL
C0 - 2.8 7
Capacitância de derivação XTAL pF
Notas - a tolerância de frequência inicial, a estabilidade de temperatura e o desempenho de envelhecimento devem ser escolhidos de acordo
com a faixa de temperatura operacional alvo e a largura de banda do receptor selecionada.
- a capacitância de carga deve ser aplicada externamente e adaptada à especificação Cload real do XTAL.
- É necessária uma frequência XTAL mínima de 28 MHz para cobrir a banda 863-870 MHz, 29 MHz para a banda 902-928 MHz
7.2.1. POR
Se a aplicação exigir a desconexão do VDD do RFM69HCW, apesar da corrente extremamente baixa do modo Sleep, o usuário deverá
aguardar 10 ms a partir do final do ciclo POR antes de iniciar as comunicações pelo barramento SPI. O pino 6 (Reset) deve permanecer flutuando
durante
a sequência POR.
VDD
Redefinir pino
Indefinido
(saída)
Espere por O módulo está
10ms _ pronto a partir deste ponto
Observe que qualquer atividade CLKOUT também pode ser usada para detectar que o módulo está pronto.
Página 75
RFM69HCW
COMUNICAÇÕES AVANÇADAS E SENSORIZAÇÃO FICHA DE DADOS
Uma reinicialização manual do RFM69HCW é possível mesmo para aplicações nas quais o VDD não pode ser desconectado fisicamente.
O pino RESET deve ser puxado para cima por cem microssegundos e depois liberado. O usuário deve então esperar 5 ms antes de usar
o módulo.
Observe que, embora o pino RESET esteja alto, um consumo de sobrecorrente de até dez miliamperes pode ser visto no VDD.
Página 76
RFM69HCW
8. Informações de embalagem
Página 77
RFM69HCW
Página 78
RFM69HCW
DRFM69HCW —433 S2
Pacote
Banda de Operação
Tipo de modo
P/N: RFM69HCW-315S2
Módulo RFM69HCW na banda de 315 MHz, pacote SMD
P/N: RFM69HCW-433S2
Módulo RFM69HCW na banda de 433 MHz, pacote SMD
P/N: RFM69HCW-868S2
Módulo RFM69HCW na banda de 868 MHz, pacote SMD
P/N: RFM69HCW-915S2
Módulo RFM69HCW na banda de 915 MHz, SMD PackageV
http://www.hoperf.com
http://www.hoperf.cn ©2006, HOPE MICROELECTRONICS CO., LTD. Todos os direitos reservados.
Página 79