STM32(14)USART

USART:一种片上外设,用来实现串口通信,就是stm32内部的串口

USART简介

串并转换电路

串行通信和并行通信

串行:一根数据线,逐个比特位发送

为什么要串并转换

移位寄存器

USART的基本模型

通过查询SR(状态寄存器) 可知数据有没有发完,有没有接收到数据等

CR(配置寄存器)

BPR(波特率寄存器) 

产生一个频率可调的脉冲信号

数据的发送

 双缓冲和连续发送

TDR和移位寄存器分别对应两个缓冲

数据发送过程中的问题

1.数据发送过快导致数据覆盖

2.数据说明时候发送完成

SR(状态寄存器)

通过读取标志位获取USART的工作状态

每次向TDR中写值之前,先查询TXE标志位

TXE=1,则TDR寄存器为空,可以写

TC=1,则两个寄存器都为空,表明数据发完了

单个数据的发送

数据的连续发送

 

错为什么错:并不是双缓冲的连续发送

数据的接收

存在的问题:不知道什么时候读数据

 有数据时,要赶紧读RDR里的数据

接收单个数据

接收多个数据

错误标志位

 

接收方:

数据接收方会采集码元,过采样的方式采集,以16倍的波特率采集,三次采的都是1则1,

过载错,没有及时的读数据,导致接收方的移位数据寄存器中的数据被后来的数据覆盖,则ORE为1

错误标志位只对数据的接收方有效

所以这些程序只写在数据接收方

 为什么要先备份:

错误标志位指示的是当前在RDR寄存器里的数据的错误情况,第三步把数据读出来后,标志位会清空

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/440965.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

加速大模型落地:火山引擎向量数据库的实践应用

近两年随着大模型技术的快速发展,图片、视频、自然语言等多模态、非结构化数据的查找需求变大,非结构化数据的量级也远大于结构化数据,传统数据库已经无法满足如此多样化数据的处理需求。向量数据库以其海量的数据存储规模、高效的计算查询能…

并发安全问题(超卖问题)

一,问题解析 超买问题就是,原本库存中有200件库存,结果由于并发问题售出了300件这就是炒卖问题对于买东西无非就是 查询商品,判断库存是否充足,如果充足则下单成功。 这里采用的是先查询,再判断&#xff0c…

复杂业务场景下,如何优雅的使用设计模式来优化代码?

1、引言 本文以一个实际案例来介绍在解决业务需求的路上,如何通过常用的设计模式来逐级优化我们的代码,以把我们所了解的到设计模式真实的应用于实战。 2、背景 假定我们现在有一个订单流程管理系统,这个系统对于用户发起的一笔订单&#…

MyBatis-Plus如何娴熟运用乐观锁

欢迎来到我的博客,代码的世界里,每一行都是一个故事 MyBatis-Plus如何娴熟运用乐观锁 前言乐观锁的基本概念基本概念和原理:为何乐观锁是解决并发问题的有效手段: MyBatis-Plus中乐观锁的支持1. Version 注解:2. 配置乐…

穿越牛熊,股市的春天还有多远?

2023年,资本市场的严冬令无数投资者和机构投资者都感受到了前所未有的压力。VC/PE、公募基金、股权投资类公司等机构,在这一年里业绩普遍不佳,寒意弥漫。VC/PE机构的营业收入普遍呈现负增长,公募基金更是历史上首次连续两年亏损&a…

包含字母数字及特殊字符 三种组合的正则两种写法

//长度8~16位;包含字母、数字及特殊字符 #$%^&*_-//正则1 写法:let reg_1 /^(?![A-Za-z0-9]$)^(?![A-Za-z#$\%^&*_\-]$)^(?![0-9#$\%^&_*\-]$)([A-Za-z0-9#$\%^&*_\-]{8,16})$///正则2 写法:let reg_2 /^(?![A-Za-z#$%…

在Vue中处理接口返回的二进制图片数据

🌟 前言 欢迎来到我的技术小宇宙!🌌 这里不仅是我记录技术点滴的后花园,也是我分享学习心得和项目经验的乐园。📚 无论你是技术小白还是资深大牛,这里总有一些内容能触动你的好奇心。🔍 &#x…

产品经理必看,教你写一份简单的产品说明书

作为一名产品经理,你可能会为如何写一份能够有效传达产品特性和使用步骤的说明书而困扰。确实,写作产品说明书的过程中,需要详细并准确展示产品的所有功能,同时保持文本清晰、简洁和易于理解。以下是一些步骤和技巧,可…

AntV L7的pointLayer点图层

