RaspberryIO_26/Unosquare.WiringPi/Timing.cs

36 lines
1.2 KiB
C#
Raw Normal View History

2019-12-06 21:09:52 +01:00
using System;
using Unosquare.RaspberryIO.Abstractions;
namespace Unosquare.WiringPi {
/// <summary>
/// Provides access to timing and threading properties and methods.
/// </summary>
public class Timing : ITiming {
/// <inheritdoc />
2019-12-04 18:57:18 +01:00
/// <summary>
2019-12-06 21:09:52 +01:00
/// This returns a number representing the number of milliseconds since your program
/// initialized the GPIO controller.
/// It returns an unsigned 32-bit number which wraps after 49 days.
2019-12-04 18:57:18 +01:00
/// </summary>
2019-12-06 21:09:52 +01:00
public UInt32 Milliseconds => Native.WiringPi.Millis();
/// <inheritdoc />
/// <summary>
/// This returns a number representing the number of microseconds since your
/// program initialized the GPIO controller
/// It returns an unsigned 32-bit number which wraps after approximately 71 minutes.
/// </summary>
public UInt32 Microseconds => Native.WiringPi.Micros();
/// <inheritdoc cref="ITiming.SleepMilliseconds(UInt32)" />
public static void Sleep(UInt32 millis) => Native.WiringPi.Delay(millis);
/// <inheritdoc />
public void SleepMilliseconds(UInt32 millis) => Sleep(millis);
/// <inheritdoc />
public void SleepMicroseconds(UInt32 micros) => Native.WiringPi.DelayMicroseconds(micros);
}
2019-12-04 18:57:18 +01:00
}