Ejemplo n.º 1
0
        void ChangeColor(string color)
        {
            Debug.Print(color);

            redLights.Write(false);

            switch (color)
            {
            case "red":
                multicolorLed.TurnRed();
                ChangeLights(true, false, false, false);
                break;

            case "green":
                multicolorLed.TurnGreen();
                ChangeLights(false, true, false, false);
                break;

            case "blue":
                multicolorLed.TurnBlue();
                ChangeLights(false, false, true, false);
                break;

            case "orange":
                multicolorLed.TurnColor(GT.Color.Orange);
                ChangeLights(false, false, false, true);
                break;
            }
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Sets the sleep control pin to active state (sleep request).
 /// </summary>
 public void Sleep()
 {
     if (_connectedToGadgeteerSocket)
     {
         _gadgeteerSleepPin.Write(SleepState.Sleeping);
     }
     else
     {
         _netmfSleepPin.Write(SleepState.Sleeping);
     }
 }
Ejemplo n.º 3
0
 /// <summary>
 /// Disables the module (power off).
 /// </summary>
 public void Disable()
 {
     if (_connectedToGadgeteerSocket)
     {
         _gadgeteerResetPin.Write(ResetState.NotRunning);
     }
     else
     {
         _netmfResetPin.Write(ResetState.NotRunning);
     }
 }
Ejemplo n.º 4
0
 void ChangeLights(bool red, bool green, bool blue, bool orange)
 {
     redLights.Write(!red);
     greenLights.Write(!green);
     blueLights.Write(!blue);
     orangeLights.Write(!orange);
 }
Ejemplo n.º 5
0
 public void Write(bool state)
 {
     if (_outputPort == null)
     {
         return;
     }
     _outputPort.Write(state);
 }
Ejemplo n.º 6
0
        void timer_Tick(GT.Timer timer)
        {
            var isButtonPressed = _digitalInput.Read();

            Mainboard.SetDebugLED(isButtonPressed);
            _digitalOutput.Write(isButtonPressed);

            _digitalOutput2.Write(_analogValue);
            Debug.Print("signal measured: " + _digitalInput2.Read().ToString());
            _analogValue = !_analogValue;
        }
Ejemplo n.º 7
0
        void dataReadTimer_Tick(GT.Timer timer)
        {
            output_pl.Write(false);
            output_pl.Write(true);
            output_ce.Write(false);

            int retval = 0;

            for (int i = 0; i <= 7; i++)
            {
                retval = retval << 1;
                if (input.Read())
                {
                    retval = retval + 1;
                }
                Clock();
            }
            output_ce.Write(true);
            Debug.Print(retval.ToString());
//            if (retval > 0) // uncomment if you want to keep the lights on
            DisplayLeds(retval);
        }
Ejemplo n.º 8
0
        private void DisplayLeds(int retval)
        {
            output_srclk.Write(false);
            // Bit reversal :)
            int copy = (int)((((ulong)retval * 0x0202020202UL) & 0x010884422010UL) % 1023);

            for (int i = 0; i <= 7; i++)
            {
                int x = copy & 1;
                if (x == 0)
                {
                    output_ser.Write(false);
                }
                else
                {
                    output_ser.Write(true);
                }
                output_clk.Write(true);
                output_clk.Write(false);
                copy = copy >> 1;
            }
            output_srclk.Write(true);
            output_srclk.Write(false);
        }
Ejemplo n.º 9
0
        void ProgramStarted()
        {
            // My breakout board is on socket 1
            // 74HC165
            output_ser   = breadBoardX1.CreateDigitalOutput(GT.Socket.Pin.Six, false);   // data
            output_clk   = breadBoardX1.CreateDigitalOutput(GT.Socket.Pin.Seven, false); // clock
            output_srclk = breadBoardX1.CreateDigitalOutput(GT.Socket.Pin.Eight, false); // latch

            // 74HC165
            input     = breadBoardX1.CreateDigitalInput(GT.Socket.Pin.Nine, GlitchFilterMode.Off, ResistorMode.Disabled); // data
            output_cp = breadBoardX1.CreateDigitalOutput(GT.Socket.Pin.Four, false);                                      // clock input
            output_ce = breadBoardX1.CreateDigitalOutput(GT.Socket.Pin.Five, false);                                      // clock enable
            output_pl = breadBoardX1.CreateDigitalOutput(GT.Socket.Pin.Three, false);                                     // load
            Debug.Print("Program Started");
            button.ButtonPressed += button_ButtonPressed;
            Debug.Print("Setting up 74HC165");
            output_pl.Write(true);
            output_ce.Write(true);
            output_cp.Write(false);
            dataReadTimer.Tick += dataReadTimer_Tick;
        }
Ejemplo n.º 10
0
 public void SetDebugLED(bool on)
 {
     debugLedPin.Write(on);
 }