private static void DoPWM(IWrapI2C i2cWrapper, ILogger logger, ITimer timer, int address) { var driverHandler = new ServoDriver(i2cWrapper, address, logger, timer); driverHandler.Configure(); driverHandler.Reset(); Console.WriteLine($"Obtained hanlder: {driverHandler}"); Console.ReadKey(); string readedValue; while (true) { Console.WriteLine("Give me value:"); readedValue = Console.ReadLine(); if (string.IsNullOrEmpty(readedValue)) { break; } driverHandler.SetPWM(1, int.Parse(readedValue)); } }
public ServoDriver(IWrapI2C i2cWrapper, int deviceAddress, ILogger logger, ITimer timer) : base(deviceAddress, logger, timer) { _i2cWrapper = FluentGuard <IWrapI2C> .On(i2cWrapper).WhenNull().ThrowOnErrors(); }