Pracovni prvni odevzdani - zatim nefunkcni!

This commit is contained in:
2018-06-26 10:48:12 +02:00
parent 76eae4e788
commit 691ecffe39
20 changed files with 2150 additions and 34 deletions

View File

@ -0,0 +1,36 @@
extern "C" {
#include <stdlib.h>
#include <string.h>
#include <inttypes.h>
}
#include <Arduino.h>
#include "uinterval.h"
// Public Methods //////////////////////////////////////////////////////////////
uint32_t uInterval::remains(void)
{
return _timeout - (micros() - _timefrom);
}
uint32_t uInterval::elapsed(void)
{
return micros() - _timefrom;
}
bool uInterval::expired(void)
{
if ((micros() - _timefrom) >= _timeout)
return true;
else
return false;
}
void uInterval::set(uint32_t tmout)
{
_timefrom = micros();
_timeout = tmout;
}

30
lib/uinterval/uinterval.h Normal file
View File

@ -0,0 +1,30 @@
#ifndef uinterval_h
#define uinterval_h
/* uInterval
* Copyright (C) 2014, 2016 Pavel Brychta http://www.xpablo.cz
*
* 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 <inttypes.h>
class uInterval
{
protected:
uint32_t _timefrom;
uint32_t _timeout;
public:
bool expired(void);
void set(uint32_t tmout);
uint32_t elapsed(void);
uint32_t remains(void);
};
#endif
// EOF