野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9421|回复: 4

关于 GPIO 复用成 USART 的两个问题

[复制链接]
发表于 2022-1-6 10:43:45 | 显示全部楼层 |阅读模式
您好,最近在学习 USART 章节,有两个问题想问下。


问题1:在不考虑硬件的情况下,任何 GPIO 均可以复用成 USART1 吗?
           在官方的例子中,使用到了 GPIOA.Pin9 & GPIOA.Pin10 复用成 USART1 功能.
           在不考虑硬件连线的情况下,即在软件层面上,所有的 GPIO 管脚均支持 USART1 功能?


问题2:连接 GPIO 到 USART 功能的代码如下:
123     /* Connect GPIOs to USART1 */                                                                                                                                                      
124     GPIO_PinAFConfig( DEBUG_USART_RX_GPIO_PORT, DEBUG_USART_RX_SOURCE, GPIO_AF_USART1 ) ;                                                                                             
125     GPIO_PinAFConfig( DEBUG_USART_TX_GPIO_PORT, DEBUG_USART_TX_SOURCE, GPIO_AF_USART1 ) ;
            有一个问题我十分好奇:
               UART 功能分为 Rx, Tx 两个引脚,为什么在 "连接 GPIO 到 USART 功能" 代码中没有发现关于 Rx, Tx 的设置.
                这两句代码只是告诉 GPIOA.Pin9 复用成 USART 功能,GPIOA.Pin10 复用成 USART 功能.
                但是并没有区分那个是 Tx Pin,哪个是 Rx Pin.




回复

使用道具 举报

发表于 2022-1-7 09:06:41 | 显示全部楼层
本帖最后由 神普 于 2022-1-7 10:16 编辑

占个位:
同GPIO复用问题:
使用HAL库时未找到GPIO_PinAFConfig 复用函数 HAL如何复用GPIO其它功能 ??
还是STM32CudeMx 软件配置后自动生成不用管
手册寄找到了配置位  HAL库函数库不清楚如何实现复用功能
已解决


SSQOCB1Y$]%U]%G7Z0}{6RB.png
回复 支持 反对

使用道具 举报

发表于 2022-1-7 10:03:00 | 显示全部楼层
我最近也在琢磨这个,我有3个通讯,需要3个UART通信
开发板232和485可以用,
另外买了个ttl转232模块,准备接GPIO,是不是可以用其他串口,开发板有5个串口(3个usart,2个uart)
回复 支持 反对

使用道具 举报

发表于 2022-1-7 10:34:43 | 显示全部楼层
本帖最后由 神普 于 2022-1-7 10:42 编辑

问题1、足够了解协议的条件下,理论上可以软件控制GPIO高低电平 模拟通信协议.实例--》个人工作中软件IO模拟写过 TI 电池通信协议HDQ 主从机  协议  网上也有软件模拟串口的例子一搜就有 串口通信协议.png
问题2、PA9-TX、PA10-RX、 功能是芯片硬件连接的外设引脚决定的.软件只能配置来使用
微信截图_20220107102809.png
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-1-7 14:07:46 | 显示全部楼层
多谢楼上回复,学到了。
总结下:
    PA9, PA10 作为 USART 的功能 PIN,其实是硬件已经定义好的。所以不需要指定 Rx pin 和 Tx Pin。
    另外,并不是任意的 GPIO 均能这样复用. (用软件实现不算)
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-12-25 21:29 , Processed in 0.035327 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表