基于c#的串口通信上位机和下位机源程序

基于c#的串口通信上位机和下位机源程序

ID:16202277

大小:136.00 KB

页数:18页

时间:2018-08-08

基于c#的串口通信上位机和下位机源程序_第1页
基于c#的串口通信上位机和下位机源程序_第2页
基于c#的串口通信上位机和下位机源程序_第3页
基于c#的串口通信上位机和下位机源程序_第4页
基于c#的串口通信上位机和下位机源程序_第5页
资源描述:

《基于c#的串口通信上位机和下位机源程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于单片机串口通信的上位机和下位机实践串口是计算机上一种非常通用设备通信的协议(不要与通用串行总线UniversalSerialBus或者USB混淆)。大多数计算机包含两个基于RS232的串口。串口同时也是仪器仪表设备通用的通信协议;很多GPIB兼容的设备也带有RS-232口。同时,串口通信协议也可以用于获取远程采集设备的数据。串口通信的概念非常简单,串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。它很简单并且能够实现远距离通信。比如IEEE488定义

2、并行通行状态时,规定设备线总常不得超过20米,并且任意两个设备间的长度不得超过2米;而对于串口而言,长度可达1200米。首先亮出C#的源程序吧。主要界面:只是作为简单的运用,可以扩展的。源代码:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.IO.Ports;

3、usingSystem.Timers;namespace单片机功能控制{publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}SerialPortsp=newSerialPort();privatevoidbutton1_Click(objectsender,EventArgse){Stringstr1=comboBox1.Text;//串口号Stringstr2=comboBox2.Text;//波特率Stringstr3=comboBox3.Text;

4、//校验位Stringstr4=comboBox5.Text;//停止位Stringstr5=comboBox4.Text;//数据位Int32int2=Convert.ToInt32(str2);//将字符串转为整型Int32int5=Convert.ToInt32(str5);//将字符串转为整型groupBox3.Enabled=true;//LED控制界面变可选try{if(button1.Text=="打开串口"){if(str1==null){MessageBox.Show("请先选择串口!","Error");retu

5、rn;}sp.Close();sp=newSerialPort();sp.PortName=comboBox1.Text;//串口编号sp.BaudRate=int2;//波特率switch(str4)//停止位{case"1":sp.StopBits=StopBits.One;break;case"1.5":sp.StopBits=StopBits.OnePointFive;break;case"2":sp.StopBits=StopBits.Two;break;default:MessageBox.Show("Error:参数不

6、正确","Error");break;}switch(str3){case"NONE":sp.Parity=Parity.None;break;case"ODD":sp.Parity=Parity.Odd;break;case"EVEN":sp.Parity=Parity.Even;break;default:MessageBox.Show("Error:参数不正确","Error");break;}sp.DataBits=int5;//数据位sp.Parity=Parity.Even;//设置串口属性sp.Open();//打开串

7、口button1.Text="关闭串口";textBox1.Text=Convert.ToString(sp.PortName)+"已开启!";}else{sp.Close();button1.Text="打开串口";groupBox3.Enabled=false;//LED控制界面变灰色textBox1.Text=Convert.ToString(sp.PortName)+"已关闭!";}}catch(Exceptioner){MessageBox.Show("Error:"+er.Message,"Error");return;

8、}}privatevoidForm1_Load(objectsender,EventArgse){//初始化textBox1.Text="欢迎使用简易的串口助手!";groupBox3.Enabled=false;//LED控制界面变

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

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

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