Windows上位机C++串口通信 原理+库代码编写+库运用(机甲大师逐曦战队算法组主线教程1)

本文聚焦于C++在Windows环境下的串口通信,因C++无Python方便的串口库,需自行定义。文中先介绍串口通信理论,包括数电基础、通信基础、UART协议等,接着讲解串口库代码编写,涵盖Windows主要函数、类的创建与函数编写,还说明了库的使用及完整操作步骤,并布置了作业。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C++中的串口通信没有Python方便的sarial库,须自己定义完成库调用。

本文主要教学简单的串口库编写及调用,并附全部代码及库文件。

建议自行编写库体会串口通信,并完成作业。

一、串口通信理论

(一)基本概念

1、数电基础

省流版:通信中串口发送的数据内容与格式编写需一定数电基础,稍作了解即可

(1)数制

指多位数码中每一位的构成方法以及从低位到高位的进位规则。

常用数制:十进制、二进制、八进制、十六进制等

 

 

 (2)码制

用数字技术来处理和传输的以二进制形式表示数字、字母或特殊符号的系统。

用文字、符号或数码表示特定对象的过程称为编码。数字电路中常用的是二进制编码。N位二进制代码有2的N次方个状态,可表示2的N次方个对象。

2、通信基础

(1)并行串行

(2)异步同步

异步串行通信:异步串行通信是指通信双方以一个字符(包括特定附加位)作为数据传输单位且发送方传送字符的间隔时间不一定,具有不规则数据段传送特性的串行数据传输。

同步串行通信:同步串行通信是指在约定的通信速率下,发送端和接收端的时钟信号频率和相位始终保持一致(同步),这就保证了通信双方在发送和接收数据时具有完全一致的定时关系。

(3)单工双工

(二)串口概述

1、UART协议

(1)UART    

Universal Asynchronous Receiver Transmitter 即     通用异步收发器,是一种通用的串行、异步通信总线     该总线有两条数据线,可以实现全双工的发送和接收     在嵌入式系统中常用于主机与辅助设备之间的通信

(2)UART帧格式

(3)硬件连接

 

TXD为发送端,RXD为接收端 

(4)参数 波特率

用于描述UART通信时的通信速度,其单位为     bps(bit per second)即每秒钟传送的bit的数量

2、个人计算机中的串口

(1)USB串口

Universal Serial Bus(通用串行总线) 简称USB,是目前电脑上应用较广泛的接口规范,由Intel、Microsoft、Compaq、IBM、NEC、Northern Telcom等几家大厂商发起的新型外设接口标准。USB接口是电脑主板上的一种四针接口,其中中间两个针传输数据,两边两个针给外设供电。USB接口速度快、连接简单、不需要外接电源,传输速度12Mbps,最新USB2.0可达480Mbps;电缆最大长度5米,USB电缆有4条线,2条信号线,2条电源线,可提供5伏特电源,USB通过串联方式最多可串接127个设备;支持热插拔。

(2)虚拟串口

虚拟串口一般用来调试PC上位机软件和串口的通讯。在没有电控队友在身边时,我们需要知道我们发送过去了什么数据,即数据是否完整,数据传输的状态等,这时候我们就需要虚拟串口 即在mcu中直接虚拟一个串口,这样我们就可以使用串口助手直接查看该串口数据的收发情况。

虚拟串口及串口助手的下载使用可参考以下文章

http://t.csdnimg.cn/fq1ax

二、代码_串口库

先编写串口库文件,

(一)windows主

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值