看板 C_Sharp 關於我們 聯絡資訊
: 下面是我用C# 2005寫的,目前在PC上可以運作, : 惟獨有個問題不知道如何解決,就是一但開啟serial port, : GPS的訊息就會一直進來,過一陣子,記憶體就會爆增,後來buffer就會爆掉, : 導致程式當掉,不知道如何解決@@" : 用了serialport1.DiscardInBuffer()這個也沒用. : "至於serial port的設定,我是用C# 2005 用元件拉過去,在屬性那邊設定的" : 你可以試試看這樣能不能跑. : using System; : using System.Collections.Generic; : using System.ComponentModel; : using System.Data; : using System.Drawing; : using System.Text; : using System.Windows.Forms; : using System.IO.Ports; : namespace rs232try : { : public partial class Form1 : Form : { : public Form1() : { : InitializeComponent(); : } : private void button1_Click(object sender, EventArgs e) : { string gpsdata = ""; : gpsdata = serialPort1.ReadLine(); //讀取GPS接收器傳來的資料 : char[] delimiterChar ={ ',' }; //分割字元為"," : string[] words = gpsdata.Split(delimiterChar); //以","切割資料 : textBox1.Text = words[0]; : textBox2.Text = words[3]; : textBox3.Text = gpsdata; : } : private void button2_Click(object sender, EventArgs e) : { : serialPort1.Close(); : textBox1.Text = ""; : textBox2.Text = ""; : } : private void button3_Click(object sender, EventArgs e) : { : serialPort1.Open(); : } : } : } : 以上,最近才剛接觸C#,有錯煩請指出 ~ : 謝謝 我想請問一下各位,是不是大家用上面這方法在PDA上Run成功阿? 為什麼我照上面這方法,會在serialPort1.Open的時候會出錯 請問serialPort這個元件直接拉元件過去,還要設定什麼嗎? serialPort.open這樣寫就會開啟GPS接收器嗎?還是哪裡要另外寫呢? 我是用內建的GPS,上面這方法有人也是用內建GPS成功開啟收到訊號值嗎? 想請教各位大大了,謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.115.126.206
tuzr:上面的程式,name要設定成serialPort1 05/21 02:19
pat0307:是只說要寫serialPort1.name = "COM1"; 嗎?還是? 05/21 02:59
windqqr:一樓說的是 control的name要是serialPort1 05/27 07:22
windqqr:通常用拉的應該就是預設那個名稱了 05/27 07:23
windqqr:不能開啟主要還是要先確定 gps的port是不是在com1 05/27 07:24
windqqr:笨一點的方式就是 從com1開始跑 測看看哪個port可以被打開 05/27 07:25