Slave program for ranging, open for improvements

Dependencies:   SX1280Lib mbed

Committer:
LuisRuiz
Date:
Mon Apr 23 22:08:14 2018 +0000
Revision:
0:871af6563674
Ranging Slave for SX1280

Who changed what in which revision?

UserRevisionLine numberNew contents of line
LuisRuiz 0:871af6563674 1 /*
LuisRuiz 0:871af6563674 2 ______ _
LuisRuiz 0:871af6563674 3 / _____) _ | |
LuisRuiz 0:871af6563674 4 ( (____ _____ ____ _| |_ _____ ____| |__
LuisRuiz 0:871af6563674 5 \____ \| ___ | (_ _) ___ |/ ___) _ \
LuisRuiz 0:871af6563674 6 _____) ) ____| | | || |_| ____( (___| | | |
LuisRuiz 0:871af6563674 7 (______/|_____)_|_|_| \__)_____)\____)_| |_|
LuisRuiz 0:871af6563674 8 (C)2016 Semtech
LuisRuiz 0:871af6563674 9
LuisRuiz 0:871af6563674 10 Description: Timers
LuisRuiz 0:871af6563674 11
LuisRuiz 0:871af6563674 12 Maintainer: Gregory Cristian & Gilbert Menth
LuisRuiz 0:871af6563674 13 */
LuisRuiz 0:871af6563674 14
LuisRuiz 0:871af6563674 15 #include "mbed.h"
LuisRuiz 0:871af6563674 16 #include "Timers.h"
LuisRuiz 0:871af6563674 17
LuisRuiz 0:871af6563674 18
LuisRuiz 0:871af6563674 19 Ticker TickTimer;
LuisRuiz 0:871af6563674 20
LuisRuiz 0:871af6563674 21 static uint32_t SoftTimer = 0;
LuisRuiz 0:871af6563674 22 static void TimersIncSoftTimer( void );
LuisRuiz 0:871af6563674 23
LuisRuiz 0:871af6563674 24
LuisRuiz 0:871af6563674 25 void TimersInit( void )
LuisRuiz 0:871af6563674 26 {
LuisRuiz 0:871af6563674 27 TickTimer.attach_us( &TimersIncSoftTimer, 1000 ); // Ticks every millisecond
LuisRuiz 0:871af6563674 28 }
LuisRuiz 0:871af6563674 29
LuisRuiz 0:871af6563674 30 static void TimersIncSoftTimer( void )
LuisRuiz 0:871af6563674 31 {
LuisRuiz 0:871af6563674 32 SoftTimer++;
LuisRuiz 0:871af6563674 33 }
LuisRuiz 0:871af6563674 34
LuisRuiz 0:871af6563674 35 void TimersSetTimer( uint32_t *sTimer, uint32_t timeLength )
LuisRuiz 0:871af6563674 36 {
LuisRuiz 0:871af6563674 37 if( timeLength > MAX_TIMER_VALUE )
LuisRuiz 0:871af6563674 38 {
LuisRuiz 0:871af6563674 39 timeLength = MAX_TIMER_VALUE;
LuisRuiz 0:871af6563674 40 }
LuisRuiz 0:871af6563674 41 *sTimer = SoftTimer + timeLength;
LuisRuiz 0:871af6563674 42 }
LuisRuiz 0:871af6563674 43
LuisRuiz 0:871af6563674 44 uint32_t TimersTimerHasExpired ( const uint32_t * sTimer )
LuisRuiz 0:871af6563674 45 {
LuisRuiz 0:871af6563674 46 if( ( SoftTimer - *sTimer ) > 0x7fffffff )
LuisRuiz 0:871af6563674 47 {
LuisRuiz 0:871af6563674 48 return false;
LuisRuiz 0:871af6563674 49 }
LuisRuiz 0:871af6563674 50 return true;
LuisRuiz 0:871af6563674 51 }
LuisRuiz 0:871af6563674 52
LuisRuiz 0:871af6563674 53 uint32_t TimersTimerValue ( void )
LuisRuiz 0:871af6563674 54 {
LuisRuiz 0:871af6563674 55 return SoftTimer;
LuisRuiz 0:871af6563674 56 }