数据发送流程

news2024/11/19 16:22:04

在发送模式下,UART 的串行数据发送电路主要包括一个发送移位寄存器(TSR),TSR 功能是将数据
逐个移位送出。待发数据必须先写到发送缓冲区中。
TXIFx 是发送中断标志位,可配置为发送缓冲区空或TSR 空。
数据的发送支持7bit 、8bit 或9bit 数据格式, 如果使用9bit 的数据格式, 必须先设置RXSTA.PDSEL[1:0]=11,第9 位数据要被放入TXSTA.TX9D 位之中。在数据发送之前,必须先将此位写入,然后再把8 位的值写入TXREG 中。因为一旦TXREG 寄存器被写入数据后,这个8 位的数据可能马上就会被放入TSR 寄存器开始发送工作,所以为了数据发送正确性,必须先写入第9 位的值。
一般情况下,一开始TSR 寄存器是空的,数据的发送需先设定波特率SPBRG,使能发送模块(设定TXEN 为1),然后写入TXREG 寄存器开始发送。也可以在设定好波特率SPBRG 后,先写入TXREG寄存器,然后再设定TXEN 使能发送模块来开始数据发送。如果在数据发送过程中将发送模块使能位TXEN 清0,那么数据发送工作就会被中断,发送模块也会被复位。
下图是UART异步发送的两种工作模式:
在这里插入图片描述
设置异步发送操作的步骤如下:

  1. 根据CPU 的工作时钟,选择合适的波特率,初始化SPBRG
  2. 若需要中断,置相应的UARTIE.TXIE=1
  3. 决定数据发送的格式。设定RXSTA.PDSEL[1:0]位,决定发送8 位数据还是9 位数据;设定TXSTA.STOPSEL位,决定发送 1 位还是 2 位停止位
  4. 如果希望发送的串行数据红外调制,向 IRCON 寄存器写入合适的值来获得相应的调制频率和占空比,并置TXSTA.IREN=1
  5. 使能发送模块。置 TXSTA.TXEN=1
  6. 如果选择发送 9 位数据,第 9 位应先写入 TXSTA.TX9D 位
  7. 将 8 位要发送的数据写入 TXREG 寄存器 启动发送

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JavaScript原型链污染学习记录

1.JS原型和继承机制 0> 原型及其搜索机制 NodeJS原型机制,比较官方的定义: 我们创建的每个函数都有一个 prototype(原型)属性,这个属性是一个指针,指向一个对象, 而这个对象的用途是包含可…

为什么用Selenium做自动化测试,你真的知道吗?

目录 手工测试的问题 为什么用自动化 选择合适的测试方式 什么时候引入自动化测试 以Jmeter为代表的测试工具 编程能力既重要又不重要 为什么是Selenium 没有最好的技术,只有合适的技术 web自动化测试效率不高 手工测试的问题 手工操作点点点借助的是人脑的…

知识变现海哥|这3种课程定价最容易爆单

这3种课程定价最容易爆单 一门课怎么才能卖到100万,定价很关键。我卖了160万的课,总结了3种课程定价,组合起来最容易爆单!引流课定价0、1、9.9、19.9一般讲3天结束,用低价吸引大量潜在学员 信任课定价99、699、999等…

C++—非递归【循环】遍历二叉树(前序,中序,后序)思路讲解+代码实现

非递归遍历二叉树 前序中序后序 接下来我们在研究如何使用循环实现遍历二叉树时,以下面的二叉树为例: 在下文的讲解中,不对如何构建这颗二叉树做讲解,直接给出代码,如果有不懂的地方欢迎私信我。 文章中的完整源代码链…

一篇文章搞定《Android内存泄漏》

------《Android内存泄漏》 什么是内存泄漏常见的内存泄漏以及规避方式单例模式引用Activity非静态内部类注册的反注册定时器TimerWebView的内存泄漏资源未关闭属性动画 怎么定位内存泄漏LeakCanary接入:使用:检测: Android Proflier开始检测…

Linux驱动编程(分层分离编程思想)

1、面向对象 ⚫ 字符设备驱动程序抽象出一个 file_operations 结构体; ⚫ 我们写的程序针对硬件部分抽象出 led_operations 结构体。 2、分层 上层实现硬件无关的操作,比如注册字符设备驱动:leddrv.c 下层实现硬件相关的操作,比如…

【R语言】鉴于计算10亿以内训练模型记录for循环的加速

文章目录 1 前言2 几个循环2.1 100以内的和2.2 100以内奇数和/偶数和 3 多重循环3.1 向量化3.2 合并循环3.3 apply函数3.4 矩阵运算3.5 foreach分解任务 4 讨论 1 前言 笔者主力机是MBAM1芯片(8256),某个下午巩固循环突然思考到个问题&#…

App违反Google数据安全政策,解决方案

前言 google隐私政策阶段性会进行更新,时长关注隐私政策变化,避免app被强制下架,影响后续运营工作。 邮件内容 摘录邮件详情 我们在以下区域发现了问题: SPLIT_BUNDLE 2:政策声明,数据安全部分:“https:…

中国社科院与美国杜兰大学金融管理硕士项目,引领你走在金融行业前沿

作为金融领域从业人员时刻都在关注行业最新资讯,只有掌握一手的前沿讯息,才能在职场上无往不胜。针对在职的你,如何利用业余时间让自己更增值呢,中国社科院与美国杜兰大学金融管理硕士项目引领你走在金融行业前沿。 金融管理硕士…

ecology9-嵌入第三方系统,特定情况下在嵌套页提示“登录超时,请重新登录”

ecology9-嵌入第三方系统,特定情况下在嵌套页提示“登录超时,请重新登录” 问题描述尝试1尝试2尝试3√尝试4参考 问题描述 A系统对接了ecology9的单点登录。A系统在某个边栏菜单嵌入ecology9的流程页面。当清空浏览器缓存时,A系统在单点登录…

从C语言到C++⑥(第二章_类和对象_中篇_续)大练习(日期类)+笔试选择题

目录 1. 日期类详细实现 1.1 构造函数和打印函数 1.2 六个比较运算符重载 1.3 日期天数 和 日期天数 1.4 日期 - 天数 和 日期 - 天数 1.5 日期 和 日期 1.6 日期-- 和 --日期 1.7 日期 - 日期 operator- 1.8 打印*this是星期几 2. 日期类完整代码 Date.h: Date.…

计算机智能系统有哪些SCI期刊? - 易智编译EaseEditing

计算机智能系统是计算机科学中的一个重要分支,其主要研究计算机智能和人工智能等方面的问题。以下是一些SCI期刊的推荐: IEEE Transactions on Neural Networks and Learning Systems: 该期刊是IEEE计算智能学会的官方期刊,涵盖了…

JavaWeb——数据链路层详解

目录 一、以太网 1、定义 2、以太网格式帧 二、MTU 1、定义 2、MTU对IP协议的影响 3、MTU对UDP协议的影响 4、MTU对TCP协议的影响 三、ARP协议 1、定义 2、ARP协议的作用 3、ARP协议的工作流程 一、以太网 1、定义 "以太网" 不是一种具体的网络&#xff…

谷歌浏览器 | Chrome DevTools系统学习篇-概述

Chrome DevTools是一套直接内置到谷歌Chrome浏览器的web开发工具。DevTools可以帮助您即时编辑页面并快速诊断问题,最终帮助您更快地构建更好的网站。我们今天的概述主要讲述谷歌浏览器的日常使用和几大常见控制面板的介绍。 目录 1.打开谷歌浏览器 2.谷歌浏览器的…

MySQL 页、页结构、页目录、索引

MySQL中,数据存到了什么地方? 存储到了硬盘的文件上,被称为:数据文件 或 表空间 每个数据库都是由 一组数据文件 组成,这些文件包含了:所有表、索引、其他相关对象的数据 MySQL 以什么样的方式访问&#…

安卓联发科MT6737手机开发核心板 开发模块

MT6737核心板是一款基于联发科MT6737T平台高性能、可运行安卓操作系统的4G智能模块。它支持多种制式,包括LTE-FDD/LTE-TDD/WCDMA/TD-SCDMA/EVDO/CDMA/GSM等。此外,它还支持WiFi 802.11a/b/g/n和BT4.0LE近距离无线通信,并支持GPS/GLONASS/北斗…

机器学习笔记之计算学习理论(二)PAC学习

机器学习笔记之计算学习理论——PAC学习 引言回顾:霍夫丁不等式霍夫丁不等式的问题及其优化 PAC \text{PAC} PAC引出新问题——霍夫丁不等式无法通过直接比较获取最优假设函数问题的解决方法新方法对于霍夫丁不等式的约束证明 总结 引言 上一节从霍夫丁不等式为切入…

STC32G12K128单片机的 moubus-rtu 从机测试工程

简介 STC32G12K128 是STC 推出的一款32位的 C251 的单片机。最近拿到一块官方申请的 屠龙刀-STC32G开发板,就用它的提供的库函数,查考安富莱提供的 modbus 例程移植了一个 modbus-rtu 从站的工程。 modbus-rtu slave 移植注意点 modbus-rtu 功能配置 …

每日学术速递5.3

CV - 计算机视觉 | ML - 机器学习 | RL - 强化学习 | NLP 自然语言处理 Subjects: cs.CV 1.Learning Locally Editable Virtual Humans 标题:学习本地可编辑虚拟人 作者:Hsuan-I Ho, Lixin Xue, Jie Song, Otmar Hilliges 文章链接:htt…

【分享】7-Zip解压缩软件的超详细使用攻略

常用的解压缩软件,除了WinRAR之外,7-Zip也是不错的选择。 7-Zip不仅是一款完全免费的开源解压软件,它的解压缩功能也很强大,可以支持视频、文档、文件夹、图片等文件进行压缩操作。 今天小编就来分享一下,7-Zip解压缩…