打印

stm32F417的复用功能配置问题

[复制链接]
4610|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zjczm|  楼主 | 2012-10-17 00:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 zjczm 于 2012-10-18 10:23 编辑

请指点一下,我以下理解是否正确?

问题一:
每个脚,只要该有该复用功能,那就可以配置改复用功能,而不管该功能模块的其它脚分配情况?
例如, 把uart3这样分配是否也可以:PD9 -- usart3_RX, PD10 -- usart3_ck, PD11--usart3_cts, PD12--usart3_rts, 同时又分配PC10 --usart3_TX。
也即,每个引脚是完全独立可选择的。

问题二:
如果我同时把一个功能分配到2个脚,是否存在问题? 还是这2脚完全等效?
如:PC10 --usart3_TX, 且PD8 --usart3_TX.  即usart3_Tx被选择连接到2个引脚了。 理论上应该没问题吧? (当然实际上不会这么用)



谢谢!
沙发
Miltonliu2010| | 2012-10-17 11:06 | 只看该作者
回答一:
所谓复用就是可以用作多种用途。一个引脚可以使用其引脚上定义的几种,只是在使用之前需要正确配置。
每个引脚是可以独立选择的,你可以把PD9配置为usart3_RX,而把PD10配置为IO。但是为了能可靠性和可读性,最好是一组功能能的引脚全部复用,或全部IO。另外,引脚的重映射是一组功能的引脚一起映射的。

回答二:
你这里是引脚重映射的问题,既然是重映射,则把usart3_TX映射到PD8后,PC10就不能用作usart3_TX。

使用特权

评论回复
板凳
zjczm|  楼主 | 2012-10-17 11:16 | 只看该作者
对于STM32F417,参考手册上已经不提remap这个概念了。这点与STM32F103不一样。
从资料看,配置引脚是通过GPIOx_AFRL[31:0],GPIOx_AFRH[31:0]寄存器,实现了16选一(AF0..AF15).
参见: RM0090的P141/1316页上Figure14。 16选一像个模拟开关(不知道实际是什么?)

按这个图来理解,理论上同一个功能可以分配到2个引脚上了(stm32F103是不可能的)

使用特权

评论回复
地板
zjczm|  楼主 | 2012-10-17 11:19 | 只看该作者
谢谢楼上。

对于STM32F417,参考手册上已经不提remap这个概念了。这点与STM32F103不一样。
从资料看,配置引脚是通过GPIOx_AFRL[31:0],GPIOx_AFRH[31:0]寄存器,实现了16选一(AF0..AF15).
参见: RM0090的P141/1316页上Figure14。 16选一像个模拟开关(不知道实际是什么?)

按这个图来理解,理论上同一个功能可以分配到2个引脚上了(stm32F103是不可能的).

使用特权

评论回复
5
IJK| | 2012-10-17 14:43 | 只看该作者
STM32F4的IO引脚 复用是完全自由的,LZ的想法可以实现。

使用特权

评论回复
6
zjczm|  楼主 | 2012-10-18 10:15 | 只看该作者
本帖最后由 zjczm 于 2012-10-18 10:24 编辑

补充:2个功能模块复用1个脚的功能,也许可以用用。如SPI分配, 共用3个脚MOSI,MISO,SCK, 而分别用SP1_NSS,SPI2_NSS. 这时,这3个pin是SPI1和SPI2的模块连接出来的。不过,在MO信号上,还得特别处理一下。而且要时分。(不过很罗嗦,意义不大)

使用特权

评论回复
7
通宵敲代码| | 2014-8-5 21:21 | 只看该作者
STM43F4的GPIOx_AFR把我搞糊涂了,
复用功能跟AFx通道到底是怎么对应啊!
手册上来那个说法都没有!:Q

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

89

帖子

0

粉丝