79 lines
1.4 KiB
C
79 lines
1.4 KiB
C
#include <stdint.h>
|
|
#include <stdlib.h>
|
|
|
|
#ifndef RF24_h
|
|
#define RF24_h
|
|
|
|
#include "nRF24L01.h"
|
|
|
|
void rf24_write_lreg(const uint8_t reg, const uint8_t * val, size_t len);
|
|
void rf24_write_reg(const uint8_t reg, const uint8_t val);
|
|
uint8_t rf24_read_reg(const uint8_t reg);
|
|
void rf24_update_fifo_status();
|
|
void rf24_update_status();
|
|
|
|
extern uint8_t rf24_status;
|
|
extern uint8_t rf24_fifo;
|
|
void rf24_setup();
|
|
void rf24_init();
|
|
void rf24_RXMode();
|
|
void rf24_Off();
|
|
int rf24_receive(uint8_t * buffer);
|
|
|
|
/*
|
|
void rf24_RXMode();
|
|
void rf24_TXMode();
|
|
int rf24_send(uint8_t * buffer, int len);
|
|
int rf24_waitforTX();
|
|
*/
|
|
|
|
#if defined (__AVR_ATtiny84__) || defined (__AVR_ATtiny84A__)
|
|
|
|
#define CE_PIN_PORT UNDEF
|
|
#define CE_PIN_DDR UNDEF
|
|
#define CE_PIN_BIT UNDEF
|
|
|
|
#define CSN_PIN_PORT PORTB
|
|
#define CSN_PIN_DDR DDRB
|
|
#define CSN_PIN_BIT PB2
|
|
|
|
#elif defined(__AVR_ATmega32U4__)
|
|
|
|
#define CE_PIN_PORT PORTB
|
|
#define CE_PIN_DDR DDRB
|
|
#define CE_PIN_BIT PB4
|
|
|
|
#define CSN_PIN_PORT PORTB
|
|
#define CSN_PIN_DDR DDRB
|
|
#define CSN_PIN_BIT PB5
|
|
|
|
#elif defined(__AVR_ATmega32A__)
|
|
|
|
// CARTE PYRORF
|
|
|
|
#define CE_PIN_PORT PORTB
|
|
#define CE_PIN_DDR DDRB
|
|
#define CE_PIN_BIT PB0
|
|
|
|
#define CSN_PIN_PORT PORTB
|
|
#define CSN_PIN_DDR DDRB
|
|
#define CSN_PIN_BIT PB1
|
|
|
|
|
|
#elif defined(__AVR_ATmega2560__)
|
|
|
|
// ARDUINO MEGA
|
|
|
|
#define CE_PIN_PORT PORTL
|
|
#define CE_PIN_DDR DDRL
|
|
#define CE_PIN_BIT PL0
|
|
|
|
#define CSN_PIN_PORT PORTL
|
|
#define CSN_PIN_DDR DDRL
|
|
#define CSN_PIN_BIT PL1
|
|
|
|
|
|
#endif
|
|
|
|
|
|
#endif
|