Use LoRaWAN on mDot with IKS01A1 sensor board plugged into UDK board.
Dependencies: X_NUCLEO_IKS01A1 mbed LoRaWAN-lib SX1272Lib
Fork of LoRaWAN-demo-72 by
This project uses IKS01A1 driver library with pin definitions for mDot UDK arduino headers.
The mDot platform doesnt define arduino header pins, so they must be defined in the IKS01A1 driver library header.
system/timer.h
- Committer:
- dudmuck
- Date:
- 2016-08-17
- Revision:
- 6:72ea69843556
- Parent:
- 5:62862ef9480b
File content as of revision 6:72ea69843556:
/* / _____) _ | | ( (____ _____ ____ _| |_ _____ ____| |__ \____ \| ___ | (_ _) ___ |/ ___) _ \ _____) ) ____| | | || |_| ____( (___| | | | (______/|_____)_|_|_| \__)_____)\____)_| |_| (C)2013 Semtech Description: Timer objects and scheduling management License: Revised BSD License, see LICENSE.TXT file include in the project Maintainer: Miguel Luis and Gregory Cristian */ #ifndef __TIMER_H__ #define __TIMER_H__ #include "mbed.h" /*! * \brief Timer object description */ typedef struct TimerEvent_s { uint64_t value; void ( *Callback )( void ); Ticker Timer; }TimerEvent_t; /*! * \brief Timer time variable definition */ #ifndef TimerTime_t typedef uint64_t TimerTime_t; #endif /*! * \brief Inializes the timer used to get current time. * * \remark Current time corresponds to the time since system startup */ void TimerTimeCounterInit( void ); /*! * \brief Initializes the timer object * * \remark TimerSetValue function must be called before starting the timer. * this function initializes timestamp and reload value at 0. * * \param [IN] obj Structure containing the timer object parameters * \param [IN] callback Function callback called at the end of the timeout */ void TimerInit( TimerEvent_t *obj, void ( *callback )( void ) ); /*! * \brief Starts and adds the timer object to the list of timer events * * \param [IN] obj Structure containing the timer object parameters */ void TimerStart( TimerEvent_t *obj ); /*! * \brief Stops and removes the timer object from the list of timer events * * \param [IN] obj Structure containing the timer object parameters */ void TimerStop( TimerEvent_t *obj ); /*! * \brief Resets the timer object * * \param [IN] obj Structure containing the timer object parameters */ void TimerReset( TimerEvent_t *obj ); /*! * \brief Set timer new timeout value * * \param [IN] obj Structure containing the timer object parameters * \param [IN] value New timer timeout value */ void TimerSetValue( TimerEvent_t *obj, uint32_t value ); /*! * \brief Read the current time * * \retval time returns current time */ TimerTime_t TimerGetCurrentTime( void ); /*! * \brief Return the Time elapsed since a fix moment in Time * * \param [IN] savedTime fix moment in Time * \retval time returns elapsed time */ TimerTime_t TimerGetElapsedTime( TimerTime_t savedTime ); /*! * \brief Return the Time elapsed since a fix moment in Time * * \param [IN] eventInFuture fix moment in the future * \retval time returns difference between now and future event */ TimerTime_t TimerGetFutureTime( TimerTime_t eventInFuture ); #endif // __TIMER_H__