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

            onboardLed = new RgbPwmLed(device: Device,
                                       redPwmPin: Device.Pins.OnboardLedRed,
                                       greenPwmPin: Device.Pins.OnboardLedGreen,
                                       bluePwmPin: Device.Pins.OnboardLedBlue,
                                       3.3f, 3.3f, 3.3f,
                                       Meadow.Peripherals.Leds.IRgbLed.CommonType.CommonAnode);

            Console.WriteLine("Create Display with SPI...");

            var config = new Meadow.Hardware.SpiClockConfiguration(6000, Meadow.Hardware.SpiClockConfiguration.Mode.Mode0);

            var bus = Device.CreateSpiBus(Device.Pins.SCK, Device.Pins.MOSI, Device.Pins.MISO, config);

            display = new Ssd1309
                      (
                device: Device,
                spiBus: bus,
                chipSelectPin: Device.Pins.D02,
                dcPin: Device.Pins.D01,
                resetPin: Device.Pins.D00
                      );

            Console.WriteLine("Create Graphics Library...");

            graphics             = new GraphicsLibrary(display);
            graphics.Rotation    = GraphicsLibrary.RotationType._270Degrees;
            graphics.CurrentFont = new Font8x12();

            graphics.Clear();
            graphics.DrawText(0, 0, "Hello");
            graphics.Show();

            Console.WriteLine("Create buttons...");

            portLeft  = Device.CreateDigitalInputPort(Device.Pins.D12, InterruptMode.EdgeFalling, ResistorMode.PullDown);
            portUp    = Device.CreateDigitalInputPort(Device.Pins.D13, InterruptMode.EdgeFalling, ResistorMode.PullDown);
            portRight = Device.CreateDigitalInputPort(Device.Pins.D07, InterruptMode.EdgeFalling, ResistorMode.PullDown);
            portDown  = Device.CreateDigitalInputPort(Device.Pins.D11, InterruptMode.EdgeFalling, ResistorMode.PullDown);

            portRight.Changed += PortRight_Changed;
            portLeft.Changed  += PortLeft_Changed;
            portUp.Changed    += PortUp_Changed;
            portDown.Changed  += PortDown_Changed;

            /*     btnUp = new PushButton(Device, Device.Pins.D13);
             *   btnLeft = new PushButton(Device, Device.Pins.D12);
             *   btnDown = new PushButton(Device, Device.Pins.D11);
             *   btnRight = new PushButton(Device, Device.Pins.D10);
             *
             *   btnUp.Clicked += BtnUp_Clicked;
             *   btnLeft.Clicked += BtnLeft_Clicked;
             *   btnDown.Clicked += BtnDown_Clicked;
             *   btnRight.Clicked += BtnRight_Clicked;  */
        }
Ejemplo n.º 2
0
        public Nrf24l01(
            ISpiBus spiBus,
            IDigitalOutputPort chipEnablePort,
            IDigitalOutputPort chipSelectPort,
            IDigitalInterruptPort interruptPort)
        {
            pipe0_reading_address[0] = 0;

            this.spiBus = spiBus;
            rf24        = new SpiPeripheral(spiBus, chipSelectPort);

            this.chipEnablePort = chipEnablePort;
            this.interruptPort  = interruptPort;

            Initialize();
        }