View on GitHub

NRF24LE1

Ferramentas para programação do módulo NRF24LE1.

Download this project as a .zip file Download this project as a tar.gz file

Blink - Exemplo para o nRF24LE1

Esse exemplo pisca um LED.

Pre-requisitos

Código

#include<Nordic\reg24le1.h> // Registradores do nrf24le1
#include<hal_delay.h> // HAL para as funções de delay

/**
 * Função de inicialização das funções que serão utilizadas
 */
void setup(){
    // Inicializa os pinos do Port 0 e Port 1 todos como entradas.
    P0DIR = 0xFF; P1DIR = 0xFF;
    // Configura o pino 3 do Port 0 como saída
    P0DIR &= ~(1 << 3);
}

/**
 * Está função é chamada repetidivamente.
 */
void loop(){
    // Inverte o Pino 0 do Port 0
    P03 = !P03;
    // Aguarda 1s
    delay_ms(1000);
}

/**
 * Função Main, indicando como funcionará o sitema.
 * Ele está simplificado para funcionar semelhante ao arduino.
 */
void main(){
    setup();
    while(1){
        loop();
    }
}

Conexões

PINO Conexão
VCC Alimentação
GND Ground
P03 LED com resistor

Explicação

P0DIR

O registrador P0DIR é responsável por determinar se um pino será uma entrada (1) ou uma saída (0), sendo que cada bit dele equivale a um pino do Port 0. Por exemplo, se P0DIR = 0xF7 (em binário 1111 0111), então:

Bit Pino Valor Estado
0 P00 1 INPUT
1 P01 1 INPUT
2 P02 1 INPUT
3 P03 0 OUTPUT
4 P04 1 INPUT
5 P05 1 INPUT
6 P06 1 INPUT
7 P07 1 INPUT

Hexadecimais

É comum o uso de hexadecimais para representar os valores, pois é rápida a conversão de hexadecimal para binário, cada digito hex equivale a um conjunto de 4 bits.

Tabela para conversão rápida

Hex Binary
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
8 1000
9 1001
A 1010
B 1011
C 1100
D 1101
E 1110
F 1111
10 0001 0000
20 0010 0000
40 0100 0000
80 1000 0000

Operadores BitWise

Para manipulação de bits são utilizados os operados bitwise. São eles:

0b10011110 & 0b11110111 = 0b10010110

0b10011110 | 0b00100000 = 0b10111110

~0b00001000 = 0b11110111

1<3 = 0b100 = 0b00001000

0b100>3 = 0b1 = 0b00000001

Mascáras

home