本案例使用L7库和Mapbox GL JS创建点数据并加载进地图。 文章目录 1. 引入 CDN 链接2. 引入组件3. 创建地图4. 创建场景5. 创建点数据5.1. 普通 json 数据5.2. geojson 数据 6. 创建点图层6.1. 普通 json 数据6.2. geojson 数据 7. 演示效果8. 代码实现 1. 引入 CDN 链接 <s…

不注册访问 Claude3 大模型

随着Claude3大模型的出世&#xff0c;大模型霸主地位已经发生易位&#xff0c;但是国内使用Claude3官网 无论是注册都不容易&#xff0c;本篇文章主要介绍如何不通过Claude3 官网实现Claude3 大模型的使用&#xff0c;这里优先推荐Chatbot Arena 一、直接通过第三方代理 Chatb…

CorelDRAW Graphics Suite2024免费试用体验15天版下载

使用基于全球知名的 Corel Painter 画笔技术构建的 100 款逼真像素画笔&#xff0c;以全新的方式将您独特的想法变为现实&#xff01;试用 CorelDRAW 的全新美术画笔&#xff0c;探索您的创意想法。 使用 CorelDRAW 中现在可用的远程字体&#xff0c;畅享更多创作自由&#xf…

Humanoid-Gym 开源人形机器人端到端强化学习训练框架!星动纪元联合清华大学、上海期智研究院发布!

系列文章目录 前言 Humanoid-Gym: Reinforcement Learning for Humanoid Robot with Zero-Shot Sim2Real Transfer GitHub Repository: GitHub - roboterax/humanoid-gym: Humanoid-Gym: Reinforcement Learning for Humanoid Robot with Zero-Shot Sim2Real Transfer 一、介…

一键查看:大厂网站都用了啥技术栈,有图有真相。

本次我们采用Wappalyzer插件来看下国内大厂的网站都采用了什么技术架构&#xff0c;文章最后由Wappalyzer的安装方法。 今日头条网站 淘宝网站 哔哩哔哩 京东商城 花瓣网 CSDN 国务院 网易 58同城 腾讯网 如何安装Wappalyzer 用Edge浏览器即可

软考70-上午题-【面向对象技术2-UML】-UML中的图1

一、图的定义 图是一组元素的图形表示&#xff0c;大多数情况下把图画成顶点、弧的联通图。 顶点&#xff1a;代表事物&#xff1b; 弧&#xff1a;代表关系。 可以从不同的角度画图&#xff0c;UML提供了13种图&#xff1a;&#xff08;只看9种&#xff09; 类图&#xff…

内联函数|auto关键字|范围for的语法|指针空值

文章目录 一、内联函数1.1概念1.2特性 二、auto关键字2.2类型别名思考2.3auto简介2.4auto使用细则2.4 auto不能推导的场景 三、基于范围的for循环(C11)3.1 范围for的语法 四、指针空值nullptr(C11)4.1 C98中的指针空值 所属专栏:C初阶 一、内联函数 1.1概念 以inline修饰的函…

内部订单预算管理 在建工程项目结转流程以及用户操作步骤

业务流程概述: 所有的内部定单(项目)在月底时都必须将当月发生的费用按结算规则结转到在建工程卡片中。为保证结转的正确性,在系统中可以先查看项目费用的明细表后再由系统自动结转到在建工程卡片中。 对于已竣工的项目,还需要到系统中查看项目报表,根据报表将工程实际发生…

【人工智能入门必看的最全Python编程实战(2)】

4.4.2 复合语句&#xff1a; if语句&#xff0c;当条件成立时执行语句包。它经常包含elif、else子句。while语句&#xff0c;当条件为真时&#xff0c;重复执行语句包。for语句&#xff0c;遍历列表、字符串、字典、集合等迭代器&#xff0c;依次处理迭代器中的每个元素。matc…

设计模式——2_4 中介者(Mediator)

我寄愁心与明月&#xff0c;随风直到夜郎西 ——李白《闻王昌龄左迁龙标遥有此寄》 文章目录 定义图纸一个例子&#xff1a;怎么调度一组地铁站台和地铁开车指挥中心 碎碎念中介者和表单平台思想但是这种平台便利性是要付出代价的变化隔离原则 姑妄言之 定义 用一个中介者对象…

吴恩达机器学习-可选实验室:特征工程和多项式回归(Feature Engineering and Polynomial Regression)

文章目录 目标工具特征工程和多项式回归概述多项式特征选择功能备用视图扩展功能复杂的功能 恭喜! 目标 在本实验中&#xff0c;你将:探索特征工程和多项式回归&#xff0c;它们允许您使用线性回归的机制来拟合非常复杂&#xff0c;甚至非常非线性的函数。 工具 您将利用在以…