C#串口通讯,复制粘贴就可用,仅仅介绍怎样最快的搭建一个串口通讯,异常拦截等等需要自己加上
- using System;
- using System.Collections.Generic;
- using System.IO.Ports;
- using System.Text;
- //串口通讯类
- public class SerialPortManager
- {
- //声明一个静态的串口资源
- private SerialPort ComDevice = new SerialPort();
- public SerialPortManager()
- {
- var portList = SerialPort.GetPortNames();//获取当前搜索到的串口集合
- ComDevice.DataReceived += new SerialDataReceivedEventHandler(Com_DataReceived); //绑定事件,接收到串口数据时触发
- }
- /// <summary>
- /// 打开和关闭串口,
- /// 前端放个按钮调用这个方法
- /// 串口名称用SerialPort.GetPortNames()拉取所有串口,上面构造有写
- /// 下面相关的参数具体有些哪些百度下就知道了,这块只是举例,当然也可以直接用
- /// </summary>
- /// <param name="serialPortName">串口名称</param>
- /// <returns></returns>
- public void openOrCloseSerialPort(string serialPortName)
- {
- //判断当前状态是打开还是关闭,开启的话就关闭,反之就开启
- if (ComDevice.IsOpen == false)
- {
- //设置串口名称
- ComDevice.PortName = serialPortName;
- //设置波特率
- ComDevice.BaudRate = ;
- //设置数据位
- ComDevice.DataBits = ;
- //校验位设置
- ComDevice.StopBits = StopBits.One;
- //停止位设置
- ComDevice.Parity = Parity.None;
- //开启串口
- ComDevice.Open();
- }
- else
- {
- ComDevice.Close();//关闭串口
- }
- }
- /// <summary>
- /// 串口数据读取方法,在构造时已经监听
- /// </summary>
- private void Com_DataReceived(object sender, SerialDataReceivedEventArgs e)
- {
- byte[] ReDatas = new byte[ComDevice.BytesToRead];
- ComDevice.Read(ReDatas, , ReDatas.Length);
- //接收到的字节流
- var data = ReDatas;
- //根据自己需求转换
- var str = new UTF8Encoding().GetString(ReDatas);
- }
- /// <summary>
- /// 发送数据方法
- /// </summary>
- /// <param name="data">需要发送的字节流</param>
- public void Com_SendData(byte[] data)
- {
- if (ComDevice.IsOpen)
- {
- ComDevice.Write(data, , data.Length);//发送数据
- }
- }
- }
C#串口通讯,复制粘贴就可用,仅仅介绍怎样最快的搭建一个串口通讯,异常拦截等等需要自己加上的更多相关文章
- 现在的编辑器不能复制粘贴word中的文本
我司需要做一个需求,就是使用富文本编辑器时,不要以上传附件的形式上传图片,而是以复制粘贴的形式上传图片. 在网上找了一下,有一个插件支持这个功能. WordPaster 安装方式如下: 直接使用Wor ...
- Cocos Creator JS web平台复制粘贴代码(亲测可用)
Cocos Creator JS web平台复制粘贴代码(亲测可用) 1 webCopyString: function(str){ var input = str; const el = docum ...
- Android中的复制粘贴
Android中的复制粘贴 The Clipboard Framework 当使用clipboard framework时,把数据放在一个剪切对象(clip object)里,然后这个对象会放在系统的 ...
- ubuntu快捷复制粘贴
今天使用putty,纠结复制粘贴的时候,才发现 原来只要选中文本后,就可以中键粘贴 整个桌面环境可用,新技能啊以前居然不知道
- 在CMD命令行和PowerShell中实现复制粘贴功能
在CMD命令行和PowerShell中实现复制粘贴功能 常常使用命令行或者PowerShell的朋友肯定会遇到这样的情况:粘贴文本非常easy,右键--选择粘贴就可以,可是想要复制命令 ...
- tmux的复制粘贴
tmux有面板的概念,这导致普通终端下的ctrl+shift+C的模式复制出来的文本会串行.如果面板只有一列当然没有问题,但当面板有多列时,复制就会出问题.于是tmux提出了类似vim的复制模式.因此 ...
- mac电脑复制粘贴使用command+c command+v
mac电脑复制粘贴使用command+c command+v系统偏好设置--键盘--修饰键(右下角),将ctrl键和command键的功能对换一下即可用ctrl+c ctrl+v复制粘贴缺点:所有的c ...
- VMWare12虚拟机实现主客机间的文件拖拽(复制粘贴)和文件夹共享
版本: 主机:Windows 7 64位旗舰版 虚拟机: VMWare 12 + Windows 7 64位旗舰版 VMWare pro 12 + Ubuntu16.04LTS 64位 注:由于VMW ...
- vi的复制粘贴命令 -- (转)
vi编辑器有3种模式:命令模式.输入模式.末行模式.掌握这三种模式十分重要: 1.命令模式:vi启动后默认进入的是命令模式,从这个模式使用命令可以切换到另外两种模式,同时无论在任何模式下只要按一下[E ...
随机推荐
- Java锁_读写锁
独占锁:是指锁一次只能被一个线程持有,ReentrantLock和Synchronized都是独占锁. 共享锁:是指锁可以被多个线程持有. 对于ReentrantReadWriteLock,其读锁是共 ...
- PHP end() 函数
实例 输出数组中的当前元素和最后一个元素的值: <?php$people = array("Peter", "Joe", "Glenn" ...
- PHP strcasecmp() 函数
实例 比较两个字符串(不区分大小写): <?php高佣联盟 www.cgewang.comecho strcasecmp("Hello world!","HELLO ...
- bzoj 2125 最短路 点双 圆方树
LINK:最短路 一张仙人掌图 求图中两点最短路. \(n<=10000,Q<=10000,w>=1\) 考虑边数是多少 m>=n-1 对于一张仙人掌图 考虑先构建出来dfs树 ...
- bzoj 4305 数列的GCD
LINK:数列的GCD 题意: 给出一个长度为N的数列{a[n]},1<=a[i]<=M(1<=i<=N). 现在问题是,对于1到M的每个整数d,有多少个不同的数列b[1], ...
- day8.列表、字典、集合相关操作
一.列表的相关操作 # (1)列表的拼接 (同元组) # (2)列表的重复 (同元组) # (3)列表的切片 (同元组) # 语法 => 列表[::] 完整格式:[开始索引:结束索引:间隔值] ...
- Centos xrdp 远程连接后突然闪退
问题描述: 可以进入登录页面,但是输入用户名,密码后,直接闪退. 查看 该用户名 ~/.xsession-errors imsettings-check: ): IMSettings-WARNING ...
- 一张图理清 Python3 所有知识点
如果你前几天一直有关注 GitHub Trending,那你应该会留意到「Python3 in one pic」这个开源项目. 很多人学习python,不知道从何学起.很多人学习python,掌握了基 ...
- CentOS7 安装 SonarQube
安装 SonarQube 环境 系统 CentOS 7 数据库 postgresql 10 系统配置 查看系统配置 sysctl vm.max_map_count sysctl fs.file-max ...
- Spring的第一个程序
目录 一.Spring概述 1. Spring是什么? 2. IOC控制反转 二.Spring的第一个程序 1. 创建Maven项目 2. 加入maven依赖pom.xml 3. 定义接口和实体类 4 ...