资源简介
c#串口通讯log存储及实时波形绘制代码,工具比较实用,这里只有源代码,设计窗口的设计还需要大家自行根据我博客中的图片进行修改
代码片段和文件信息
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.Threading;
using System.IO.Ports;
using System.IO;
using System.Collections;
using System.Windows.Forms.DataVisualization.Charting;
using System.Text.Regularexpressions;
namespace WindowsFormsApp1
{
public partial class IO_Setting_Form : Form
{
private SerialPort ComDevice = new SerialPort();
private Queue dataQueue = new Queue(100);
private Queue stringdataQueue = new Queue(100);
private int num = 5;
public IO_Setting_Form()
{
InitializeComponent();
InitralConfig();
}
private void Form2_Load(object sender EventArgs e)
{
textBoxUpSpec.Text = “10“;
textBoxBottomSpec.Text = “0“;
System.Windows.Forms.Control.CheckForIllegalCrossThreadCalls = false;
AddParameters();
InitChart();
}
private void InitralConfig()
{
//查询主机上存在的串口
comboBox_Port.Items.AddRange(SerialPort.GetPortNames());
if (comboBox_Port.Items.Count > 0)
{
comboBox_Port.SelectedIndex = 0;
}
else
{
comboBox_Port.Text = “未检测到串口“;
}
comboBox_BaudRate.SelectedIndex = -1;
comboBox_DataBits.SelectedIndex = -1;
comboBox_StopBits.SelectedIndex = -1;
comboBox_CheckBits.SelectedIndex = -1;
//pictureBox_Status.BackgroundImage = Properties.Resources.red;
//this.pictureBox_Status.Image = Image.FromFile(Application.StartupPath “\\red.PNG“);
this.pictureBox_Status.Image = Image.FromFile(“D:/VS_Files/WindowsFormsApplication1/WindowsFormsApplication1/Icon/red.png“);
//向ComDevice.DataReceived(是一个事件)注册一个方法Com_DataReceived,当端口类接收到信息时时会自动调用Com_DataReceived方法
ComDevice.DataReceived += new SerialDataReceivedEventHandler(Com_DataReceived);
}
///
/// 一旦ComDevice.DataReceived事件发生,就将从串口接收到的数据显示到接收端对话框
///
///
///
///
char[] ch1={};
private void Com_DataReceived(object sender SerialDataReceivedEventArgs e)
{
//开辟接收缓冲区
byte[] Buffer = new byte[ComDevice.BytesToRead];
//从串口读取数据
ComDevice.Read(Buffer 0 Buffer.Length);
//实现数据的解码与显示
AddData(Buffer);
/*
string str1 = new ASCIIEncoding().GetString(Buffer);
for (int i = 0; i < str1.Length; i++)
{
if (stringdataQueue.Count > 100)
{
- 上一篇:Halcon生成的计算圆心C#代码
- 下一篇:C#客户管理源代码
相关资源
- C#客户管理源代码
- Halcon生成的计算圆心C#代码
- C#局域网语音聊天点对点
- asp.net中用C#写的在线考试系统
- C# CRC 循环冗余校验算法
- C#网上招聘系统 源码
- CLR via C# 最新 中文完整版 高清
- C# 打印设置小票打印收银打印
- .net c# 考试系统
- 生产管理系统 (VS2008 C# winform )
- 中英文切换
- C# DataGridView单元格中动态添加多个控
- c# asp.net 二维码生成源码改良版
- c#企业电话客服系统
- C#程序注册源代码-可直接使用
- c#制作一个通讯录
- 边缘检测Canny算子C#程序
- c#寻找最优解
- 用c#vs2005写的仿汽车仪表做的一个仪表
- C# arcengine 图层操作
- c#编写的计算器
- 计算机网络课程设计-TCP聊天系统课程
- 随机姓名生成器 按性别 C# 源代码和执
- asp.net简易新闻发布系统
- C#+access做的简单的用户资料管理系统
- winform打印窗体源代码
- c#做的飞鸽传输,能发送表情
- C#完整精美时间计时和倒计时软件(带
- C# kafka demo
- 字形轮廓提取显示C#源码(0515).rar
评论
共有 条评论