当前位置: 首页 > news >正文

STM32 串口基础知识学习

串行/并行通信

串行通信:数据逐位按顺序依次传输。
在这里插入图片描述
并行通信:数据各位通过多条线同时传输。
在这里插入图片描述
对比

  • 传输速率:串行通信较低,并行通信较高。
  • 抗干扰能力:串行通信较强,并行通信较弱。
  • 通信距离:串行通信较长,并行通信较短。
  • IO资源占用:串行通信较少,并行通信较多。
  • 成本:串行通信较低,并行通信较高。

单工/半双工/全双工通信

单工通信:数据只能沿一个方向传输。(类似于广播站)
在这里插入图片描述

半双工通信:数据可以沿两个方向传输,但需要分时进行。
在这里插入图片描述

全双工通信:数据可以同时进行双向传输。
在这里插入图片描述

同步/异步通信

在这里插入图片描述
同步通信:共用同一种时钟信号。
异步通信:没有时钟信号,通过在数据信号中加入起始位和停止位等一些同步信号。

波特率

比特率:每秒钟传送的比特数,单位bit/s
波特率:每秒钟传送的码元数,单位Baud

比特率 = 波特率 * log2M,M表示每个码元承载的信息量。
二进制系统中,波特率数值上等于比特率。

常见的串行通信接口

  • UART(通用异步收发器):接口引脚:TXD(发送端)、RXD(接收端)、GND(公共地);数据同步方式:异步通信;数据传输方向:全双工。
  • 1-wire:接口引脚:DQ:发送/接收端;数据同步方式:异步通信;数据传输方向:半双工。
  • IIC:接口引脚:SCL:同步时钟、SDA:数据输入/输出端;数据同步方式:同步通信;数据传输方向:半双工。
  • SPI:接口引脚:SCK:同步时钟、MISO:主机输入,从机输出、MOSI:主机输出,从机输入、CS:片选信号;数据同步方式:同步通信;数据传输方向:全双工。
    在这里插入图片描述
    串口:串行通信接口:按位发送和接收的接口。如:RS-232/422/485等。

RS-232电平与COMS/TTL电平对比

  • RS-232电平:逻辑1:-15V–3V,逻辑0:+3V-+15v
  • CMOS电平(3.3V):逻辑1:3.3V,逻辑0:0V(STM32)
  • TTL电平(5V):逻辑1:5V,逻辑0:0V

因此:CMOS/TTL电平不能与RS-232电平直接交换信息。

两个设备之间的TXD和RXD,必须交差连接,才能正常通信。

STM32串口与电脑USB口通信

在这里插入图片描述

相关文章:

STM32 串口基础知识学习

串行/并行通信 串行通信:数据逐位按顺序依次传输。 并行通信:数据各位通过多条线同时传输。 对比 传输速率:串行通信较低,并行通信较高。抗干扰能力:串行通信较强,并行通信较弱。通信距离:串…...

页面滚动时隐藏element-ui下拉框/时间弹框

