public RegisterManager(IIODevice device, ISpiBus spiBus, IPin chipSelectPin) { // Chip select pin configuration ChipSelectGpioPin = device.CreateDigitalOutputPort(chipSelectPin, initialState: true); Rfm9XLoraModem = new SpiPeripheral(spiBus, ChipSelectGpioPin); }
public EPDBase(IIODevice device, ISpiBus spiBus, IPin chipSelectPin, IPin dcPin, IPin resetPin, IPin busyPin) { dataCommandPort = device.CreateDigitalOutputPort(dcPin, false); resetPort = device.CreateDigitalOutputPort(resetPin, true); busyPort = device.CreateDigitalInputPort(busyPin); spi = new SpiPeripheral(spiBus, device.CreateDigitalOutputPort(chipSelectPin)); imageBuffer = new byte[Width * Height / 8]; for (int i = 0; i < Width * Height / 8; i++) { imageBuffer[i] = 0xff; } Initialize(); }
public void ConfigureSpiPort() { try { ChipEnable = Device.CreateDigitalOutputPort(Device.Pins.D09, initialState: false); if (ChipEnable == null) { Console.WriteLine("chipEnable == null"); } var spiClockConfiguration = new SpiClockConfiguration(2000, SpiClockConfiguration.Mode.Mode0); spiBus = Device.CreateSpiBus(Device.Pins.SCK, Device.Pins.MOSI, Device.Pins.MISO, spiClockConfiguration); if (spiBus == null) { Console.WriteLine("spiBus == null"); } Console.WriteLine("Creating SPI NSS Port..."); spiPeriphChipSelect = Device.CreateDigitalOutputPort(Device.Pins.D10, initialState: true); if (spiPeriphChipSelect == null) { Console.WriteLine("spiPeriphChipSelect == null"); } Console.WriteLine("nrf24L01Device Device..."); nrf24L01Device = new SpiPeripheral(spiBus, spiPeriphChipSelect); if (nrf24L01Device == null) { Console.WriteLine("nrf24L01Device == null"); } Thread.Sleep(100); Console.WriteLine("ConfigureSpiPort Done..."); } catch (Exception ex) { Console.WriteLine("ConfigureSpiPort " + ex.Message); } }
public EpdColorBase(IIODevice device, ISpiBus spiBus, IPin chipSelectPin, IPin dcPin, IPin resetPin, IPin busyPin, int width, int height) { this.width = width; this.height = height; dataCommandPort = device.CreateDigitalOutputPort(dcPin, false); resetPort = device.CreateDigitalOutputPort(resetPin, true); busyPort = device.CreateDigitalInputPort(busyPin); spi = new SpiPeripheral(spiBus, device.CreateDigitalOutputPort(chipSelectPin)); blackImageBuffer = new byte[Width * Height / 8]; colorImageBuffer = new byte[Width * Height / 8]; for (int i = 0; i < blackImageBuffer.Length; i++) { blackImageBuffer[i] = 0xFF; colorImageBuffer[i] = 0xFF; } Initialize(); }