当前位置: 首页 > news >正文

STM32F1_Hal库学习UART

一、UART的逻辑图

        下图为UART的逻辑图,注意TDR和RDR的访问地址虽然相同,但是物理上是两个寄存器,通过读写操作来区分操作哪个寄存器。

二、通过CubeMx来配置串口

1、阻塞模式串口发送

2、非阻塞式串口发送和接收

        这里的非阻塞发送接收根据是否使用DMA有两种函数,没什么太大区别。

3、重写printf

        本次使用的是GCC编译器,printf的实现是_write()函数,而非fputc()函数。在usart.c中加入此代码即可。同时记得包含头文件 <stdio.h>

三、总结

        本节主要介绍如何使用CubeMx配置UART,同时改下printf函数。详细代码见

Jiang-kun02/STM32F103c8t6_learning: 包括stm32F103C8T6的标准库和HAL库的示例代码

http://www.xdnf.cn/news/1123795.html

相关文章:

  • 破局与重构:文心大模型开源的产业变革密码
  • Java-ThreadLocal
  • java基础(day07)
  • 打开xmind文件出现黑色
  • 【LeetCode 热题 100】94. 二叉树的中序遍历——DFS
  • 13.计算 Python 字符串的字节大小
  • SpringMVC2
  • 鸿蒙开发NDK之---- 如何将ArkTs的类型转化成C++对应的类型(基础类型,包含部分代码解释)
  • 修改主机名颜色脚本
  • 虚拟货币交易:游走在合法与犯罪的生死线
  • 在Adobe Substance 3D Painter中,已经有基础图层,如何新建一个图层A,clone基础图层的纹理和内容到A图层
  • Java:继承和多态(必会知识点整理)
  • 【React Natve】NetworkError 和 TouchableOpacity 组件
  • Python 基础语法2:组合数据类型、异常
  • 【深度学习框架终极PK】TensorFlow/PyTorch/MindSpore深度解析!选对框架效率翻倍
  • JavaScript中Object.defineProperty的作用和用法以及和proxy的区别
  • SSM框架学习——day1
  • Datawhale AI夏令营-基于带货视频评论的用户洞察挑战赛
  • AI Linux 运维笔记
  • Imx6ull用网线与电脑连接
  • 使用 pytest 测试框架构建自动化测试套件之一
  • ethers.js-5–和solidity的关系
  • pytorch学习1(DataSet+Transforms+TensorBoard)
  • LeetCode 692题解 | 前K个高频单词
  • 工业软件加密锁复制:一场技术与安全的博弈
  • Lovable - AI 驱动的全栈应用开发平台
  • PyTorch张量(Tensor)创建的方式汇总详解和代码示例
  • [笔记] 动态 SQL 查询技术解析:构建灵活高效的企业级数据访问层
  • Linux:1_Linux下基本指令
  • TCP心跳机制详解