Ejemplo n.º 1
0
        private static void RideTheHood(ILogger logger)
        {
            var lFNumber = 1;
            var lBNumber = 1;
            var rFNumber = 1;
            var rBNumber = 1;

            IPin lF = new DOPin(lFNumber);
            IPin lB = new DOPin(lBNumber);
            IPin rF = new DOPin(rFNumber);
            IPin rB = new DOPin(rBNumber);

            var gpio = new GPIOWrapper();

            var rider = new Rider(gpio, lF, rF, lB, rB, logger);

            rider.MoveAhead();
            Thread.Sleep(2000);
            rider.MoveBack();
            Thread.Sleep(2000);
            rider.TurnLeft();
            Thread.Sleep(2000);
            rider.TurnRight();
            Thread.Sleep(2000);
            rider.TurnLeftInPlace();
            Thread.Sleep(2000);
            rider.TurnRightInPlace();
            Thread.Sleep(2000);

            rider.Stop();
        }
        public void When_Constructor_IsCalled_Then_NoExceptions_AreThrown()
        {
            //a
            var gpioWrapper = new GPIOWrapper();
            var timer       = new HighPrecisionTimer2(gpioWrapper);

            //aa
            //aaa
        }
 public bool TryGetValue(int key, out IGPIO value)
 {
     if (key >= Count)
     {
         value = null;
         return(false);
     }
     value = new GPIOWrapper(key, connector, disconnector);
     return(true);
 }
Ejemplo n.º 4
0
        public Rider(GPIOWrapper gpio, IPin leftPin, IPin rightPin, ILogger logger)
        {
            _gpio         = gpio;
            _leftPin      = leftPin;
            _leftBackward = null;

            _rightPin      = rightPin;
            _rightBackward = null;

            log = logger;
        }
Ejemplo n.º 5
0
        public Rider(GPIOWrapper gpio, IPin leftForward, IPin rightForward, IPin leftBackward, IPin rightBackward, ILogger logger)
        {
            _gpio         = gpio;
            _leftForward  = leftForward;
            _leftBackward = leftBackward;

            _rightForward  = rightForward;
            _rightBackward = rightBackward;

            log = logger;
        }
Ejemplo n.º 6
0
        private static void DoSonicMeasuring()
        {
            var gpioWrapper   = new GPIOWrapper();
            var timingWrapper = new TimingWrapper();

            var sonicSensorDriver = new SonicSensorDriver(gpioWrapper, timingWrapper);

            sonicSensorDriver.Configure();

            do
            {
                sonicSensorDriver.GetDistance();

                Thread.Sleep(500);
            }while (true);
        }
        public void When_TicksToDistanceConverter_IsCalled_For_NTicks_Then_ReturnValue_IsProperLong()
        {
            //a
            var fixture = new Fixture();

            fixture.Customize(new AutoMoqCustomization {
                ConfigureMembers = true
            });

            var wrapper            = fixture.Create <IWrapGPIO>();
            var gpioWrapper        = new GPIOWrapper();
            var highPrecisionTimer = new HighPrecisionTimer2(gpioWrapper);
            var sleptTicks         = new Random().Next(1, 100000);

            //aa
            var calculatedDistance = highPrecisionTimer.ConvertTicksToDistance(sleptTicks);

            //aaa
            var ticksPerMicrosecond    = TimeSpan.TicksPerMillisecond / 1000;
            var calculatedBaseDistance = sleptTicks / ticksPerMicrosecond * 0.034 / 2;

            Assert.Equal(calculatedBaseDistance, calculatedDistance);
        }