• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

STM32 串口何时才需要打开复用功能?复用和重映射

沃尔夫斯堡的羊 2018-05-23 浏览量:2982
应用STM32F4配置串口,系统调试应用的是USART1,现在自己想通过USART3和外界通信,在配置时应用的是PB10和PB11,看到有的程序里打开了复用功能,
  • RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_AFIOENABLE);  
  • RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART3ENABLE);                                                                                                            可是以前自己配置USART1(PA9 PA10)则没有配置。。。STM32F4的PB10 PB11自身本来就支持串口的啊,为啥还要打开复用功能?
  • 另外,重映射又怎么理解?是不是这样的,STM32的GPIO口可以支持某些特定的片内外设(这些外设在STM32芯片手册原理图上已标出),在应用这些片内外设时需要应用到这些GPIO口的一种功能,这时就叫复用;
  • 而重映射是不是就是使得那些本来不支持该片内外设的GPIO口设定使其支持该外设功能?​
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案

  • 1、2、
    只要引脚不是使用GPIO功能,就是要打开利用时钟的
    由于串口1是PA的引脚,看看在GPIO1哪里是不是打开了复用时钟
    3、
    同一个外设,默认是在两个引脚上,但是其他的引脚也可以使用这个外设,就可以把这个外设重映射到其他的引脚上,而取消原来的引脚上的复用功能。
    4、并不是不支持,只是不是默认上的支持
    • 发布于 2018-05-23
    • 举报
    • 评论 1
    • 0
    • 0
沃尔夫斯堡的羊 回复了 汉云:谢谢,好像理解了。。 回复

其他答案 数量:3
  • 简单来讲复用功能就是管脚的第二功能,有些管脚有两个功能,默认是端口用,使用第二功能就需要开启复用才能使用第二功能。

    重映射就是相当于把一个管脚的功能映射到另外一个管脚上,让另外的管脚拥有此管脚的功能。但是需要查手册才能知道这些管脚的重映射的对应关系。并不是随便想映射就映射的。

    • 发布于2018-05-23
    • 举报
    • 评论 1
    • 0
    • 0
沃尔夫斯堡的羊 回复了 花生大事 :这么看来,复用和重映射难道不是一回事么?莫非是这样,复用是针对管脚来说的,而重映射的主体是某个外设? 回复

  • 使用串口的时候相当于用了IO的第二功能,因此需要配置复用
    • 发布于2018-05-24
    • 举报
    • 评论 1
    • 0
    • 0
沃尔夫斯堡的羊 回复了 chen0000009 :那有的例程里调试程序配置串口1 USART1的为啥没有启用复用功能啊?难道是F1和F4的区别。。。 回复

  • 串口本身是GPIO之外的外设,只要用了串口就已经是复用了,另外映射跟复用不是同一个东西,映射的意思是有多组引脚有相同的功能。

    • 发布于2018-05-28
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

STM32 串口何时才需要打开复用功能?复用和重映射