private static void PwmRaspiTest(RaspberryPiBoard raspi) { int pinNumber = 12; // PWM0 pin Console.WriteLine("Blinking and dimming an LED - Press any key to quit"); while (!Console.KeyAvailable) { GpioController ctrl = raspi.CreateGpioController(); ctrl.OpenPin(pinNumber); ctrl.SetPinMode(pinNumber, PinMode.Output); ctrl.Write(pinNumber, PinValue.Low); Thread.Sleep(500); ctrl.Write(pinNumber, PinValue.High); Thread.Sleep(1000); ctrl.ClosePin(pinNumber); ctrl.Dispose(); var pwm = raspi.CreatePwmChannel(0, 0, 9000, 0.1); pwm.Start(); for (int i = 0; i < 10; i++) { pwm.DutyCycle = i * 0.1; Thread.Sleep(500); } pwm.Stop(); pwm.Dispose(); } Console.ReadKey(true); }
private static void RaspberryPiTest() { using var raspi = new RaspberryPiBoard(); PwmRaspiTest(raspi); SpiRaspiTestWithSoftwareCs(raspi); SpiRaspiTestWithHardwareCs(raspi); }
public void GetDefaultSpiPins() { RaspberryPiBoard b = new RaspberryPiBoard(); var pins = b.GetDefaultPinAssignmentForSpi(new SpiConnectionSettings(0, -1)); Assert.Equal(9, pins[0]); Assert.Equal(10, pins[1]); Assert.Equal(11, pins[2]); }
public void GetDefaultI2cPinsLogicalNumbering() { RaspberryPiBoard b = new RaspberryPiBoard(); var pins = b.GetDefaultPinAssignmentForI2c(0); Assert.Equal(0, pins[0]); Assert.Equal(1, pins[1]); pins = b.GetDefaultPinAssignmentForI2c(1); Assert.Equal(2, pins[0]); Assert.Equal(3, pins[1]); }