【超简单的串口通信的工作原理】

2023-11-06

下图是电脑收到单片机经过串口发送的信息, 那么电脑是如何与单片机进行串口通信的呢?
在这里插入图片描述
首先,任何一种通信都要包括硬件物理接口和软件通信协议。
串口通信物理接口如下图。单片机通过发送端将数据从左往右一位一位按顺序发送;且在发送前,我们需要事先约定好帧格式,和波特率,这种规则被称为串口通信协议。
通过波形测试,我们可以看到发送端的数据线里的波形如下图:
在这里插入图片描述
那么帧格式如何定义呢?
下图便是一帧完整的串行通信数据,它一共有10位,并从左往右依次把数据给发送出去。起始位永远是低电平,停止位永远是高电平,中间的是8位二进制数据(用户自定义)。按照这种规则,我们把图中处于高电平状态的数据位相加得到65,从ASCII码表中查到65对应的就是A,通过8个数据位我们便可得到256种不同的信息组合(如下图)。
因此,我们想发送什么数据,就按照ASCII表上的值让微控制器去发送高低电平就可以了。
在这里插入图片描述
在这里插入图片描述
那么波特率在串口通信中有啥作用呢,可不可以随意设置波特率呢?
在发送数据的同时必须要有时间间隔。这里的时间间隔就得看串口通信的波特率了。在第一章图中,我们使用的波特率为9600/s,也就是1每位数据之间的间隔约为100us。
在这里插入图片描述
即每隔100us,微控制器向电脑发送一次高低电平(比如微控制器发送65,电脑收到的就是A)。如果想要使数据更快的发送,可以选择更高的波特率,比如115200/s(即发送时间间隔为8.7us)。
但是我们在编程时设置的串口发送时间间隔必须要和波特率严格对应上,若对应不上,则会出现下图情况。
在这里插入图片描述
即当我们将数据发送过去,接收方可能已经过了接收时间,可能导致数据错乱。
以上就是串口发送数据的底层原理。
在这里插入图片描述
但是我们用串口发送数据时,不需要向上面设置的那么繁琐。以Arduino为例,在程序的最开头设置好波特率,然后直接把C用这个函数发送出去,无需我们设置时间间隔,也无需按照ASCII表像刚才那样一位一位的去发送数据,但该函数底层编程是按照这种思想编写代码,我们只需调用相关库文件和函数即可。
注:视频教程来自B站UP:爱上半导体

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【超简单的串口通信的工作原理】 的相关文章

  • 电商数据接口API深度解析

    随着电子商务的快速发展 电商平台之间的竞争也日益激烈 为了在市场中保持领先地位 电商平台需要不断地优化用户体验 提供个性化的服务和精准的推荐 而这一切都离不开数据 电商数据接口API作为一种高效 便捷的数据交互方式 被广泛应用于电商领域 本
  • 思腾合力赞助CCF YOCSEF太原第十一届学术委员会第三次全体会议

    2024年1月6日 由思腾合力赞助的 CCF YOCSEF太原第十一届学术委员会第三次全体会议暨AC换届选举活动 在山西大学举办 华北区教育行业负责人宋肖敏出席本次会议 会议汇聚了众多学术界和企业界的精英 共同探讨人工智能和计算机科学的未来
  • S281 LoRa网关在智能电力监测系统中的应用

    随着能源消耗的增加和环境保护的要求 智能电力监测系统在电力行业得到了广泛的应用 作为一家领先的科技公司 钡铼技术有限公司推出的S281 LoRa网关为智能电力监测系统提供了强大的支持和解决方案 本文将重点介绍S281 LoRa网关在智能电力
  • 网工我劝你,这11种协议报文格式要烂熟于心!

    你们好 我的网工朋友 你最熟悉的报文是啥 TCP UDP 在网络世界里 就如同道路系统让车辆畅通无阻一样 网络协议是确保信息顺畅传输的关键 作为网络工程师 理解网络协议的种类与结构至关重要 今天就和你一起探索一下11种关键协议报文格式啊 包
  • 光纤知识总结

    1光纤概念 光导纤维 英语 Optical fiber 简称 光纤 是一种由玻璃或塑料制成的纤维 利用光在这些纤维中以全内 反射 原理传输的光传导工具 微细的光纤封装在塑料护套中 使得它能够弯曲而不至于断裂 通常光纤的一端的发射设备使用发光
  • 一个网工(网络工程师)七年的职业血泪史....

    前言 一个工作了七年的老网工 上家公司待了五年 现在这家公司也快三年了 分享一些我自己学习网络安全路上的一些经历 也算是帮大家少走些弯路 一 如何学习网络安全 1 不要试图以编程为基础去学习网络安全 不要以编程为基础再开始学习网络安全 一般
  • 物联网项目分享 Stm32单片机的音乐播放器设计 - 物联网 嵌入式

    文章目录 0 前言 1 简介 2 主要器件 3 实现效果 4 设计原理 5 部分核心代码 6 最后 0 前言 这两年开始毕业设计和毕业答辩的要求和难度不断提升 传统的毕设题目缺少创新和亮点 往往达不到毕业答辩的要求 这两年不断有学弟学妹告诉
  • 【一份老网工珍藏多年的网络配置笔记,很重要!】

    01 交换机 路由器的几种配置模式及模式转换 1 用户模式 登录到交换机 路由器 时会自动进入用户模式 提示符为 switchname gt 在该模式下只能够查看相关信息 对 IOS的运行不产生任何影响 2 特权模式 用户模式下 键入 en
  • 6类典型场景的无线AP选型和部署方案

    你们好 我的网工朋友 前段时间刚给你们来了篇解决无线频繁断网的技术文 解决无线频繁断网 这个办法值得收藏 不少朋友私聊 说想再聊聊无线AP的选型和部署方案 这不就安排上了 无线网络覆盖项目中 无线AP的合理选型和部署非常重要 在设计施工中
  • 浅谈能耗系统在马来西亚连锁餐饮业的应用

    1 背景信息 Background 针对连锁餐饮业能耗高且能源管理不合理的问题 利用计算机网络技术 通讯技术 计量控制技术等信息化技术 实现能源资源分类分项计量和能源资源运行监管功能 清晰描述各分店总的用能现状 实时监测各供电回路的电压 电
  • 这些专利知识你知道吗?

    专利作为一种重要的知识产权保护形式 专利不仅成为了企业核心竞争力的重要组成部分 也成为了国家创新发展的重要支撑 专利是指国家专利主管机关授予发明创造申请人的一种专有权 这种专有权具有独占性 排他性和法律强制性 能够为持有者带来经济利益和竞争
  • 太阳诱电树立超高端产品概念,与电子产业同步发展

    无论是传统的手机 家电 安防 汽车 医疗 交通 建筑的智能化转型 还是从物联网 工业4 0 智能硬件 互联网 一场基于大数据 互联网 应用软件等技术的硬件复兴热潮正在席卷全球 没有新东西出来 每家都一样 这一长期以来的争议一直困扰着CEAT
  • 太阳诱电 | 电容器为什么会发热?什么是纹波电流

    电容器中存在寄生于电极和电介质的电阻成分 当纹波电流等交流电流通过电容器时 电阻的成分会产生热量 为了抑制发热 选择ESR较低的电容器非常重要 陶瓷电容器在电容器中ESR较低 非常适合抑制发热 电容器中的纹波电流主要是指电源电路中由于IC的
  • 基于成本和服务质量考虑的不确定性下,电动汽车充电网络基础设施需求预测和迭代优化的分层框架研究(Python代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Python代码 数据
  • 5个步骤,教你瞬间明白线程和线程安全

    记得今年3月份刚来杭州面试的时候 有一家公司的技术总监问了我这样一个问题 你来说说有哪些线程安全的类 我心里一想 这我早都背好了 稀里哗啦说了一大堆 他又接着问 那你再来说说什么是线程安全 然后我就GG了 说真的 我们整天说线程安全 但是对
  • 【信道估计】【MIMO】【FBMC】未来移动通信的滤波器组多载波调制方案(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码及文章
  • 2024年金三银四网络安全考试试题

    2023年金三银四网络安全考试试题 1 关于数据使用说法错误的是 A 在知识分享 案例中如涉及客户网络数据 应取敏感化 不得直接使用 B 在公开场合 公共媒体等谈论 传播或发布客户网络中的数据 需获得客户书面授权或取敏感化 公开渠道获得的除
  • 【网安神器篇】——WPScan漏洞扫描工具

    目录 一 Wordpress简介 二 WPScan介绍 三 安装 四 获取token 1 注册账号 2 拿到token 五 使用教程 1 常用选项 2 组合命令 1 模糊扫描 2 指定扫描用户 3 插件漏洞扫描 4 主题漏洞扫描 5 Tim
  • STM32H5 Nucleo-144 board开箱

    文章目录 开发板资料下载 目标 点亮LD1 绿 LD2 黄 和LD3 红 三个LED灯 开箱过程 博主使用的是STM32CubeMX配置生成代码 具体操作如下 打开STM32CubeMX File gt New project 选择开发板型
  • 短信系统搭建主要因素|网页短信平台开发源码

    短信系统搭建主要因素 网页短信平台开发源码 随着移动互联网的快速发展 短信系统已成为企业和个人进行信息传递的重要工具 建立一个高效可靠的短信系统对于企业来说非常重要 下面我们将介绍一些影响短信系统搭建的主要因素 1 平台选择 在搭建短信系统

随机推荐

  • Mybatis-plus中操作JSON字段

    1 实体类上要加上自动映射 TableName value school autoResultMap true 2 json字段上加上json处理器 TableField value cover url typeHandler Jackso
  • 使用nmcli命令配置虚拟机网络

    简述 什么是nmcli Description nmcli is a command line tool for controlling NetworkManager and reporting network status It can
  • Mybatis 获取当前序列和下一个序列值 以及在一个方法中写多条SQL 语句

    目录 1 Mybatis 获取当前序列和下一个序列值 2 Mybatis 在一个方法中写多条SQL 语句 1 Mybatis 获取当前序列和下一个序列值 获取当前序列值 select XXX sequence currval from du
  • 电子信息工程毕设题目选题大全

    文章目录 1前言 2 如何选题 3 选题方向 3 1 嵌入式开发方向 3 2 物联网方向 3 3 移动通信方向 3 4 人工智能方向 3 5 算法研究方向 3 6 移动应用开发方向 3 7 网络通信方向 3 8 学长作品展示 4 最后 1前
  • Jetpack-Compose之一基础使用

    一 命令式UI和申明式UI 如果之前有了解或者使用果Flutter 应该会对命令式UI这种架构不陌生 目前申明式UI确实是很火包含Flutter SwiftUI JetpackCompose都使用了该种方式 2021年7月底 Google
  • mysql数据库容量规划_MySQL数据库服务器整体规划(方法论)

    我们在搭建MySQL数据库服务器的开始阶段就合理的规划 可以避免以后的很多问题的产生 大大节省我们的时间和精力 在一定幅度上降低成本 当然 这会涉及很多方面 比如机器的选型 业务评估和系统规划等 所有的设计都是跟具体的需求相关的 我们首先要
  • 什么是 DNS ANAME 解析?

    本人使用谷歌搜索了简中互联网 完全没有找到任何有关 ANAME 的文章 本文该不会是头一份吧 相信大家对于 DNS 的解析方式都不陌生 常见的有 A CNAME MX TXT 记录等等 其中 网站常用的是 A 记录和 CNAME 记录 A
  • [贪心入门]完美字符串

    约翰认为字符串的完美度等于它里面所有字母的完美度之和 每个字母的完美度可以由你来分配 不同字母的完美度不同 分别对应一个1 26之间的整数 约翰不在乎字母大小写 也就是说字母F和f 的完美度相同 给定一个字符串 输出它的最大可能的完美度 例
  • spyglass的waiver使用问题总结-工具(八)

    spyglass使用过程中waiver warning及error过程中总会出现生效不成功的问题 总结使用步骤供参考 实践出真知 解决问题就是好方法 1 在spyglass的prj中设置默认waiver文件 2 如何waiver 3 查看已
  • SpringBoot集成ZipKin实现链路跟踪

    SpringBoot集成ZipKin实现链路跟踪 1 我们要做什么 当我们的服务器成千上万 当我们的模块上万成千 当我们的调用链路复杂如蜘蛛网时 我们突然发现一个小小的性能问题却不能快速定位到点 千万不要以为自己是神 当年那个觉得ELK日志
  • stm32f10x中GPIOA理解(二)

    一 要理解固定库操作GPIOx的寄存器 首先固定库通过 void GPIO Init GPIO TypeDef GPIOx GPIO InitTypeDef GPIO InitStruct 函数来实现的 这函数 操作寄存器CRL和CRH 二
  • Qt 6: 1-9 信号和槽

    文章目录 概念 声明 手动关联 自动关联 断开关联 概念 作用 改变一个部件时 其他部件也能了解到 槽 一个函数 在信号发射后被调用 关系 信号和槽是一对多 多对一或者多对多关系 多个槽关联一个信号时 多个槽按关联顺序执行 拥有槽的累必须拥
  • java.sql.SQLException: ORA01555: 快照过旧: 回退段号 4 过小

    首先了解Oracle在什么情况下会产生ORA 01555错误 假设有一张6000万行数据的testdb表 预计testdb全表扫描1次需要2个小时 参考过程如下 1 在1点钟 用户A发出了select from testdb 此时不管将来t
  • 理解期货穿透式监管

    穿透式监管 关于就 关于进一步加强期货经营机构客户交易终端信息 采集有关事项的公告 公开征求意见的通知 期货公司客户交易终端信息采集及接入认证技术规范 简单理解就是 监控中心为了方便监管 需采集所有通过期货公司入场交易的客户的本地终端信息
  • 从键盘读入个数不确定的整数,并判断读入的正数和负数的个数,输入为0时结束程序。

    从键盘读入个数不确定的整数 并判断读入的正数和负数的个数 输入为0时结束程序 题目描述 从键盘读入个数不确定的整数 并判断读入的正数和负数的个数 输入为0时结束程序 解题思路 因为读入的个数不确定 所以需要一个无限循环 当输入为 时 bre
  • leetcode237 删除链表中的节点

    题目 有一个单链表的 head 我们想删除它其中的一个节点 node 给你一个需要删除的节点 node 你将 无法访问 第一个节点 head 示例 输入 head 4 5 1 9 node 5 输出 4 1 9 解释 指定链表中值为 5 的
  • Windows环境MySql8.0忘记root密码重置

    MySQL忘记root密码之后 可以通过skip grant tables来暂时免密登录MySQL 从而修改root密码 但是这种方式一方面有安全隐患 另一方面也并不怎么适用于Windows系统 而且Windows环境下使用skip gra
  • ui-router---$stateProvider

    stateProvider stateProvider state stateName stateConfig Creates a new application state For alternate usage see Object b
  • 安卓逆向入门指南:介绍与准备

    安卓逆向入门指南 介绍与准备 简介 安卓逆向工程是指通过分析 修改和破解安卓应用程序 获取其内部逻辑 探索其实现细节或者进行二次开发的技术过程 在这个系列博客中 我们将介绍安卓逆向的基础知识 常用工具和技术 并通过实例演示来帮助初学者入门
  • 【超简单的串口通信的工作原理】

    下图是电脑收到单片机经过串口发送的信息 那么电脑是如何与单片机进行串口通信的呢 首先 任何一种通信都要包括硬件物理接口和软件通信协议 串口通信物理接口如下图 单片机通过发送端将数据从左往右一位一位按顺序发送 且在发送前 我们需要事先约定好帧