RTEMS 5.2
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
counter.h
Go to the documentation of this file.
1
9/*
10 * Copyright (c) 2014, 2018 embedded brains GmbH. All rights reserved.
11 *
12 * embedded brains GmbH
13 * Dornierstr. 4
14 * 82178 Puchheim
15 * Germany
16 * <rtems@embedded-brains.de>
17 *
18 * The license and distribution terms for this file may be
19 * found in the file LICENSE in this distribution or at
20 * http://www.rtems.org/license/LICENSE.
21 */
22
23#ifndef _RTEMS_SAPI_COUNTER_H
24#define _RTEMS_SAPI_COUNTER_H
25
26#include <rtems/score/cpu.h>
27
28#ifdef __cplusplus
29extern "C" {
30#endif /* __cplusplus */
31
62typedef CPU_Counter_ticks rtems_counter_ticks;
63
69static inline uint32_t rtems_counter_frequency( void )
70{
72}
73
79static inline rtems_counter_ticks rtems_counter_read( void )
80{
81 return _CPU_Counter_read();
82}
83
96static inline rtems_counter_ticks rtems_counter_difference(
99)
100{
101 return _CPU_Counter_difference( second, first );
102}
103
114);
115
125 uint32_t nanoseconds
126);
127
137
147
158void rtems_counter_initialize_converter( uint32_t frequency );
159
171
182void rtems_counter_delay_nanoseconds( uint32_t nanoseconds );
183
186#ifdef __cplusplus
187}
188#endif /* __cplusplus */
189
190#endif /* _RTEMS_SAPI_COUNTER_H */
rtems_counter_ticks rtems_counter_sbintime_to_ticks(int64_t sbt)
Converts signed binary time (sbintime_t) into counter ticks.
Definition: cpucounterconverter.c:43
uint64_t rtems_counter_ticks_to_nanoseconds(rtems_counter_ticks ticks)
Converts counter ticks into nanoseconds.
Definition: cpucounterconverter.c:28
int64_t rtems_counter_ticks_to_sbintime(rtems_counter_ticks ticks)
Converts counter ticks into signed binary time (sbintime_t).
Definition: cpucounterconverter.c:38
rtems_counter_ticks rtems_counter_nanoseconds_to_ticks(uint32_t nanoseconds)
Converts nanoseconds into counter ticks.
Definition: cpucounterconverter.c:33
void rtems_counter_delay_nanoseconds(uint32_t nanoseconds)
Busy wait for some nanoseconds.
Definition: delaynano.c:21
void rtems_counter_initialize_converter(uint32_t frequency)
Initializes the counter ticks to/from nanoseconds converter functions.
Definition: cpucounterconverter.c:48
void rtems_counter_delay_ticks(rtems_counter_ticks ticks)
Busy wait for some counter ticks.
Definition: delayticks.c:21
CPU_Counter_ticks rtems_counter_ticks
Unsigned integer type for counter values.
Definition: counter.h:62
uint32_t _CPU_Counter_frequency(void)
Returns the current CPU counter frequency in Hz.
Definition: system-clocks.c:112
CPU_Counter_ticks _CPU_Counter_read(void)
Returns the current CPU counter value.
Definition: system-clocks.c:117