在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > c#串口通訊軟件設計

            c#串口通訊軟件設計

            作者: 時間:2016-11-30 來源:網(wǎng)絡 收藏

            void comm_DataReceived(object sender, SerialDataReceivedEventArgs e)
            {
            int n = comm.BytesToRead;//先記錄下來,避免某種原因,人為的原因,操作幾次之間時間長,緩存不一致
            byte[] buf = new byte[n];//聲明一個臨時數(shù)組存儲當前來的串口數(shù)據(jù)
            received_count += n;//增加接收計數(shù)
            comm.Read(buf, 0, n);//讀取緩沖數(shù)據(jù)
            builder.Remove(0, builder.Length);//清除字符串構造器的內(nèi)容
            this.Invoke((EventHandler)(delegate
            {
            //判斷是否是顯示為16禁止
            if(HEXRX.Checked)
            {
            //依次的拼接出16進制字符串
            foreach (byte b in buf)
            {
            builder.Append(b.ToString("X2") + " ");
            }
            }
            else
            {
            //直接按ASCII規(guī)則轉(zhuǎn)換成字符串
            builder.Append(Encoding.ASCII.GetString(buf));
            }
            //追加的形式添加到文本框末端,并滾動到最后。
            this.GETRX.AppendText(builder.ToString());
            //修改接收計數(shù)
            labelTXdata.Text = "發(fā)送數(shù)據(jù):" + send_count.ToString();
            labelRXdata.Text = "接受數(shù)據(jù):" + received_count.ToString();

            }));
            }
            private void buttonTX_Click(object sender, EventArgs e)
            {
            //定義一個變量,記錄發(fā)送了幾個字節(jié)
            int n = 0;
            //16進制發(fā)送
            if (HEXTX.Checked)
            {
            //我們不管規(guī)則了。如果寫錯了一些,我們允許的,只用正則得到有效的十六進制數(shù)
            MatchCollection mc = Regex.Matches(SENDBOX.Text, @"(?i)[da-f]{2}");
            List buf = new List();//填充到這個臨時列表中
            //依次添加到列表中
            foreach (Match m in mc)
            {
            buf.Add(byte.Parse(m.Value, System.Globalization.NumberStyles.HexNumber));
            }
            //轉(zhuǎn)換列表為數(shù)組后發(fā)送
            comm.Write(buf.ToArray(), 0, buf.Count);
            //記錄發(fā)送的字節(jié)數(shù)
            n = buf.Count;
            }
            else//ascii編碼直接發(fā)送
            {

            comm.WriteLine(SENDBOX.Text);
            n = SENDBOX.Text.Length + 2;

            }
            send_count += n;//累加發(fā)送字節(jié)數(shù)
            labelTXdata.Text = "Send:" + send_count.ToString();//更新界面
            }

            本文引用地址:http://www.biyoush.com/article/201611/324082.htm

            private void groupBox1_Enter(object sender, EventArgs e)
            {

            }

            private void button2_Click(object sender, EventArgs e)
            {
            //復位接受和發(fā)送的字節(jié)數(shù)計數(shù)器并更新界面。
            send_count = received_count = 0;
            labelTXdata.Text = "發(fā)送數(shù)據(jù):" + send_count.ToString();
            labelRXdata.Text = "接受數(shù)據(jù):" + received_count.ToString();
            }

            private void bottoncom_Click(object sender, EventArgs e)
            {
            //根據(jù)當前串口對象,來判斷操作
            if (comm.IsOpen)
            {
            //打開時點擊,則關閉串口
            comm.Close();
            }
            else
            {
            //關閉時點擊,則設置好端口,波特率后打開
            comm.PortName = cobportname.Text;
            comm.BaudRate = int.Parse(cobBaudrate.Text);
            try
            {
            comm.Open();
            }
            catch (Exception ex)
            {
            //捕獲到異常信息,創(chuàng)建一個新的comm對象,之前的不能用了。
            comm = new SerialPort();
            //現(xiàn)實異常信息給客戶。
            MessageBox.Show(ex.Message);
            }
            }
            //設置按鈕的狀態(tài)
            bottoncom.Text = comm.IsOpen ? "關閉" : "打開";
            //buttonSend.Enabled = comm.IsOpen;
            }
            }
            }


            上一頁 1 2 下一頁

            評論


            技術專區(qū)

            關閉