コード例 #1
0
        /// <summary>
        /// Costruttore
        /// </summary>
        /// <param name="ch">Nome del canale analogico</param>
        /// <param name="scale">Valore di scalatura del valore letto dal canale analogico</param>
        /// <param name="offset">Offset aggiunto sul valore letto dal canale analogico</param>
        /// <param name="movingAverageSize">Dimensione del buffer per calcolo media</param>
        public UniversalIO(UIO_ADC ch, double scale, double offset, int movingAverageSize)
        {
            UIODigitalOutput cha;

            switch (ch)
            {
            case UIO_ADC.UIO_ADC_3:
                SelPort = UIOSelector.OUT_SEL_3;
                cha     = UIODigitalOutput.UIO_OUT_3;
                break;

            case UIO_ADC.UIO_ADC_4:
                SelPort = UIOSelector.OUT_SEL_4;
                cha     = UIODigitalOutput.UIO_OUT_4;
                break;

            case UIO_ADC.UIO_ADC_6:
                SelPort = UIOSelector.OUT_SEL_6;
                cha     = UIODigitalOutput.UIO_OUT_6;
                break;

            case UIO_ADC.UIO_ADC_7:
                SelPort = UIOSelector.OUT_SEL_7;
                cha     = UIODigitalOutput.UIO_OUT_7;
                break;

            case UIO_ADC.UIO_ADC_8:
                SelPort = UIOSelector.OUT_SEL_8;
                cha     = UIODigitalOutput.UIO_OUT_8;
                break;

            default:
                throw new ArgumentException("ADC non valido", "ch");
            }
            // spengo mosfet per non influenzare lettura ADC
            DigitalOut = new DigitalOutput((Output)cha);
            DigitalOut.Write(false);

            Initialize(UIOMode.UIOModeAnalogInput, (int)SelPort, (int)ch, movingAverageSize, true, scale, offset);
        }
コード例 #2
0
        /// <summary>
        /// Costruttore
        /// </summary>
        /// <param name="ch">Nome del canale analogico</param>
        /// <param name="scale">Valore di scalatura del valore letto dal canale analogico</param>
        /// <param name="offset">Offset aggiunto sul valore letto dal canale analogico</param>
        /// <param name="movingAverageSize">Dimensione del buffer per calcolo media</param>
        public UniversalIO(UIO_ADC ch, double scale, double offset, int movingAverageSize)
        {
            UIODigitalOutput cha;

            switch (ch)
            {
                case UIO_ADC.UIO_ADC_3:
                    SelPort = UIOSelector.OUT_SEL_3;
                    cha = UIODigitalOutput.UIO_OUT_3;
                    break;
                case UIO_ADC.UIO_ADC_4:
                    SelPort = UIOSelector.OUT_SEL_4;
                    cha = UIODigitalOutput.UIO_OUT_4;
                    break;
                case UIO_ADC.UIO_ADC_6:
                    SelPort = UIOSelector.OUT_SEL_6;
                    cha = UIODigitalOutput.UIO_OUT_6;
                    break;
                case UIO_ADC.UIO_ADC_7:
                    SelPort = UIOSelector.OUT_SEL_7;
                    cha = UIODigitalOutput.UIO_OUT_7;
                    break;
                case UIO_ADC.UIO_ADC_8:
                    SelPort = UIOSelector.OUT_SEL_8;
                    cha = UIODigitalOutput.UIO_OUT_8;
                    break;
                default:
                    throw new ArgumentException("ADC non valido", "ch");
            }
            // spengo mosfet per non influenzare lettura ADC
            DigitalOut = new DigitalOutput((Output)cha);
            DigitalOut.Write(false);

            Initialize(UIOMode.UIOModeAnalogInput, (int)SelPort, (int)ch, movingAverageSize, true, scale, offset);
                  
        }
コード例 #3
0
 /// <summary>
 /// Costruttore
 /// </summary>
 /// <param name="ch">Nome del canale analogico</param>
 /// <param name="scale">Valore di scalatura del valore letto dal canale analogico</param>
 /// <param name="offset">Offset aggiunto sul valore letto dal canale analogico</param>
 public UniversalIO(UIO_ADC ch, double scale, double offset)
     : this(ch, scale, offset, 1)
 {
 }
コード例 #4
0
 /// <summary>
 /// Costruttore
 /// </summary>
 /// <param name="ch">Nome del canale analogico</param>
 /// <param name="scale">Valore di scalatura del valore letto dal canale analogico</param>
 /// <param name="offset">Offset aggiunto sul valore letto dal canale analogico</param>
 public UniversalIO(UIO_ADC ch, double scale, double offset)
     : this(ch, scale, offset, 1)
 {
 }