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."); }
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"); }