Esempio n. 1
0
        void Initialize()
        {
            Console.WriteLine("Initialize hardware...");

            // this causes unterrupts to fail, for some reason:
            //IDigitalInputPort test = Device.CreateDigitalInputPort(Device.Pins.D07);
            // this does not.
            IDigitalOutputPort test = Device.CreateDigitalOutputPort(Device.Pins.D07);

            Console.WriteLine("Made it here.");

            button1 = new PushButton(Device, Device.Pins.D12, Meadow.Hardware.ResistorMode.InternalPullDown);
            button2 = new PushButton(Device, Device.Pins.D13, Meadow.Hardware.ResistorMode.InternalPullDown);

            button1.PressStarted += Button1_PressStarted;
            button1.PressEnded   += Button1_PressEnded;
            button2.PressStarted += Button2_PressStarted;
            button2.PressEnded   += Button2_PressEnded;

            motorDriver = new Tb67h420ftg(Device,
                                          inA1: Device.Pins.D04, inA2: Device.Pins.D03, pwmA: Device.Pins.D01,
                                          inB1: Device.Pins.D05, inB2: Device.Pins.D06, pwmB: Device.Pins.D00,
                                          fault1: Device.Pins.D02, fault2: Device.Pins.D07,
                                          hbMode: Device.Pins.D09, tblkab: Device.Pins.D10);

            // 6V motors with a 12V input. this clamps them to 6V
            motorDriver.Motor1.MotorCalibrationMultiplier = 0.5f;
            motorDriver.Motor2.MotorCalibrationMultiplier = 0.5f;

            Console.WriteLine("Initialization complete.");
        }
Esempio n. 2
0
        void Initialize()
        {
            Console.WriteLine("Initialize hardware...");

            // this causes unterrupts to fail, for some reason:
            //IDigitalInputPort test = Device.CreateDigitalInputPort(Device.Pins.D07);
            // this does not.
            IDigitalOutputPort test = Device.CreateDigitalOutputPort(Device.Pins.D07);

            Console.WriteLine("Made it here.");

            button1 = new PushButton(Device, Device.Pins.D13, ResistorMode.InternalPullDown);
            button2 = new PushButton(Device, Device.Pins.D12, ResistorMode.InternalPullDown);

            button1.PressStarted += Button1_PressStarted;
            button1.PressEnded   += Button1_PressEnded;
            button2.PressStarted += Button2_PressStarted;
            button2.PressEnded   += Button2_PressEnded;

            motorDriver = new Tb67h420ftg(Device,
                                          inA1: Device.Pins.D04, inA2: Device.Pins.D03, pwmA: Device.Pins.D01,
                                          inB1: Device.Pins.D05, inB2: Device.Pins.D06, pwmB: Device.Pins.D00,
                                          fault1: Device.Pins.D02, fault2: Device.Pins.D07,
                                          hbMode: Device.Pins.D11, tblkab: Device.Pins.D10);

            // 6V motors with a 12V input. this clamps them to 6V
            motorDriver.Motor1.MotorCalibrationMultiplier = 0.5f;
            motorDriver.Motor2.MotorCalibrationMultiplier = 0.5f;

            Console.WriteLine("Init encoder");
            encoder = new RotaryEncoder(Device, Device.Pins.D09, Device.Pins.D15);
            //    encoder.Rotated += Encoder_Rotated;

            Console.WriteLine("Init display");
            var ssd1306 = new Ssd1306(Device.CreateI2cBus(), 60, Ssd1306.DisplayType.OLED128x32);

            display             = new GraphicsLibrary(ssd1306);
            display.CurrentFont = new Font8x12();

            Console.WriteLine("Initialization complete.");
            UpdateDisplay("Initialization", "Complete");
        }