OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 7076|回复: 9

PB6,PB7端口重映射

[复制链接]

106

主题

418

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2016-7-26
在线时间
123 小时
发表于 2016-8-10 15:49:36 | 显示全部楼层 |阅读模式
5金钱
}Y%)SE~C8$E(X0G$_QS[I_J.png
1:使能GPIOB时钟:
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);
2:使能串口1时钟:
   RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);
3:使能AFIO时钟:
   RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);
4:开启重映射:
   GPIO_PinRemapConfig(GPIO_Remap_USATRT1,ENABLE);
我的问题是:这个USART_REMAP是4个函数参数中的哪个?

最佳答案

查看完整内容[请看2#楼]

USART1_REMAP: USART1的重映像 (USART1 remapping) 位2 该位可由软件置’1’或置’0’,控制USART1的TX和RX复用功能在GPIO端口的映像。 0: 没有重映像(TX/PA9,RX/PA10); 1: 重映像(TX/PB6,RX/PB7)。 以上是寄存器的说明 GPIO_PinRemapConfig(GPIO_Remap_USATRT1,ENABLE);是库函数的其中GPIO_Remap_USATRT1就代表把USART1_REMAP置1
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

0

主题

40

帖子

0

精华

高级会员

Rank: 4

积分
756
金钱
756
注册时间
2016-2-25
在线时间
137 小时
发表于 2016-8-10 15:49:37 | 显示全部楼层
慕名兰 发表于 2016-8-10 16:16
这个我还是能明白的,但是问题是当USART1_REMAP=1,PB6/7才会被重映像,这4个函数并没有说明USART1_REMAP ...

USART1_REMAP:
USART1的重映像 (USART1 remapping) 位2 该位可由软件置’1’或置’0’,控制USART1的TX和RX复用功能在GPIO端口的映像。 0: 没有重映像(TX/PA9,RX/PA10); 1: 重映像(TX/PB6,RX/PB7)。
以上是寄存器的说明
GPIO_PinRemapConfig(GPIO_Remap_USATRT1,ENABLE);是库函数的其中GPIO_Remap_USATRT1就代表把USART1_REMAP置1
回复

使用道具 举报

30

主题

1170

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1993
金钱
1993
注册时间
2016-2-16
在线时间
527 小时
发表于 2016-8-10 15:56:18 | 显示全部楼层
要学会看参考手册
回复

使用道具 举报

106

主题

418

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2016-7-26
在线时间
123 小时
 楼主| 发表于 2016-8-10 16:03:38 | 显示全部楼层

我理解有点问题,所以来问问
回复

使用道具 举报

0

主题

40

帖子

0

精华

高级会员

Rank: 4

积分
756
金钱
756
注册时间
2016-2-25
在线时间
137 小时
发表于 2016-8-10 16:07:25 | 显示全部楼层
调用GPIO_PinRemapConfig(GPIO_Remap_USATRT1,ENABLE);代表使用映射
不调用则不使用映射,使用默认引脚
回复

使用道具 举报

106

主题

418

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2016-7-26
在线时间
123 小时
 楼主| 发表于 2016-8-10 16:16:21 | 显示全部楼层
黎明前沉寂 发表于 2016-8-10 16:07
调用GPIO_PinRemapConfig(GPIO_Remap_USATRT1,ENABLE);代表使用映射
不调用则不使用映射,使用默认引脚

这个我还是能明白的,但是问题是当USART1_REMAP=1,PB6/7才会被重映像,这4个函数并没有说明USART1_REMAP=1?,所以怎么知道是谁被重映像?单数书上有说是PB6/7被重映像了,所以我不太懂
回复

使用道具 举报

106

主题

418

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2016-7-26
在线时间
123 小时
 楼主| 发表于 2016-8-10 16:35:38 | 显示全部楼层
慕名兰 发表于 2016-8-10 16:16
这个我还是能明白的,但是问题是当USART1_REMAP=1,PB6/7才会被重映像,这4个函数并没有说明USART1_REMAP ...

看来3楼说的很对,谢谢了
回复

使用道具 举报

106

主题

418

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2016-7-26
在线时间
123 小时
 楼主| 发表于 2016-8-10 16:35:58 | 显示全部楼层

你说的很对,谢谢。
回复

使用道具 举报

106

主题

418

帖子

0

精华

高级会员

Rank: 4

积分
764
金钱
764
注册时间
2016-7-26
在线时间
123 小时
 楼主| 发表于 2016-8-10 16:36:09 | 显示全部楼层

你说的很对,谢谢。
回复

使用道具 举报

30

主题

1170

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1993
金钱
1993
注册时间
2016-2-16
在线时间
527 小时
发表于 2016-8-10 17:06:03 | 显示全部楼层
慕名兰 发表于 2016-8-10 16:36
你说的很对,谢谢。

遇到你不懂的库函数,直接进入函数原型,看他操作了什么寄存器的那一位,然后直接去参考手册看。
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-8 07:25

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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