您的位置:首页 > 编程语言

(SerialPort)串口编程知识整理:(一)基本概念和项目实践概述

2012-07-05 15:32 561 查看
本文转自:/article/5434610.html

1、基本概念

MS在 .NET FrameWork2.0中对串口通讯进行了封装,我们可以在.net2.0及以上版本开发时直接使用SerialPort类对串口进行读写操作。

SerialPort类的属性主要包括:

串口名称(PortName)

波特率(BaudRate)

数据位 DataBits

停止位 StopBits

奇偶校验 Parity

握手协议 Handshake

SerialPort类的事件主要包括:

DataReceived:用于异步接收串口数据

SerialPort类的方法主要包括:

Open();Close();Read();Write()等。

相关内容可以参考MSDN或者博文

http://www.cnblogs.com/tony-yang/archive/2009/06/03/learnserialport.html

/article/5626606.html

2、需求和场景介绍

本文是基于之前开发的一个油站项目,主要功能是实现对加油机数据的采集和对加油机的一些控制,例如停开机、设置单价、定量定额加油等操作。

系统通过PC机串口,与下位机进行通讯,下位机和加油机进行通讯,负责采集加油机数据和控制加油机的操作。

3、设计思想

(1)在界面设计上,由于系统启动后要始终实时监控加油数据,采用了SDI展示方式。

截图如下:


串口通讯数据类:PortDataReciveEventArgs



/*----------------------------------------------------------------
// Copyright (C) 北京****科技有限公司
// 版权所有。
//
// 文件名:PortDataReciveEventArgs
// 文件功能描述:重写PortDataReciveEventArgs参数类
//
//
// 创建标识:** 2009-5-23
//
// 修改标识:
// 修改描述:
//
// 修改标识:
// 修改描述:
//----------------------------------------------------------------*/
using System;
using System.Collections.Generic;
using System.Text;

namespace LY.FuelStationPOS.Protocol
{
public delegate void PortDataReceivedEventHandle(object sender, PortDataReciveEventArgs e);

public class PortDataReciveEventArgs : EventArgs
{
private byte[] data;

public byte[] Data
{
get { return data; }
set { data = value; }
}

public PortDataReciveEventArgs()
{
this.data = null;
}

public PortDataReciveEventArgs(byte[] data)
{
this.data = data;
}

}
}




5、声明

本文来源于实际项目,并且系统的串口通讯很稳定,各位朋友可以放心使用。本文的参考内容都已经标示,如果有任何问题欢迎回复。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: