打印

STM32 - AFIO的使用

[复制链接]
893|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sunmeat|  楼主 | 2015-3-16 15:51 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
1. AFIO的功能

    为了优化64脚或100脚封装的外设数目,可以把一些复用功能重新映射到其他引脚上。设置复用重映射和调试I/O配置寄存器(AFIO_MAPR)实现引脚的重新映射。这时,复用功能不再映射到它们的原始分配上。

    简言之,AFIO实现了复用功能的重新映射。
沙发
sunmeat|  楼主 | 2015-3-16 15:55 | 只看该作者
2. 在什么情况下,需要开启AFIO时钟?
    参考手册中写道:对寄存器AFIO_EVCR, AFIO_MAPR和AFIO_EXTICRX进行读写操作前,应当首先打开AFIO的时钟。

使用特权

评论回复
板凳
sunmeat|  楼主 | 2015-3-16 15:55 | 只看该作者
    在数据手册的引脚定义中(pin definitions),复用功能"Alternate functions"栏下分为两栏:默认"Default"和重映射"Remap"。其中,在默认栏中的功能只需要开启相应外设功能的时钟,无需开启AFIO时钟(注意:一个引脚在一个时间段内只能使用一个外设功能)。而在重映射栏中的功能,则需要开启相应外设功能的时钟,并且开启AFIO时钟。

使用特权

评论回复
地板
sunmeat|  楼主 | 2015-3-16 15:56 | 只看该作者
    简言之,当GPIO口使用了数据表中重映射栏中的外设功能,则需要开启AFIO时钟;只使用默认复用功能时,只开启相应外设时钟无需开启AFIO时钟。

使用特权

评论回复
5
sunmeat|  楼主 | 2015-3-16 16:05 | 只看该作者
    AFIO (alternate-function I/O),指 GPIO 端口的复用功能, GPIO 除了用作普通的输入输出(主功能),还可以作为片上外设的复用输入输出,如串口,ADC,这些就是复用功能。大多数 GPIO 都有一个默认复用功能,有的 GPIO 还有重映射功能, 重映射功能是指把原来属于 A 引脚的默认复用功能,转移到了B 引脚进行使用,前提是 B 引脚具有这个重映射功能。
    当把 GPIO 用作 EXTI外部中断或使用重映射功能的时候,必须开启 AFIO时钟,而在使用默认复用功能的时候,就不必开启 AFIO 时钟了。

使用特权

评论回复
6
smilingangel| | 2015-3-17 21:53 | 只看该作者
设置复用重映射和调试I/O配置寄存器(AFIO_MAPR)实现引脚的重新映射。这时,复用功能不再映射到它们的原始分配上。

使用特权

评论回复
7
mumu3013| | 2015-3-18 15:00 | 只看该作者
讲的不错,学习了!

使用特权

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

本版积分规则

208

主题

2132

帖子

13

粉丝