场景 在系统中,当(有垂直滚动时)点击下拉框后滚动页面,会发现下拉项会遮盖住页面中的元素,不会隐藏 解决:(以vue为例) 在页面滚动或者缩放时隐藏下拉项即可(借助点击目标元素,下…...

C#中i++和++i的底层原理

一:前言 我们都知道,i是先取值,后计算。i是先计算,后取值。下面说下它的底层原理 二:原理 int i 0; i; Console.WriteLine(i); 结果是1 执行步骤是: 1.将常量0压入栈中 2.从栈中取出元素0,局…...

在win10下安装verilator

主要参考文章 Verilator简介及其下载安装卸载_徐晓康的博客的博客-CSDN博客https://blog.csdn.net/weixin_42837669/article/details/114505364上面的文章可以解决大部分问题,但是可能是方案有些老了,已经安装最新的版本,下面对最新的版本安装提供解决方案 一 预备工作 安…...

java设计模式-建造者(Builder)设计模式

介绍 Java的建造者(Builder)设计模式可以将产品的内部表现和产品的构建过程分离开来,这样使用同一个构建过程来构建不同内部表现的产品。 建造者设计模式涉及如下角色: 产品(Product)角色:被…...

iOS开发-实现获取下载主题配置动态切换主题

iOS开发-实现获取下载主题配置动态切换主题 iOS开发-实现获取下载主题配置更切换主题,主要是通过请求服务端配置的主题配置、下载主题、解压保存到本地。通知界面获取对应的图片及颜色等。 比如新年主题风格,常见的背景显示红色氛围图片、tabbar显示新…...

react经验4:动态组件

什么是动态组件&#xff1f; 在页面的一小块区域切换显示不同的组件 实现方法 1.声明示例组件 //写在component1.tsx中 const Component1()>{return (<div>组件1</div>) } //写在component2.tsx中 const Component2()>{return (<div>组件2</div…...

Java maven的下载解压配置(保姆级教学)

mamen基本概念 Maven项目对象模型(POM)&#xff0c;可以通过一小段描述信息来管理项目的构建&#xff0c;报告和文档的项目管理工具软件。 Maven 除了以程序构建能力为特色之外&#xff0c;还提供高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性&#xff0c;所以…...

Java课题笔记~数据库连接池

一、数据库连接池 1.1 数据库连接池简介 数据库连接池是个容器&#xff0c;负责分配、管理数据库连接(Connection) 它允许应用程序重复使用一个现有的数据库连接&#xff0c;而不是再重新建立一个&#xff1b; 释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数…...

设计模式-单例模式

文章目录 单例模式饿汉式单例懒汉式单例懒汉式加锁单例双重锁校验单例静态内部类单例枚举单例 单例模式 单例模式主要是确保一个类在任何情况下都只有一个实例&#xff0c;并提供一个全局访问的点。 主要有以下几种 饿汉式单例 /*** 饿汉式* 类加载到内存后&#xff0c;就实…...

golang mysql

驱动 "github.com/go-sql-driver/mysql"使用到的方法 func sql.Open(driverName string, dataSourceName string) (*sql.DB, error) func (*sql.DB).Prepare(query string) (*sql.Stmt, error)//使用DB.Prepare预编译并使用参数化查询&#xff0c;对预编译的SQL语句…...

uniapp使用echarts

uniapp使用echarts 1.下载资源包2.引入资源包3.代码示例注意事项 1.下载资源包 https://echarts.apache.org/zh/download.html 2.引入资源包 将资源包放入项目内 3.代码示例 <template><div style"width:100%;height:500rpx" id"line" ref&…...

Python命令模式介绍、使用

一、Python命令模式介绍 Python命令模式&#xff08;Command Pattern&#xff09;是一种行为型设计模式&#xff0c;它允许将请求或操作封装在对象中&#xff0c;并将其作为参数传递给调用对象&#xff0c;以在不同的环境中执行相同的请求或操作。 功能&#xff1a; 将请求或…...

#typescript 使用file-saver模块#

场景&#xff1a;前端使用file-saver模块做导出文档的时候&#xff0c;出现两个错误 1&#xff1a;npm run build 提示找不到模块&#xff0c;如图 解决方法&#xff1a; 先卸载&#xff0c;不管是否安装都先要卸载 ,然后安装&#xff1a; npm uninstall file-saver npm…...

移动端适配布局rem和vw

在日益发展的移动互联网时代&#xff0c;作为前端开发者&#xff0c;我们必须了解和掌握各种移动端显示效果的适配技术。在众多适配方案中&#xff0c;使用rem和vw进行布局是当前最为流行和普遍使用的两种技术。通过合理运用这两种技术&#xff0c;我们可以让我们的网页在不同尺…...

【Java基础教程】(四十八)集合体系篇 · 上:全面解析 Collection、List、Set常用子接口及集合元素迭代遍历方式~【文末送书】

Java基础教程之集合体系 上 &#x1f539;本章学习目标1️⃣ 类集框架介绍2️⃣ 单列集合顶层接口&#xff1a;Collection3️⃣ List 子接口3.1 ArrayList 类&#x1f50d; 数组&#xff08;Array&#xff09;与列表&#xff08;ArrayList&#xff09;有什么区别?3.2 LinkedL…...

什么是 DNS ANAME 解析?

本人使用谷歌搜索了简中互联网&#xff0c;完全没有找到任何有关 ANAME 的文章……本文该不会是头一份吧 相信大家对于 DNS 的解析方式都不陌生&#xff0c;常见的有 A、CNAME、MX、TXT 记录等等。其中&#xff0c;网站常用的是 A 记录和 CNAME 记录&#xff1a;A 记录用于将域…...

Neo4j 集群和负载均衡

Neo4j 集群和负载均衡 Neo4j是当前最流行的开源图DB。刚好读到了Neo4j的集群和负载均衡策略&#xff0c;记录一下。 1 集群 Neo4j 集群使用主从复制实现高可用性和水平读扩展。 1.1 复制 集群的写入都通过主节点协调完成的&#xff0c;数据先写入主机&#xff0c;再同步到…...

go web框架 gin-gonic源码解读01————Engine

go web框架 gin-gonic源码解读01————Engine gin-gonic是go语言开发的轻量级web框架&#xff0c;性能优异&#xff0c;代码简洁&#xff0c;功能强大。有很多值得学习的地方,最近准备把这段时间学习gin的知识点&#xff0c;通过engine&#xff0c;context&#xff0c;router…...

windows版docker部署springcloud项目

材料&#xff1a; 1.windows版docker环境&#xff08;其他版教程可能道理一样但是比如文件后坠名上可能有差异&#xff09; 2.运行好的数据库容器&#xff08;实现教程&#xff09; 3.所有jar包 实现&#xff1a; 最后整好的文件夹结构图&#xff08;原工程文件机密&#xf…...

《QGIS空间数据处理与高级制图》022:融合后拓扑错误预检查

作者:翰墨之道,毕业于国际知名大学空间信息与计算机专业,获硕士学位,现任国内时空智能领域资深专家、CSDN知名技术博主。多年来深耕地理信息与时空智能核心技术研发,精通 QGIS、GrassGIS、OSG、OsgEarth、UE、Cesium、OpenLayers、Leaflet、MapBox 等主流工具与框架,兼具…...

写给前端的 CANN-ops-rand:昇腾随机数生成算子库到底是啥?

之前做强化学习&#xff0c;兄弟问我&#xff1a;“哥&#xff0c;我想在昇腾上做蒙特卡洛模拟&#xff0c;随机数生成有现成的库吗&#xff1f;” 好问题。今天一次说清楚。 ops-rand 是啥&#xff1f; ops-rand Operations for Random&#xff0c;昇腾随机数生成算子库。 一…...

3步快速上手:抖音去水印批量下载器完整指南

3步快速上手&#xff1a;抖音去水印批量下载器完整指南 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support. 抖音批…...

Go语言模板引擎与前端渲染实战

Go语言模板引擎与前端渲染实战 引言 模板引擎是Web开发中连接后端数据与前端展示的关键组件。Go语言标准库提供了强大的模板引擎&#xff0c;本文将深入探讨其使用方法和最佳实践。 一、Go模板引擎基础 1.1 text/template与html/template // text/template - 纯文本模板 import…...

数据缺失处理实战指南:从原理到应用,掌握KNN与MICE填补技术

1. 项目概述&#xff1a;数据缺失&#xff0c;一个绕不开的“坑”做数据分析、机器学习或者任何和数据打交道的工作&#xff0c;你大概率都遇到过这种情况&#xff1a;打开数据集&#xff0c;满怀期待地准备大干一场&#xff0c;结果发现好几列数据里都夹杂着刺眼的“NaN”、“…...

为什么选择Minimal:GitHub Pages最简洁主题的深度解析与快速入门指南

为什么选择Minimal&#xff1a;GitHub Pages最简洁主题的深度解析与快速入门指南 【免费下载链接】minimal Minimal is a Jekyll theme for GitHub Pages 项目地址: https://gitcode.com/gh_mirrors/mini/minimal Minimal主题是GitHub Pages平台上最受欢迎、最简洁的Jek…...

科研实验室数字化转型:如何用eLabFTW打造专业电子实验笔记本系统

科研实验室数字化转型&#xff1a;如何用eLabFTW打造专业电子实验笔记本系统 【免费下载链接】elabftw :notebook: eLabFTW is the most popular open source electronic lab notebook for research labs. 项目地址: https://gitcode.com/gh_mirrors/el/elabftw 在当今数…...

如何永久免费使用Cursor Pro?终极破解工具完整指南

如何永久免费使用Cursor Pro&#xff1f;终极破解工具完整指南 【免费下载链接】cursor-free-vip [Support 0.45]&#xff08;Multi Language 多语言&#xff09;自动注册 Cursor Ai &#xff0c;自动重置机器ID &#xff0c; 免费升级使用Pro 功能: Youve reached your trial …...

Go语言实战:构建高可用API + HASH上链存证服务,这不是妥协而是最优解

关键词:Go, 区块链, 存证, SHA256, 签名, 高并发 前言 在关于区块链落地的技术讨论中,"链下计算 + 链上存证"模式常常被贴上"妥协方案"的标签。很多人认为,只有把数据完全搬到链上,才能体现区块链的价值。 然而,经过大规模生产环境的验证,我们发现…...

收藏!大模型算法工程师11个方向及2026年前景深度解析(小白程序员进阶必看)

本文深度剖析大模型算法工程师的11个核心方向&#xff0c;包括推理训练、Agentic Search、Agent/Tool Use等&#xff0c;并按梯队划分其发展前景。重点分析了各方向的技术难点与未来趋势&#xff0c;如开放域推理奖励设计、长链路推理稳定性、多模态后训练等。文章强调RL训练能…...