mbed OS5

Fork of UIPEthernet by Zoltan Hudak

utility/millis.cpp

Committer:
pilotak
Date:
2017-08-06
Revision:
9:e55652bed36c
Parent:
8:4acb22344932

File content as of revision 9:e55652bed36c:

/*
 uip_millis.cpp
 Copyright (c) 2015 Zoltan Hudak <hudakz@inbox.com>
 All rights reserved.

 This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation, either version 3 of the License, or
 (at your option) any later version.

 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
#include "millis.h"
#include "mbed.h"

volatile unsigned long  _millis;

Ticker millisTicker;


/**
 * @brief
 * @note
 * @param
 * @retval
 */
extern "C" void tick(void) {
    _millis++;
}

/**
 * @brief
 * @note
 * @param
 * @retval
 */
extern "C" void millis_start(void) {
    _millis = 0;
    millisTicker.attach_us(&tick, 1000);
}

/**
 * @brief
 * @note
 * @param
 * @retval
 */
extern "C" unsigned long millis(void) {
    return _millis;
}