public LightSensor(Cpu.Pin pin)
        {
            // Open the analog port
            lightSensor = new SecretLabs.NETMF.Hardware.AnalogInput(pin);

            // Set the value range between 0 and 100
            lightSensor.SetRange(minValue, maxValue);
        }
示例#2
0
        /// <summary>
        /// Create a new base instance of the temperature sensor.
        /// </summary>
        /// <param name="pin">Pin the sensor's vout is connected to.
        public TMP36(Cpu.Pin pin)
        {
            // http://www.analog.com/en/temperature-sensing-and-thermal-management/digital-temperature-sensors/tmp36/products/product.html
            MaximumTemperatureCapability = 125;
            MinimumTemperatureCapability = -40;
            RequiredVoltage = 2.7f;

            sensor = new SecretLabs.NETMF.Hardware.AnalogInput(pin);
            sensor.SetRange(0, 3300);
        }
示例#3
0
        public IRSensor(Cpu.Pin pin, int minCm, int maxCm)
        {
            try
            {
                _minCm = minCm;
                _maxCm = maxCm;

                inputPin = new AnalogInput(pin);
            }
            catch (Exception ex)
            {
            }
        }
示例#4
0
        public IRSensor(Cpu.Pin pin, int minCm, int maxCm)
        {
            try
            {
                _minCm = minCm;
                _maxCm = maxCm;

                inputPin = new AnalogInput(pin);
            }
            catch(Exception ex)
            {

            }
        }
示例#5
0
 public Devices(Cpu.Pin jogXPin, Cpu.Pin jogYPin, Cpu.Pin jogZPin)
 {
     if (jogXPin != Cpu.Pin.GPIO_NONE)
     {
         JogXPort = new SecretLabs.NETMF.Hardware.AnalogInput(jogXPin);
         JogXPort.SetRange(-50, 50);
     }
     if (jogYPin != Cpu.Pin.GPIO_NONE)
     {
         JogYPort = new SecretLabs.NETMF.Hardware.AnalogInput(jogYPin);
         JogYPort.SetRange(-50, 50);
     }
     if (jogZPin != Cpu.Pin.GPIO_NONE)
     {
         JogZPort = new SecretLabs.NETMF.Hardware.AnalogInput(jogZPin);
         JogZPort.SetRange(-50, 50);
     }
 }
示例#6
0
 public Devices(Cpu.Pin jogXPin, Cpu.Pin jogYPin, Cpu.Pin jogZPin)
 {
     if (jogXPin != Cpu.Pin.GPIO_NONE)
     {
         JogXPort = new SecretLabs.NETMF.Hardware.AnalogInput(jogXPin);
         JogXPort.SetRange(-50, 50);
     }
     if (jogYPin != Cpu.Pin.GPIO_NONE)
     {
         JogYPort = new SecretLabs.NETMF.Hardware.AnalogInput(jogYPin);
         JogYPort.SetRange(-50, 50);
     }
     if (jogZPin != Cpu.Pin.GPIO_NONE)
     {
         JogZPort = new SecretLabs.NETMF.Hardware.AnalogInput(jogZPin);
         JogZPort.SetRange(-50, 50);
     }
 }
示例#7
0
        public static void Main()
        {
            Thread.Sleep(350);

            var led = new OutputPort(Pins.ONBOARD_LED, false);
            var readIn = new SecretLabs.NETMF.Hardware.AnalogInput(Pins.GPIO_PIN_A0);

            while (true)
            {
                int readRaw = readIn.Read();
                double anVolt = readRaw * (3.3 / 1024);
                double distance = anVolt / 0.0064453125;

                Debug.Print(distance + " inches");
                SelectivelyLightLed(led, distance);

                Thread.Sleep(3000);
            }
        }
示例#8
0
        public static void Main_Old()
        {
            var pushButtonPrev = new InputPort(Pins.GPIO_PIN_D6, true, Port.ResistorMode.PullDown);
            var pushButtonNext = new InputPort(Pins.GPIO_PIN_D5, true, Port.ResistorMode.PullDown);

            var tempInput1 = new SecretLabs.NETMF.Hardware.AnalogInput(Pins.GPIO_PIN_A5);
            var tempInput2 = new SecretLabs.NETMF.Hardware.AnalogInput(Pins.GPIO_PIN_A4);

            var portHeater1 = new OutputPort(Pins.GPIO_PIN_D8, false);
            var portHeater2 = new OutputPort(Pins.GPIO_PIN_D9, false);

            var lcd = new LiquidCrystal_I2C(0x27, 20, 4);
            lcd.setBacklight(true);

            var navButtons = new NavigateButtons(pushButtonPrev, pushButtonNext);

            var program = new BrewGuide(navButtons, lcd, new PT100Reader(tempInput1), new PT100Reader(tempInput2), portHeater1, portHeater2);
            program.Initialize();
            program.Run();
        }
示例#9
0
 public void Dispose()
 {
     sensor.Dispose();
     sensor = null;
 }
示例#10
0
        private float _lastMeasure; // Holds the last valid measurement

        #endregion Fields

        #region Constructors

        public PT100Reader(SecretLabs.NETMF.Hardware.AnalogInput analogInput)
        {
            _analogInput = analogInput;
        }