Maniacbug's RF24 arduino library ported to mbed. Tested, it works for Nucleo F411

Dependents:   RF24Network_Send RF24Network_Receive WeatherStation maple_chotobot_rf_motores ... more

Committer:
akashvibhute
Date:
Tue Aug 23 09:28:00 2016 +0000
Revision:
9:ef74df512fed
Parent:
7:32d6957f37ae
disabled radio details printing

Who changed what in which revision?

UserRevisionLine numberNew contents of line
akashvibhute 2:3bdf0d9bb71f 1
akashvibhute 2:3bdf0d9bb71f 2 /*
akashvibhute 2:3bdf0d9bb71f 3 Copyright (C) 2011 J. Coliz <maniacbug@ymail.com>
akashvibhute 2:3bdf0d9bb71f 4 This program is free software; you can redistribute it and/or
akashvibhute 2:3bdf0d9bb71f 5 modify it under the terms of the GNU General Public License
akashvibhute 2:3bdf0d9bb71f 6 version 2 as published by the Free Software Foundation.
akashvibhute 2:3bdf0d9bb71f 7 */
akashvibhute 6:5cc7136648d1 8
akashvibhute 3:e94be00fd19e 9 /*
akashvibhute 3:e94be00fd19e 10 * Mbed support added by Akash Vibhute <akash.roboticist@gmail.com>
akashvibhute 3:e94be00fd19e 11 * Porting completed on Nov/05/2015
akashvibhute 2:3bdf0d9bb71f 12 *
akashvibhute 6:5cc7136648d1 13 * Updated 1: Synced with TMRh20's RF24 library on Nov/04/2015 from https://github.com/TMRh20
akashvibhute 6:5cc7136648d1 14 * Updated 2: Synced with TMRh20's RF24 library on Apr/18/2015 from https://github.com/TMRh20
akashvibhute 2:3bdf0d9bb71f 15 *
akashvibhute 2:3bdf0d9bb71f 16 */
akashvibhute 6:5cc7136648d1 17
akashvibhute 2:3bdf0d9bb71f 18
akashvibhute 2:3bdf0d9bb71f 19 #ifndef __RF24_CONFIG_H__
akashvibhute 2:3bdf0d9bb71f 20 #define __RF24_CONFIG_H__
akashvibhute 2:3bdf0d9bb71f 21
akashvibhute 2:3bdf0d9bb71f 22 /*** USER DEFINES: ***/
akashvibhute 2:3bdf0d9bb71f 23 //#define FAILURE_HANDLING
akashvibhute 2:3bdf0d9bb71f 24 //#define SERIAL_DEBUG
akashvibhute 2:3bdf0d9bb71f 25 //#define MINIMAL
akashvibhute 2:3bdf0d9bb71f 26 /**********************/
akashvibhute 2:3bdf0d9bb71f 27 #define rf24_max(a,b) (a>b?a:b)
akashvibhute 2:3bdf0d9bb71f 28 #define rf24_min(a,b) (a<b?a:b)
akashvibhute 2:3bdf0d9bb71f 29
akashvibhute 2:3bdf0d9bb71f 30
akashvibhute 2:3bdf0d9bb71f 31 #include <mbed.h>
akashvibhute 2:3bdf0d9bb71f 32
akashvibhute 2:3bdf0d9bb71f 33 // RF modules support 10 Mhz SPI bus speed
akashvibhute 2:3bdf0d9bb71f 34 const uint32_t RF_SPI_SPEED = 10000000;
akashvibhute 2:3bdf0d9bb71f 35
akashvibhute 6:5cc7136648d1 36 #define HIGH 1
akashvibhute 6:5cc7136648d1 37 #define LOW 0
akashvibhute 6:5cc7136648d1 38
akashvibhute 6:5cc7136648d1 39 //#include <stdint.h>
akashvibhute 6:5cc7136648d1 40 //#include <stdio.h>
akashvibhute 6:5cc7136648d1 41 //#include <string.h>
akashvibhute 2:3bdf0d9bb71f 42
akashvibhute 2:3bdf0d9bb71f 43 #define _BV(x) (1<<(x))
akashvibhute 2:3bdf0d9bb71f 44 #define _SPI SPI
akashvibhute 2:3bdf0d9bb71f 45
akashvibhute 2:3bdf0d9bb71f 46 #ifdef SERIAL_DEBUG
akashvibhute 2:3bdf0d9bb71f 47 #define IF_SERIAL_DEBUG(x) ({x;})
akashvibhute 2:3bdf0d9bb71f 48 #else
akashvibhute 2:3bdf0d9bb71f 49 #define IF_SERIAL_DEBUG(x)
akashvibhute 2:3bdf0d9bb71f 50 #endif
akashvibhute 2:3bdf0d9bb71f 51
akashvibhute 7:32d6957f37ae 52 //#define printf_P printf
akashvibhute 7:32d6957f37ae 53 #define printf_P
akashvibhute 6:5cc7136648d1 54 //#define _BV(bit) (1<<(bit))
akashvibhute 2:3bdf0d9bb71f 55 #define pgm_read_byte(addr) (*(const unsigned char *)(addr))
akashvibhute 2:3bdf0d9bb71f 56
akashvibhute 2:3bdf0d9bb71f 57 typedef uint16_t prog_uint16_t;
akashvibhute 2:3bdf0d9bb71f 58 #define PSTR(x) (x)
akashvibhute 6:5cc7136648d1 59 #define sprintf(...) os_sprintf( __VA_ARGS__ )
akashvibhute 7:32d6957f37ae 60 //#define printf_P printf
akashvibhute 7:32d6957f37ae 61 #define printf_P
akashvibhute 6:5cc7136648d1 62 #define strlen_P strlen
akashvibhute 6:5cc7136648d1 63 #define PROGMEM
akashvibhute 6:5cc7136648d1 64 #define pgm_read_byte(addr) (*(const unsigned char *)(addr))
akashvibhute 6:5cc7136648d1 65 #define pgm_read_word(p) (*(p))
akashvibhute 6:5cc7136648d1 66 #define PRIPSTR "%s"
akashvibhute 2:3bdf0d9bb71f 67
akashvibhute 2:3bdf0d9bb71f 68 #endif // __RF24_CONFIG_H__
akashvibhute 6:5cc7136648d1 69