MAX32625PICO LP0 mode

Dependencies:   SX1276GenericLib USBDevice

Fork of PICO_LP0 by Walter Luu

Committer:
walterluu
Date:
Fri Oct 16 06:48:08 2020 +0000
Revision:
7:c92ed2d6e344
Parent:
3:85fc843a9d7d
MAX32625PICO LP0 mode;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
walterluu 3:85fc843a9d7d 1 #include "mbed.h"
walterluu 3:85fc843a9d7d 2 #include "PinMap.h"
walterluu 3:85fc843a9d7d 3 //#include "GenericPingPong2.h"
walterluu 3:85fc843a9d7d 4 //#include "support.h"
walterluu 3:85fc843a9d7d 5 #include "sx1276-mbed-hal.h"
walterluu 3:85fc843a9d7d 6 #include "global_buffers.h" //adding this for development
walterluu 3:85fc843a9d7d 7
walterluu 3:85fc843a9d7d 8 #define FEATURE_LORA
walterluu 3:85fc843a9d7d 9
walterluu 3:85fc843a9d7d 10
walterluu 7:c92ed2d6e344 11 //#ifdef FEATURE_LORA // in main.cpp
walterluu 3:85fc843a9d7d 12
walterluu 3:85fc843a9d7d 13 /* Set this flag to '1' to display debug messages on the console */
walterluu 7:c92ed2d6e344 14 //#define DEBUG_MESSAGE 1
walterluu 3:85fc843a9d7d 15
walterluu 3:85fc843a9d7d 16 /* Set this flag to '1' to use the LoRa modulation or to '0' to use FSK modulation */
walterluu 7:c92ed2d6e344 17 //#define USE_MODEM_LORA 1
walterluu 7:c92ed2d6e344 18 //#define USE_MODEM_FSK !USE_MODEM_LORA
walterluu 7:c92ed2d6e344 19 //#define RF_FREQUENCY RF_FREQUENCY_915_0 // Hz
walterluu 7:c92ed2d6e344 20 //#define TX_OUTPUT_POWER 14 // 14 dBm
walterluu 3:85fc843a9d7d 21
walterluu 7:c92ed2d6e344 22 //#if USE_MODEM_LORA == 1
walterluu 3:85fc843a9d7d 23
walterluu 7:c92ed2d6e344 24 //#define LORA_BANDWIDTH 125000 // LoRa default, details in SX1276::BandwidthMap
walterluu 7:c92ed2d6e344 25 //#define LORA_SPREADING_FACTOR LORA_SF7
walterluu 7:c92ed2d6e344 26 //#define LORA_CODINGRATE LORA_ERROR_CODING_RATE_4_5
walterluu 3:85fc843a9d7d 27
walterluu 7:c92ed2d6e344 28 //#define LORA_PREAMBLE_LENGTH 8 // Same for Tx and Rx
walterluu 7:c92ed2d6e344 29 //#define LORA_SYMBOL_TIMEOUT 5 // Symbols
walterluu 7:c92ed2d6e344 30 //#define LORA_FIX_LENGTH_PAYLOAD_ON false
walterluu 7:c92ed2d6e344 31 //#define LORA_FHSS_ENABLED false
walterluu 7:c92ed2d6e344 32 //#define LORA_NB_SYMB_HOP 4
walterluu 7:c92ed2d6e344 33 //#define LORA_IQ_INVERSION_ON false
walterluu 7:c92ed2d6e344 34 //#define LORA_CRC_ENABLED true
walterluu 3:85fc843a9d7d 35
walterluu 7:c92ed2d6e344 36 //#elif USE_MODEM_FSK == 1
walterluu 3:85fc843a9d7d 37
walterluu 7:c92ed2d6e344 38 //#define FSK_FDEV 25000 // Hz
walterluu 7:c92ed2d6e344 39 //#define FSK_DATARATE 19200 // bps
walterluu 7:c92ed2d6e344 40 //#define FSK_BANDWIDTH 50000 // Hz
walterluu 7:c92ed2d6e344 41 //#define FSK_AFC_BANDWIDTH 83333 // Hz
walterluu 7:c92ed2d6e344 42 //#define FSK_PREAMBLE_LENGTH 5 // Same for Tx and Rx
walterluu 7:c92ed2d6e344 43 //#define FSK_FIX_LENGTH_PAYLOAD_ON false
walterluu 7:c92ed2d6e344 44 //#define FSK_CRC_ENABLED true
walterluu 3:85fc843a9d7d 45
walterluu 7:c92ed2d6e344 46 //#else
walterluu 7:c92ed2d6e344 47 // #error "Please define a modem in the compiler options."
walterluu 7:c92ed2d6e344 48 //#endif
walterluu 3:85fc843a9d7d 49
walterluu 3:85fc843a9d7d 50
walterluu 7:c92ed2d6e344 51 //#define RX_TIMEOUT_VALUE 3500 // in ms
walterluu 3:85fc843a9d7d 52
walterluu 7:c92ed2d6e344 53 //#endif
walterluu 3:85fc843a9d7d 54
walterluu 3:85fc843a9d7d 55 /*
walterluu 3:85fc843a9d7d 56 * Global variables declarations
walterluu 3:85fc843a9d7d 57 */
walterluu 3:85fc843a9d7d 58 //typedef enum
walterluu 3:85fc843a9d7d 59 //{
walterluu 3:85fc843a9d7d 60 // LOWPOWER = 0,
walterluu 3:85fc843a9d7d 61 // IDLE,
walterluu 3:85fc843a9d7d 62 //
walterluu 3:85fc843a9d7d 63 // RX,
walterluu 3:85fc843a9d7d 64 // RX_TIMEOUT,
walterluu 3:85fc843a9d7d 65 // RX_ERROR,
walterluu 3:85fc843a9d7d 66 //
walterluu 3:85fc843a9d7d 67 // TX,
walterluu 3:85fc843a9d7d 68 // TX_TIMEOUT,
walterluu 3:85fc843a9d7d 69 //
walterluu 3:85fc843a9d7d 70 // CAD,
walterluu 3:85fc843a9d7d 71 // CAD_DONE
walterluu 3:85fc843a9d7d 72 //} AppStates_t;
walterluu 3:85fc843a9d7d 73
walterluu 3:85fc843a9d7d 74 //const uint8_t PingMsg[] = { 0xff, 0xff, 0x00, 0x00, 'P', 'I', 'N', 'G'};// "PING";
walterluu 3:85fc843a9d7d 75 //const uint8_t PongMsg[] = { 0xff, 0xff, 0x00, 0x00, 'P', 'O', 'N', 'G'};// "PONG";
walterluu 3:85fc843a9d7d 76
walterluu 3:85fc843a9d7d 77 extern void dump(const char *title, const void *data, int len, bool dwords = false);
walterluu 3:85fc843a9d7d 78 int SX1276PingPongSetup(uint8_t *BufferTxFromMain, uint8_t *BufferRxFromMain);