Application example using LoRaWAN-lib MAC layer implementation for STM32 + SX1276 on OpenChirp
Dependencies: mbed LoRaWAN-lib SX1276Lib
board/board.cpp@13:779fef3e4573, 2019-09-15 (annotated)
- Committer:
- nimita23
- Date:
- Sun Sep 15 17:10:06 2019 +0000
- Revision:
- 13:779fef3e4573
- Parent:
- 9:ee9dcbb9708d
led working
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mluis | 0:92bca02df485 | 1 | /* |
mluis | 0:92bca02df485 | 2 | / _____) _ | | |
mluis | 0:92bca02df485 | 3 | ( (____ _____ ____ _| |_ _____ ____| |__ |
mluis | 0:92bca02df485 | 4 | \____ \| ___ | (_ _) ___ |/ ___) _ \ |
mluis | 0:92bca02df485 | 5 | _____) ) ____| | | || |_| ____( (___| | | | |
mluis | 0:92bca02df485 | 6 | (______/|_____)_|_|_| \__)_____)\____)_| |_| |
mluis | 0:92bca02df485 | 7 | (C)2015 Semtech |
mluis | 0:92bca02df485 | 8 | |
mluis | 0:92bca02df485 | 9 | Description: Target board general functions implementation |
mluis | 0:92bca02df485 | 10 | |
mluis | 0:92bca02df485 | 11 | License: Revised BSD License, see LICENSE.TXT file include in the project |
mluis | 0:92bca02df485 | 12 | |
mluis | 0:92bca02df485 | 13 | Maintainer: Miguel Luis and Gregory Cristian |
mluis | 0:92bca02df485 | 14 | */ |
mluis | 0:92bca02df485 | 15 | #include "mbed.h" |
mluis | 0:92bca02df485 | 16 | #include "board.h" |
mluis | 0:92bca02df485 | 17 | |
mluis | 1:352f608c3337 | 18 | SX1276MB1xAS Radio( NULL ); |
mluis | 1:352f608c3337 | 19 | |
mluis | 9:ee9dcbb9708d | 20 | /*! |
mluis | 9:ee9dcbb9708d | 21 | * Nested interrupt counter. |
mluis | 9:ee9dcbb9708d | 22 | * |
mluis | 9:ee9dcbb9708d | 23 | * \remark Interrupt should only be fully disabled once the value is 0 |
mluis | 9:ee9dcbb9708d | 24 | */ |
mluis | 9:ee9dcbb9708d | 25 | static uint8_t IrqNestLevel = 0; |
mluis | 9:ee9dcbb9708d | 26 | |
mluis | 9:ee9dcbb9708d | 27 | void BoardDisableIrq( void ) |
mluis | 9:ee9dcbb9708d | 28 | { |
mluis | 9:ee9dcbb9708d | 29 | __disable_irq( ); |
mluis | 9:ee9dcbb9708d | 30 | IrqNestLevel++; |
mluis | 9:ee9dcbb9708d | 31 | } |
mluis | 9:ee9dcbb9708d | 32 | |
mluis | 9:ee9dcbb9708d | 33 | void BoardEnableIrq( void ) |
mluis | 9:ee9dcbb9708d | 34 | { |
mluis | 9:ee9dcbb9708d | 35 | IrqNestLevel--; |
mluis | 9:ee9dcbb9708d | 36 | if( IrqNestLevel == 0 ) |
mluis | 9:ee9dcbb9708d | 37 | { |
mluis | 9:ee9dcbb9708d | 38 | __enable_irq( ); |
mluis | 9:ee9dcbb9708d | 39 | } |
mluis | 9:ee9dcbb9708d | 40 | } |
mluis | 9:ee9dcbb9708d | 41 | |
mluis | 0:92bca02df485 | 42 | void BoardInit( void ) |
mluis | 0:92bca02df485 | 43 | { |
mluis | 0:92bca02df485 | 44 | TimerTimeCounterInit( ); |
mluis | 0:92bca02df485 | 45 | } |
mluis | 0:92bca02df485 | 46 | |
mluis | 0:92bca02df485 | 47 | |
mluis | 1:352f608c3337 | 48 | uint8_t BoardGetBatteryLevel( void ) |
mluis | 0:92bca02df485 | 49 | { |
mluis | 0:92bca02df485 | 50 | return 0xFE; |
mluis | 0:92bca02df485 | 51 | } |