我假设读者已经了解了c#的语法,本文是针对刚打算解除串口编程的朋友阅读的,作为串口编程的入门范例,也是我这个系列的基础。
我们的开发环境假定为vs2005(虽然我在用vs2010,但避免有些网友用2005,不支持lambda,避免不兼容,就用2005来做例子)
一个基本的串口程序,既然是个程序了。我们就先从功能说起,包含
串口选择
波特率选择
打开
关闭
接受数据显示
发送数据输入
发送数据
数据量提示以及归零
好吧,有了这些功能,我们就先画出界面。例如:
这里,波特率就定死几种好了。直接界面上添加2400,4800,9600,19200,38400,57600,115200
comboPortName这里,为了我们的软件能通用所有电脑避免每次查询的效率损失,我们使用微软提供的枚举方式,代码如下:
显然,我们需要定义一个SerialPort对象。添加DataReceived事件响应收到数据,还有一个重点,我们需要记得设置NewLine属性哦。好想有的版本不设置的时候,WriteLine和Write效果一样。
所以,我们需要初始化SerialPort对象,例如:
初始化好串口,简单的编写打开,关闭方法,编写界面响应的是否自动换行,如何复位计数器,发送方法。以及数据处理。因为我已经写了完整注视,我就直接贴代码了。
至此,一个标准的串口调试助手就完成了。留下一个思考题,如果接收数据后,更新界面的时候,尚未操作完成,此时并发了关闭串口的操作。程序会如何呢?敬请阅读《C# 串口操作系列(2) -- 如何避免关闭串口偶尔软件死锁》。
VS2010项目范例下载
VS2008项目范例下载
//append by wuyazhe @2011-5-26
上面有一点疏漏,源自第一篇,结果到这里还是没修改,源码中有一行,需要修改一下。
//发送按钮中
buf.Add(byte.Parse(m.Value));
要修改为
buf.Add(byte.Parse(m.Value,System.Globalization.NumberStyles.HexNumber));
分享到:
相关推荐
012.C# 串口操作系列(1) -- 入门篇,一个标准的,简陋的串口例子。.doc 013.C#_.net环境下与单片机串行通信的实践.doc 014.单片机控制8路舵机程序+串口通讯上位机程序(C_带图).doc 015.基于C_实现PC机与A
C#操作excel 打开-读取-修改-保存 winform入门操作 适合入门读者
C#新手入门图文教程---基于winform的一个小例子
C#串口操作一个很好的例子C#源代码,using System.Runtime.InteropServices;
C#串口操作系列 1 入门篇 一个标准的 简陋的串口例子 pdf
使用一个开源的技术来读写三菱FX系列模块数据,不需要额外的组件,读取操作只要放到后台线程就不会卡死线程,本组件支持超级方便的高性能读写操作 1)附件C#代码全开源,所有代码公开,不使用第三方组件 2)支持三菱...
串口数据操作,有很多场景应用到串口操作,比如:地磅、超市收银(串口扫码)、工业机械控制(和PLC的交互、和普通硬件的交互),今天分享一下基础版的串口操作。
C# 串口操作系列(5)--通讯库雏形 http://blog.csdn.net/wuyazhe/archive/2010/08/09/5797673.aspx 对应范例
C#倒计时例子----C#.Net实例代码
1、可以实现串口数据的接收发送 2、可以动态的监控本机器的COM口状态 3、实现了端口选择、波特率、数据位、校验码、停止位、等COM口所需重要参数选择 4、可以按照十六进制发送和显示、可以自动清空、发送自动回车、...
C#源码系列7---一个开源ERP源码(C#)
C#串口操作小例子,P/Invoke 调用...........
c#-的WPF---MVVM例子,大家共同学习
C# 串口操作系列,串口通讯,取数 C# 串口操作系列,串口通讯,取数 C# 串口操作系列,串口通讯,取数
C#的一个串口程序。协议就不说了,删除协议之后就是个基本的串口通信例子了,和大家分享一下
C#串口操作串口操作串口操作C#串口操作串口操作串口操作C#串口操作串口操作串口操作C#串口操作串口操作串口操作C#串口操作串口操作串口操作
实战C#.NET编程----Spring.NET & NHibernate从入门到精通
C# 串口操作类 常用串口操作
C#操作类全-- 几乎涵盖所有常用的C#类库 ,C#操作类全-- 几乎涵盖所有常用的C#类库