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。

具体设置参考如下图片:


从上面图片可以发现,如果选择了"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内部被一直拉高。.

相关推荐
9稳2 小时前
基于单片机的小功率数控调频发射器设计
数据库·单片机·嵌入式硬件·51单片机
LaoZhangGong1232 小时前
解决“KEIL5软件模拟仿真无法打印浮点数”之问题
经验分享·单片机·嵌入式硬件·float·仿真
犹若故人归2 小时前
计算机网络、嵌入式等常见问题简答
java·网络·嵌入式硬件·计算机网络·intellij-idea
LS_learner3 小时前
Arduino IDE刷微控制器并下载对应固件的原由
嵌入式硬件
xiebingsuccess4 小时前
去耦电容理解:“耦”了什么?非要“去”了?
单片机·嵌入式硬件
就叫飞六吧4 小时前
Keil C51 与 Keil MDK(ARM-stm32?):嵌入式开发的利器
arm开发·stm32·嵌入式硬件
又熟了4 小时前
stm32新建工程
stm32·单片机·嵌入式硬件
OpenVINO生态社区5 小时前
【FPGA与单片机的区别】
单片机·嵌入式硬件·fpga开发
iFinder@5 小时前
【51单片机】01入门篇
单片机·嵌入式硬件·51单片机
通信小菜鸡@posedge clk6 小时前
FPGA实现UART对应的电路和单片机内部配合寄存器实现的电路到底有何区别?
单片机·嵌入式硬件·fpga开发