串口理解小结(UART)

串口作为单片机的必备外设,主要用于单片机与其它模块的信息通讯、程序烧录和升级作用。

UART全称为通用异步收发器。

可分为:

一、串行和并行

串行指数据位只能一位一位地发送

并行之多个数据位同时发送

二、同步和异步

同步和异步是相当于时钟而言地,两者没有统一的时钟称为异步,反之为同步。

三、单工和双工

单工和双工之相对于传输的方向而言,单工只能沿一个方向传输,双工能沿两个不同方向传输,需要两根传输线,又可分为半双工和全双工,半双工指收发不能同时进行,全双工则可以进行同时的数据收发。

四、帧格式

即了解数据是怎么进行收发的,

一帧包括起始位(1位)、数据位(5~8位)、校验位(1位,可有可无)、停止位(1/1.5/2位)。

所以检测串口没有发送数据时的电平恒为高电平,起始位就是告诉单片机或其它模块我要准备发送数据了,然后把数据发送出去,发送的数据不能过多,否则一个错了,后面的数据全错了,需要将一帧一帧进行发送, 校验位顾名思义就检查数据是否出错,一般为0或1电平,如何判断?根据帧数据里"1"的个数,奇数个则校验位为1,偶数个则为0。
硬件连接:

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【23种设计模式·全精解析 | 行为型模式篇】11种行为型模式的结构概述、案例实现、优缺点、扩展对比、使用场景、源码解析

文章目录 行为型模式1、模板方法模式(1)概述(2)结构(3)案例实现(4)优缺点(5)适用场景(6)JDK源码解析(7)模板方…

用customize-cra+react-app-rewired配置less+css module

1. 安装 npm i less less-loader -D npm i customize-cra-less-loader -D2.添加配置项 //config-overrides.js const { override } require(customize-cra); const addLessLoader require("customize-cra-less-loader");module.exports {webpack: override(addL…

爬虫学习 逆向爬虫(六)

多任务异步协程 协程:更高效的利用CPU import timedef func():print("黎明")time.sleep(3)print("还是黎明")func() 等待时机长 sleep时CPU不再工作 IO操作(费时不费力)->阻塞 线程运行阻塞后 移出主线程 移动到下一个 4个任务一个线程 …

通用plantuml模板头

通用plantuml文件 startuml participant Admin order 0 #87CEFA // 参与者、顺序、颜色 participant Student order 1 #87CEFA participant Teacher order 2 #87CEFA participant TestPlayer order 3 #87CEFA participant Class order 4 #87CEFA participant Subject order …

微服务API网关Spring Cloud Gateway实战

概述 微服务网关是为了给不同的微服务提供统一的前置功能;网关服务可以配置集群,以承载更多的流量;负载均衡与网关互相成就,一般使用负载均衡(例如 nginx)作为总入口,然后将流量分发到多个网关…

线性表——(2)线性表的顺序存储及其运算的实现

归纳编程学习的感悟, 记录奋斗路上的点滴, 希望能帮到一样刻苦的你! 如有不足欢迎指正! 共同学习交流! 🌎欢迎各位→点赞 👍 收藏⭐ 留言​📝 看到美好,感受美好&a…

A*算法学习

系列文章目录 前言 在总结 2023华为软件精英挑战赛——全赛段思路分享与总结 - 知乎 (zhihu.com)时,发现自己还有很多技术细节没搞懂,这里看静态全局路径规划最常见的A*算法,这个博主讲得很好: A-Star(A*&#xff0…

【ASP.NET CORE】.NET 6.0 NET CORE MVC连接SQLSERVER数据库

项目装NuGet包,具体版本如下 在appsettings.json中,添加连接字符串 代码如下: "ConnectionStrings": {"MVCSqlContext": "Serverlocalhost;DatabaseAddress;User IDsa;Passwordsa;TrustServerCertificatetrue&q…

5 面试题--redis

伪客户端: 伪客户端的 fd 属性值为 -1;伪客户端处理的命令请求来源于 AOF ⽂件或者 Lua 脚本,⽽不是⽹络,所以这种客户端不需要套接字连接,⾃然也不需要记录套接字描述符。⽬前 Redis 服务器会在两个地⽅ ⽤到伪客户端…

BTCPay Server:免费、安全、开源的比特币支付处理器 | 开源日报 No.90

MunGell/awesome-for-beginners Stars: 58.0k License: NOASSERTION 这个项目是一个收集开源项目的列表,旨在帮助初学者找到可以贡献代码的机会。该列表按编程语言分类,并列出了每个项目以及其标签 (如 “good-first-issue”、“beginner” 等)。主要功…

Java小游戏 王者荣耀(简易版)

GameFrame类 所需图片: package 王者荣耀;import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.io.File; import java.util.ArrayList…

Spring Cloud Stream如何屏蔽不同MQ带来的差异性?

引言 在当前的微服务架构下,使用消息队列(MQ)技术是实现服务解耦和削峰填谷的重要策略。为了保证系统的灵活性和可替换性,我们需要避免对单一开源技术的依赖。 市面上有多种消息队列技术,如 Kafka、RocketMQ、Rabbit…