//code snippet serialP.DataBits = 8; serialP.StopBits = StopBits.One; //serialP.Handshake = Handshake.RequestToSend; serialP.Parity = Parity.None; serialP.DataReceived += serialP_DataReceived; serialP.WriteTimeout = 20000; serialP.ReadTimeout = 20000; serialP.Open(); serialRtx.DoWork += serialRtx_DoWork; if (!serialRtx.IsBusy) serialRtx.RunWorkerAsync(); serialRtx.RunWorkerCompleted += serialRtx_RunWorkerCompleted; } private void serialRtx_DoWork(object sender, DoWorkEventArgs e) { //Send token packets to DAQ cards sequentially } private void serialP_DataReceived(object sender, SerialDataReceivedEventArgs e) { while (serialP.BytesToRead > 0) { dataBytet1 = serialP.ReadByte(); dataByte2 = serialP.ReadByte(); try { logData[sample_No, chNo - 1] = ((dataBytet1 * 256) + dataByte2 ); chNo++; if (chNo > 8) { sample_No++; chNo = 1; } if (sample_No > 3999)//total 4000 samples of 8 channels { cardNo++; sample_No = 0; } } catch (IndexOutOfRangeException) { } } }
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)