private void tmrConvert_Tick(object eventSender, System.EventArgs eventArgs) /* Handles tmrConvert.Tick */ { float EngUnits; MccDaq.ErrorInfo ULStat; System.UInt16 DataValue; int Chan; MccDaq.Range Range; tmrConvert.Stop(); // Collect the data by calling AIn memeber function of MccBoard object // Parameters: // Chan :the input channel number // Range :the Range for the board. // DataValue :the name for the value collected Range = Range.Bip5Volts; // select Bip5Volts (member of Range enumeration) Chan = int.Parse(txtNumChan.Text); // set input channel ULStat = DaqBoard.AIn(Chan, Range, out DataValue); if (ULStat.Value == MccDaq.ErrorInfo.ErrorCode.BadRange) { MessageBox.Show("Change the Range argument to one supported by this board.", "Unsupported Range", 0); } // Convert raw data to Volts by calling ToEngUnits (member function of MccBoard class) ULStat = DaqBoard.ToEngUnits(Range, DataValue, out EngUnits); lblShowData.Text = DataValue.ToString(); // print the counts lblShowVolts.Text = EngUnits.ToString("F4") + " Volts"; // print the voltage tmrConvert.Start(); }
private void tmrConvert_Tick(object eventSender, System.EventArgs eventArgs) { float EngUnits; double HighResEngUnits; MccDaq.ErrorInfo ULStat; System.UInt16 DataValue; System.UInt32 DataValue32; int Chan; int Options = 0; tmrConvert.Stop(); // Collect the data by calling AIn member function of MccBoard object // Parameters: // Chan :the input channel number // Range :the Range for the board. // DataValue :the name for the value collected // set input channel bool ValidChan = int.TryParse(txtNumChan.Text, out Chan); if (ValidChan) { if (Chan > HighChan) { Chan = HighChan; } txtNumChan.Text = Chan.ToString(); } if (ADResolution > 16) { ULStat = DaqBoard.AIn32(Chan, Range, out DataValue32, Options); // Convert raw data to Volts by calling ToEngUnits // (member function of MccBoard class) ULStat = DaqBoard.ToEngUnits32(Range, DataValue32, out HighResEngUnits); lblShowData.Text = DataValue32.ToString(); // print the counts lblShowVolts.Text = HighResEngUnits.ToString("F5") + " Volts"; // print the voltage } else { ULStat = DaqBoard.AIn(Chan, Range, out DataValue); // Convert raw data to Volts by calling ToEngUnits // (member function of MccBoard class) ULStat = DaqBoard.ToEngUnits(Range, DataValue, out EngUnits); lblShowData.Text = DataValue.ToString(); // print the counts lblShowVolts.Text = EngUnits.ToString("F4") + " Volts"; // print the voltage } tmrConvert.Start(); }
private void tmrConvert_Tick(object eventSender, System.EventArgs eventArgs) /* Handles tmrConvert.Tick */ { float EngUnits; double HighResEngUnits; MccDaq.ErrorInfo ULStat; UInt16 DataValue; UInt32 DataValue32; MccDaq.Range Range; int Chan; int Options = 0; tmrConvert.Stop(); // Parameters: // Chan :the input channel number // Range :the range for the board. // DataValue :the name for the value collected Chan = int.Parse(txtNumChan.Text); Range = (MccDaq.Range)(int.Parse(lblGainCodeVal.Text)); if (HighResAD) { ULStat = DaqBoard.AIn32(Chan, Range, out DataValue32, Options); // ******* CONVERT RAW DATA VALUES TO VOLTAGES ******** ULStat = DaqBoard.ToEngUnits32(Range, DataValue32, out HighResEngUnits); lblShowData.Text = DataValue32.ToString("D"); lblShowCalcResults.Text = HighResEngUnits.ToString("0.00000") + " Volts"; } else { ULStat = DaqBoard.AIn(Chan, Range, out DataValue); // ******* CONVERT RAW DATA VALUES TO VOLTAGES ******** ULStat = DaqBoard.ToEngUnits(Range, DataValue, out EngUnits); lblShowData.Text = DataValue.ToString("D"); lblShowCalcResults.Text = EngUnits.ToString("0.000") + " Volts"; } tmrConvert.Start(); }
static void Main(string[] args) { int recv; byte[] data = new byte[1024]; //得到本机IP,设置TCP端口号 IPEndPoint ip = new IPEndPoint(IPAddress.Any, 8001); Socket newsock = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); //绑定网络地址 newsock.Bind(ip); Console.WriteLine("This is a Server, host name is {0}", Dns.GetHostName()); //等待客户机连接 Console.WriteLine("Waiting for a client"); //得到客户机IP IPEndPoint sender = new IPEndPoint(IPAddress.Any, 0); EndPoint Remote = (EndPoint)(sender); recv = newsock.ReceiveFrom(data, ref Remote); Console.WriteLine("Message received from {0}: ", Remote.ToString()); Console.WriteLine(Encoding.ASCII.GetString(data, 0, recv)); //客户机连接成功后,发送信息 string welcome = "你好 ! "; //字符串与字节数组相互转换 data = Encoding.ASCII.GetBytes(welcome); //发送信息 newsock.SendTo(data, data.Length, SocketFlags.None, Remote); float EngUnits; double HighResEngUnits; MccDaq.ErrorInfo ULStat;//存储和报告错误代码和消息 System.UInt16 DataValue; System.UInt32 DataValue32; int Chan = 0; //输入通道编号 int Options = 0; string s = ""; string filename = "test.csv"; File.WriteAllText(filename, s); while (true) { data = new byte[1024]; //发送接收信息 recv = newsock.ReceiveFrom(data, ref Remote); Console.WriteLine(Encoding.ASCII.GetString(data, 0, recv)); ULStat = DaqBoard.AIn(Chan, Range, out DataValue);//读取输入通道,输出16位整数值 // Convert raw data to Volts by calling ToEngUnits // (member function of MccBoard class) ULStat = DaqBoard.ToEngUnits(Range, DataValue, out EngUnits);//将原始数据转换成电压 //int barHeight = (int)Math.Ceiling(EngUnits * 1000 + 150); int barForceInMilliNewton = (int)Math.Ceiling(EngUnits * 12000); //v=2*EngUnits(电压值等于2倍EngUnits) newsock.SendTo(Encoding.ASCII.GetBytes(barForceInMilliNewton.ToString()), Remote); s += EngUnits.ToString(); s += ","; //change column s += barForceInMilliNewton.ToString(); s += "\n"; //changge row File.AppendAllText(filename, s); } }