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

STM32G070CB的USART1_RX引脚

简介

在使用STM32G070CBT6 的 USART1时,发现把 PA10作为 USART1_RX引脚时,接收不到数据。

问题排查

更换pin脚

使用PB6/PB7作为USART1_TX/RX, USART1 工作正常。
使用PA9/PB7作为USART1_TX/RX, USART1 同样工作正常。

示波器检测

示波器接PA10:

  • PA10 作为普通的IO口,input和output可以正常工作
  • PA10 作为USART1_RX,示波器上显示PA10一直被拉高,导致通信数据的电平变化很小。

查阅资料

参考链接
查数据手册发现
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
PA11/PA12可以被复用为PA9/PA10。
具体设置参考如下图片:

PA11/PA12复用之前
PA11/PA12复用为PA9/PA10之后
从上面图片可以发现,如果选择了“Pin PA9/pa10 instead od PA11/PA12"之后,在Pinout view框图里,原先PA9/PA10的位置会变成 NC, 原本PA11/PA12的位置变成了PA9/PA10。这时再把新的PA9/PA10配置为USART1_TX/RX, 同时物理连接也把PA11/PA12当作USART1_TX/RX,则USART1可以正常工作

综上

在STM32G070系列MCU中, 可以把PA11/PA12复用为USART1 的 TX/RX, 但是如果同时存在PA9/10/11/12, 则USART1_TX可以使用引脚PA9(或者把PA11复用为PA9), 但RX只能用 PA12复用为PA10, 如果直接把PA10配置为RX,则USART1无法正常接收数据,因为PA10内部被一直拉高。.


http://www.kler.cn/a/460973.html

相关文章:

  • java中统一异常处理,如何实现全局异常处理,@RestControllerAdvice 注解实现统一异常处理
  • 等待事件 ‘latch: row cache objects‘ 说明及解决方法
  • Flink源码解析之:如何根据JobGraph生成ExecutionGraph
  • ruoyi 分页 查询超出后还有数据; Mybatis-Plus 分页 超出后还有数据
  • SQL-Server链接服务器访问Oracle数据
  • 大模型WebUI:Gradio全解系列9——Additional Features:补充特性(下)
  • 排序算法原理及其实现
  • 如何在 Ubuntu 22.04 上安装 Webmin 教程
  • HTML——26.像素单位
  • MF248:复制工作表形状到Word并调整多形状位置
  • 正则表达式:实战案例与最佳实践
  • kiran-qt5-integration
  • .NET Framework 4.7.2 创建 Swagger的API 的设置
  • Python学习路线
  • 截图技术方案
  • OpenCV 中的高斯金字塔和拉普拉斯金字塔:原理、实现与应用
  • GraphRAG实践:docker部署neo4j
  • gesp(C++一级)(7)洛谷:B3863:[GESP202309 一级] 小明的幸运数
  • VisualStudio 2019 升级遇到的问题及解决
  • thunderbird配置为适合回复开源社区邮件列表
  • android studio gradle 如何解决下载依赖一直卡住的问题
  • 《计算机组成及汇编语言原理》阅读笔记:p160-p176
  • rk3399增加新分区和计算规则
  • 理解生成协同促进?华为诺亚提出ILLUME,15M数据实现多模态理解生成一体化
  • 露营小程序搭建有哪些步骤?小程序里面可以找个露营搭子
  • 分解质因数(超大规模版)