Clock implementation for Hardware Timer 2. More...

#include <Clocks.h>

Inheritance diagram for Timer2Clock:
[legend]
Collaboration diagram for Timer2Clock:
[legend]

Public Types

using TickType = uint32_t
 
using TicksConst = TicksConst< Clock, ticks >
 
using TimeConst = TimeConst< Clock, unit, time >
 
using TicksPerUnit = std::ratio_divide< std::ratio< frequency_ >, UnitTickRatio< unit > >
 
using TimeSource = TimeSource< Clock, unit, TimeType >
 
using Ticks = Ticks< Clock, T >
 
using MaxTicks = TicksConst< maxTicks_ >
 
using MaxTime = typename MaxTicks::template TimeConst< unit >
 

Static Public Member Functions

static constexpr const char * typeName ()
 
static uint32_t ticks ()
 
static constexpr uint32_t frequency ()
 
static constexpr MaxTicks maxTicks ()
 
static constexpr MaxTime< unit > maxTime ()
 
static Ratio32 ticksPerUnit (Unit unit)
 Get ticks per unit as a Ratio object. More...
 
static constexpr TimeConst< unit, time > timeConst ()
 Class template defining a fixed time quantity. More...
 
static constexpr TicksConst< ticksticksConst ()
 Class template defining a fixed tick quantity. More...
 
static constexpr TimeSource< unit, TimeType > timeSource ()
 Create a Time Source for this Clock. More...
 
static Ticks< TimeType > timeToTicks (TimeType time)
 Get the number of ticks for a given time. More...
 
static Time< TimeType > ticksToTime (TimeType ticks)
 Get the time for a given number of clock ticks. More...
 
static String toString ()
 

Detailed Description

Clock implementation for Hardware Timer 2.

Note
Prescaler is fixed
See also
See driver/hw_timer.h

Member Typedef Documentation

◆ MaxTicks

using NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::MaxTicks = TicksConst<maxTicks_>
inherited

◆ MaxTime

using NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::MaxTime = typename MaxTicks::template TimeConst<unit>
inherited

◆ Ticks

using NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::Ticks = Ticks<Clock, T>
inherited

◆ TicksConst

using NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::TicksConst = TicksConst<Clock, ticks>
inherited

◆ TicksPerUnit

using NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::TicksPerUnit = std::ratio_divide<std::ratio<frequency_>, UnitTickRatio<unit> >
inherited

◆ TickType

using NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::TickType = uint32_t
inherited

◆ TimeConst

using NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::TimeConst = TimeConst<Clock, unit, time>
inherited

◆ TimeSource

using NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::TimeSource = TimeSource<Clock, unit, TimeType>
inherited

Member Function Documentation

◆ frequency()

static constexpr uint32_t NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::frequency ( )
inlinestaticinherited

◆ maxTicks()

static constexpr MaxTicks NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::maxTicks ( )
inlinestaticinherited

◆ maxTime()

static constexpr MaxTime<unit> NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::maxTime ( )
inlinestaticinherited

◆ ticks()

static uint32_t Timer2Clock::ticks ( )
inlinestatic

◆ ticksConst()

static constexpr TicksConst<ticks> NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::ticksConst ( )
inlinestaticinherited

Class template defining a fixed tick quantity.

Template Parameters
ticks
Return values
TicksConst<Clock,ticks>

◆ ticksPerUnit()

static Ratio32 NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::ticksPerUnit ( Unit  unit)
inlinestaticinherited

Get ticks per unit as a Ratio object.

Return values
BasicRatio32

◆ ticksToTime()

static Time<TimeType> NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::ticksToTime ( TimeType  ticks)
inlinestaticinherited

Get the time for a given number of clock ticks.

Parameters
ticks
Return values
TimeTypeTime count, rounded to the nearest unit

◆ timeConst()

static constexpr TimeConst<unit, time> NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::timeConst ( )
inlinestaticinherited

Class template defining a fixed time quantity.

Template Parameters
time
Return values
TimeConst

◆ timeSource()

static constexpr TimeSource<unit, TimeType> NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::timeSource ( )
inlinestaticinherited

Create a Time Source for this Clock.

Template Parameters
unit
TimeType

◆ timeToTicks()

static Ticks<TimeType> NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::timeToTicks ( TimeType  time)
inlinestaticinherited

Get the number of ticks for a given time.

Parameters
time
Return values
TimeTypeTick count, rounded to the nearest tick

◆ toString()

static String NanoTime::Clock< Timer2Clock , frequency_, uint32_t , maxTicks_ >::toString ( )
inlinestaticinherited

◆ typeName()

static constexpr const char* Timer2Clock::typeName ( )
inlinestatic

The documentation for this struct was generated from the following file: