[stm32] 4-1 USART(1)

文章目录

前言

  • 本笔记内容,为本人依据B站UP主"铁头山羊"视频内容(本人为其粉丝),归纳整理总结而来,如有侵权,联系立即删除,同时有想详细了解的也可进行观看bilibili铁头山羊

  • 硬件:STM32F103C8T6

  • 软件:Keil

4-2 USART与串口通信(1)

USART简介

什么是USART?

  • USART就是STM32内部的串口

USART名字的含义?

  • U:Universal 通用

  • S :Asynchronous 异步(不共享时钟)常用

    • 2根线:TX、RX
  • A :Synchronous 同步(共享时钟)

    • 3根线:TX、RX、CK
  • R:Receiver 接收器

  • T:Transmitter 发送器

如何使用USART?

USART的工作原理

什么是串并转换?

  • TDR 发送数据寄存器

  • RDR 接收数据寄存器

为什么要进行串并转换?

  • 在CPU内部数据的接收和发送,是采用并行接收和并行发送的形式。

  • 在CPU外部数据的接收和发送,是通过IO的串行接收和串行发送的形式进行的。

移位寄存器

  • 每动作一次所有比特位向右移动。

串并行转换电路

  • 并转串
  • 串转并

USART寄存器组和完整框图

  • TDR 发送数据寄存器

  • RDR 接收数据寄存器

  • CR 配置寄存器

  • SR 状态寄存器

  • BRR 波特率寄存器

  • IER 中断使能寄存器

    发送数据寄存器

  • RDR 接收数据寄存器

  • CR 配置寄存器

  • SR 状态寄存器

  • BRR 波特率寄存器

  • IER 中断使能寄存器

相关推荐
阿捏利10 分钟前
C Primer Plus 第6版 编程练习——第11章(下)
c语言·c primer plus
java叶新东老师17 分钟前
goland编写go语言导入自定义包出现: package xxx is not in GOROOT (/xxx/xxx) 的解决方案
开发语言·后端·golang
檀越剑指大厂44 分钟前
【Python系列】Flask 应用中的主动垃圾回收
开发语言·python·flask
檀越剑指大厂1 小时前
【Python系列】使用 memory_profiler 诊断 Flask 应用内存问题
开发语言·python·flask
笠码1 小时前
JVM Java虚拟机
java·开发语言·jvm·垃圾回收
橙小花1 小时前
C语言:指针、变量指针与指针变量、数组指针与指针数组
c语言·开发语言
YouQian7721 小时前
问题 C: 字符串匹配
c语言·数据结构·算法
Cyanto1 小时前
MyBatis-Plus高效开发实战
java·开发语言·数据库
SoveTingღ2 小时前
【开发环境配置】VScode里面配置cmake遇到的问题
c语言·vscode·cmake·嵌入式软件·开发环境配置
艾莉丝努力练剑2 小时前
【LeetCode&数据结构】二叉树的应用(二)——二叉树的前序遍历问题、二叉树的中序遍历问题、二叉树的后序遍历问题详解
c语言·开发语言·数据结构·学习·算法·leetcode·链表