基于c#的串口通信上位机的设计与应用

基于c#的串口通信上位机的设计与应用

ID:28170877

大小:76.00 KB

页数:7页

时间:2018-12-08

基于c#的串口通信上位机的设计与应用_第1页
基于c#的串口通信上位机的设计与应用_第2页
基于c#的串口通信上位机的设计与应用_第3页
基于c#的串口通信上位机的设计与应用_第4页
基于c#的串口通信上位机的设计与应用_第5页
资源描述:

《基于c#的串口通信上位机的设计与应用》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于C#的串口通信上位机的设计与应用【摘要】本文研究了VisualC#基于.net平台进行WinForm应用程序的开发,讲述了C#中如何使用C/S结构进行串口通信的开发,研究讨论了串口通信程序的控件、参数及其应用方案,控件包括SerialPort、Timer、Button、TextBox等,参数包括波特率、数据位、停止位、奇偶校验。实现了串口通信数据的接受与发送。【关键词】串口通信;SerialPort;波特率;奇偶校验Abstract:Inthispaper,theVisualC#.NetplatformWinForma

2、pplicationdevelopment,abouthowtousetheC/SstructureinC#serialcommunicationdevelopment,discussedtheserialcommunicationprogramcontrolparametersandtheirapplications,controlsincludeSerialPortthetimer,Button,TextBox,andsoon,theparametersincludebaudrate,databits,stopbits

3、,parity.Itisrealizedtosendandreceiveoftheserialcommunicationdata.Keyword:Serialcommunication;SerialPort;Baudrate;Parity1.引言Csharp(音标[ia:p])(又被简称为”C#”)是微软公司在2000年6月发布的一种新的编程语言,并定于在微软职业开发者论坛(PDC)上登台亮相。[H2]C#是微软公司研究员AndersHejlsberg的最新成果。C#看起来与Java有着惊人的相似;它包括了诸如单一继承、界

4、面、与Java几乎同样的语法,和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NETwindows网络框架的主角。[3]微软C#语言定义主要是从C和C++继承而来的,而且语言中的许多元素也反映了这一点。C#在设计者从C++继承的可选选项方面比JAVA要广泛一些(比如说struts),它还增加了自己新的特点(比方说源代码版本定义)。[5_6]C#是一种最新的、面向对象的编程语言。它使得程序员可以快速地编写各种基于MICRO

5、SOFT.NET平台的应用程序,MICROSOFT.NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选一一无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,这些组件可以方便的转化为XML网络服务,从而使它们可以由任何语言在任何操作系统上通过INTERNET进行调用。[6-7]1.串口通信设计方案2.1窗体界面设计一个窗体应用程序,实现实时数据的发送与接收,窗体界面如图1所示:1窗体设计界面2.2编码程序(1)串口设置:首先设置串口

6、检测功能,如果有多个串口,要都能检测出来并且可以打开串口连接。(2)波特率:设置串口的常用波特率,在信息传输通道中,携带数据信息的信号单元叫码元,每秒钟通过信道传输的码元数称为码元传输速率,简称波特率。波特率是传输通道频宽的指标。(3)设置奇偶校验位:奇偶校验能够检测出信息传输过程中的部分误码(1位误码能检出,2位及2位以上误码不能检出),同时,它不能纠错。在发现错误后,只能要求重发4)发送数据:编写发送数据程序,要在tbxSendData.Text中写入一段数据并发送成功(5)接收数据:要能实时并且连续的接收串口收到的数

7、据2所示:1.软件测试结果与分析3.1软件测试结果编译好程序,运行结果如2运行界面3发送数据图4接收数据3.2发送数据如图3所示,在发送数据里输入一串数字“001213”发3.3接收数据如图4所示,发送数据后,接收串口收到的数据“HelloWorld!”3.4结果分析基于C#的串口通信上位机的设计,此次设计选择的的串口为“C0M1”,奇偶校验设置“无”,波特率选择为“57600”,数据位设置为“8”,停止位为“1”,上位机向外部设备成功发送数据“001213”,并且成功接收到连续的数据“HelloWorld!”。接收数据时

8、此次设计的重点,本次设计采用的方案是事件响应驱动,当串口输入缓冲区的字节数据大于设定值时,触发串口输入中断,这时在中断程序中读取串口输入缓冲区中的数据,具有实时性和灵活性。此设计成功实现了数据的收发功能,程序能够搜索多个串口并且可以设置串口波特率,停止位,数据位等基本属性,运行流畅,还解决了程序重复运行

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。