本帖最後由 arthurliuliu 於 2013-11-4 10:16 AM 編輯
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
- using System.IO;
- using System.IO.Ports;
- namespace _2
- {
- public partial class Form1 : Form
- {
- SerialPort spReceive = new SerialPort ();
-
- delegate void UpdateTextEventHandler(string text);
- UpdateTextEventHandler updateText;
- public Form1()
- {
- InitializeComponent();
- updateText = new UpdateTextEventHandler(UpdateTextBox);
-
-
- spReceive.DataReceived += new System.IO.Ports.SerialDataReceivedEventHandler(spReceive_DataReceived );
- }
- private void Form1_Load(object sender, EventArgs e)
- {
- }
- private void button1_Click(object sender, EventArgs e)
- {
- spReceive.PortName = "COM1";
- spReceive.BaudRate = 2400;
- spReceive.DataBits = 8;
- spReceive.StopBits = StopBits .One ;
- spReceive.Parity = Parity .Even ;
- spReceive.Open();
- spReceive.Write("FE FE FE 68 AA AA AA AA AA AA 68 13 00");
- string data = spReceive.ReadExisting();
- textBox1.Text =data ;
- spReceive.Close();
- }
- public void spReceive_DataReceived(object sender,System .IO .Ports .SerialDataReceivedEventArgs e)
- {
- byte[]readBuffer = new byte[spReceive .ReadBufferSize];
- spReceive.Read(readBuffer,0,readBuffer.Length);
- this.Invoke(updateText ,new string []{Encoding .Unicode .GetString (readBuffer )});
- string readString = spReceive.ReadExisting();
- this.Invoke(updateText ,new string []{readString });
- }
- private void UpdateTextBox(string text)
- {
- textBox1.Text =text;
- }
- }
- }
複製代碼
... |