打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

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

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

         http://www.cnblogs.com/hocylan/archive/2008/03/13/1103624.html

  

2、需求和场景介绍

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

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

 

3、设计思想

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

截图如下:

    (2)在系统设计方面,加油机监控软件具有一定的实时性、稳定性和数据并发的非功能性需求。所以在对加油数据采集时,使用事件DataReceived,用于异步接收串口数据。使用watchdog方式监控系统消息,通过缓存池对数据进行过滤,减轻数据库的压力,提高系统性能。

 

4、代码演示

         系统采用CS结构,使用SerialPort类进行串口通讯。对SerialPort类进行了封装,以保证多个窗体间对串口实例的调用。

         封装的串口通讯类参考:http://blog.csdn.net/yefanqiu/archive/2007/03/27/1543187.aspx

串口通讯类:SerialPortDao.cs
串口通讯数据类:PortDataReciveEventArgs

 

5、声明

     本文来源于实际项目,并且系统的串口通讯很稳定,各位朋友可以放心使用。本文的参考内容都已经标示,如果有任何问题欢迎回复。

     接下来准备要分享的内容包括:

 

本系列文章:

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

(2)(SerialPort)串口编程知识整理:(二)串口编程中经常用到的进制转换和其他公共方法

 (3)(SerialPort)串口编程知识整理:(三)串口编程的系统设计实用经验总结

(4)(SerialPort)串口编程知识整理:(四)多串口系统的分布式架构设计

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
使用SerialPort类设计串口通讯程序
.NET 2.0中串口通讯类SerialPort用法整理
.NET 串口通讯 .
android串口通信以及串口协议解析
一个高效,可靠,安全的串口通讯开源方案
串口通讯中的流控制
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服