1.需要用到外设的重映射功能时
2.用到外部中断(EXTI)中与AFIO有关的寄存器时,它们是用来选择EXTIx外部中断的输入脚之用。

仿生鸟个人补充:很多博客都提到了管脚复用时也要使能AFIO时钟,我去查了一下资料发现并不是这样。

举例:重映射USART2
USART2的TX/RX在PA.2/3 PA.2已经被Timer2的channel3使用需要把USART2的TX/RX重映射到PD.5/6库函数的调用

(1)使能被重新映射到的I/O端口时钟

    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE);

(2)使能被重新映射的外设时钟

    RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2, ENABLE);

(3)使能AFIO功能的时钟(勿忘!)

    RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);

(4)进行重映射

    GPIO_PinRemapConfig(GPIO_Remap_USART2, ENABLE);

什么时候需要用到RCC_APB2Periph_AFIO相关推荐

  1. 【转载】 stm32之PWM

    发现这位博主的博客被大量的转发,我也转载一篇,谁叫人家写的好呢. 原文地址:http://blog.sina.com.cn/s/blog_49cb42490100s6uh.html 脉冲宽度调制(PW ...

  2. 3.实现串口功能及消息邮箱

    提醒: 如果您是完全按照<1.一步一步移植ucos到stm32f103开发版(修订版)>来新建的工程的话,那很遗憾,你要重新建立一个工程,因为,在那篇文章的步骤1中,我们选中了GPIO,但 ...

  3. stm32采集脉冲信号_STM32 TIM 编码器模式采集编码器信号

    layout: post tags: [STM32] comments: true 什么是正交解码? 对于常用增量式编码器,光学编码器,采用带槽圆盘,一侧是发射光线的发射端,而光电晶体管在相对的一侧. ...

  4. nrf52840 gpiote如何配置中断输入_STM32第四章外部中断管理

    点击上方"果果小师弟",选择"置顶/星标公众号"干货福利,第一时间送达!STM32F4 的每个 IO 都可以作为外部中断的中断输入口,这点也是 STM32F4 ...

  5. STM32的晶振脚(OSCIN和OSCOUT)当成普通IO来使用

    一不小心把模拟IIC放到OSCIN和OSCOUT脚上了,现在来说一下怎么把这两个脚当成普通IO来使用: 首先这两个引脚是时钟引脚,于是我们先要把外部时钟关闭,改用内部的时钟. 也就是把HSE关闭,使用 ...

  6. Keil仿真出现Can not read register xx while CPU is running

    用jlink可以下载程序,可是在线仿真的时候总是出现: ***JLink Error: Could not start CPU core. (ErrorCode: -1) **JLink Warnin ...

  7. stm32 TIM2 重映射

    stm32的TIM2的端口使用组合有下面四种: 1.当不重映射时,默认TIM2四个的IO口是PA0.PA1.PA2.PA3 2.要使用PA15.PB3.PA2.PA3的端口组合,要调用下面的语句进行部 ...

  8. STM32 中JTAG 引脚作为普通IO口设置方法

    stm32的程序下载引脚涉及PB3.PB4.PA13.PA14.PA15,其中PA13,PA14分别作为SWD调试的SWIO和SWCLK.PB3,PB4,PA13,PA14,PA15共同用于JTAG调 ...

  9. STM32输入捕获模式设置并用DMA接收数据

    参考: STM32的PWM输入模式设置并用DMA接收数据 Input capture mode The input stage samples the corresponding TIx input ...

  10. Stm32 Bootloader整理

    Stm32 Bootloader整理 一.        基本概念 1.IAP IAP是In Application Programming的首字母缩写,IAP是用户自己的程序在运行过程中对User ...

最新文章

  1. 浏览器和服务器 对http请求(post get) url长度限制
  2. spring配置数据源(加载properties文件)
  3. 前端 JS/TS 调用 ASP.NET Core gRPC-Web
  4. 【原创】大叔问题定位分享(12)Spark保存文本类型文件(text、csv、json等)到hdfs时为什么是压缩格式的...
  5. cmake vs qmake
  6. 20200421:周赛练习题(leetcode148周周赛上)
  7. java 随机生成大写字母_java 生成随机大写字母,整数,小写字母
  8. jQuery源码解读一
  9. 传智播客 java javaEE 20G全套视频教程(下载种子)
  10. 粒子群算法及C语言实现
  11. 7-9 打印倒直角三角形图形
  12. 免费建立一个自己的网站
  13. C语言二元一次方程求解(求出共轭实根)
  14. 计算机不通电维修,显示器不通电维修教程
  15. word中每页后面的空白怎么删掉
  16. [bzoj3238]差异
  17. 摩斯电码php源码,PHP实现基于文本的摩斯电码生成器
  18. Failed to push the item(s)解决方法
  19. 如何在博客插入UML图
  20. STM32F103C8T6基础开发教程(HAL库)—Keil添加注释的快捷键

热门文章

  1. python数据分析-学生成绩分析
  2. 学生成绩分析系统后端函数解释(Python)
  3. 小白如何打造一个基础的留言板网站(二)
  4. Arcgis 区位图绘制
  5. 离散求边缘密度_求一把能退烧的机械键盘?——机械键盘购买“指北”
  6. 74cms v5.0.1存在远程连接命令/代码执行漏洞
  7. 百度网盘视频倍速方法
  8. python 多行注释 unicode error 问题
  9. 田申:《个人信息安全规范》的理解与初探
  10. 如何轻松使用阿里云得矢量图标库