最近在学习STM32,关于的串口通信文章里有这么一段代码:RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD | RCC_APB2Periph_AFIO,ENABLE);

当初是参考开发的里子写的一直对GPIOD或上“RCC_APB2Periph_AFIO”这句话的意思没搞懂,通过这几天在网上查找资料和看手册,终于高清楚了,希望能对跟我一样的新手有所帮助吧o(∩_∩)o...

STM32上有很多I/O口,也有很多的内置外设想I2C,ADC,ISP,USART等 ,为了节省引出管脚,这些内置外设基本上是与I/O口共用管脚的,也就是I/O管脚的复用功能。但是STM32还有一特别之处就是:很多复用内置的外设的I/O引脚可以通过重映射功能,从不同的I/O管脚引出,即复用功能的引脚是可通过程序改变的。知道了这些我们就不难理解上面代码的意思了,程序中用到的USART2外设的TX,RX分别对应PA2,PA3,但是我的学习板上的PA2,PA3引脚接了其他设备,但是为了还要用USART2,“RCC_APB2Periph_GPIOD |RCC_APB2Periph_AFIO”就打开了GPIOD重映射功能把USART2设备的TX,RX映射到PD5,PD6上,我们在这两个引脚上接上MAX232串口芯片就可以使用USART2串口通信了。那为看官该问:“USART2是不是可以映射到任意管脚呢?”答案是否定的,它只能映射到固定的管脚,下图是USART2重映射表

其他外设的重映射可以参考STM32100X手册。

为了节省IO资源单片机会在一个IO上复用很多功能,一般的单片机用到 一个功能后就能再用两外复用的功能了,这就体现出了STM32 GPIO的强大功能了,我们用重映射的方法把其中一个外设映射到其他IO脚上,这样就可以充分利用片内资源!

转载于:https://www.cnblogs.com/Ice-water/archive/2011/11/05/2237139.html

RCC_APB2Periph_AFIO的理解。。。重映射的一点心得相关推荐

  1. 【STM32】端口复用和重映射,完全重映射,部分重映射

    文章目录 端口复用 端口复用函数总结 端口重映射 完全重映射 完全重映射函数总结 部分重映射 端口复用 当 PA9,PA10 引脚作为串口 1 的 TX,RX 引脚使用的时候,那就是端口复用(相较于作 ...

  2. [OpenCV] cv.remap() 重映射学习笔记/map1 map2易混点

    文章目录 一.背景 二.Notes (一)更新几个小例子方面理解remap 1. 利用remap 进行 copy 2.进行翻转 学习remap的时候发现map1和map2的参数跟我的直观理解略有差别, ...

  3. 端口复用|端口重映射

    端口复用:STM32有很多的内置外设,这些外设的外部引脚都是与GPIO复用的.也就是说,一个GPIO如果可以复用为内置外设的功能引脚,那么当这个GPIO作为内置外设使用的时候,就叫做复用. 例如:串口 ...

  4. STM32——端口复用与重映射

    目录 端口复用的概念 内置外设的概念 端口复用的概念 端口复用的配置 配置示例(串口1) 复用GPIO的配置 STM32中文参考手册 110页 端口重映射概念 端口重映射概念 部分重映射 完全重映射 ...

  5. ROS中topic重映射理解及验证(remap标签)

    先附上个人总结: remap在node标签<node> ... </node>之外的作用域是其之后的所有节点: <node> ... </node> & ...

  6. STM32F103PWM+重映射 小程序

    我的开发板是学习板,很多管脚没有引出.弄到定时器产生PWM这一块,想用下管脚重映射功能,毕竟库函数没有像操作寄存器那样容易理解.所以一开始着实糊涂了一会,最后还是给调出来了.结合很多别人的例程,但是发 ...

  7. 边缘检测、霍夫变换、重映射、仿射变换、直方图均衡化

    文章目录 1.基于 OpenCV 的边缘检测 1.1 边缘检测的一般步骤 1.2 canny 算子 1.2.1 canny 边缘检测的步骤 1.2.2 Canny 边缘检测:Canny() 函数 1. ...

  8. STM32之端口复用与重映射

    STM32 --端口复用和重映射 首先来说下什么是端口复用. STM32有很多的内置外设,这些外设的外部引脚都是与GPIO复用的.也就是说,一个GPIO如果可以复用为内置外设的功能引脚,那么当这个GP ...

  9. stm32端口复用和重映射

    相关描述在参考手册 通用和复用功能I/O  General-purpose and alternate-function I/Os(GPIOs and AFIOs)里有详细介绍 端口复用或许没听过详细 ...

  10. STM32学习日记3---定时器TIM3重映射PWM波呼吸灯实验

    文章目录 1. 代码 关于PWM波的输出,我们需要用到定时器的4个通道(通用定时器和高级定时器有,基本定时器没有这4个通道)里面的PWM生成.然后查看数据手册,了解定时器的重映射引脚情况.所以配置时, ...

最新文章

  1. 智慧屏到底是不是鸿蒙,荣耀智慧屏究竟是电视还是“新物种”?
  2. SQL Server 分区表的创建方法与管理
  3. 纯CSS实现提示框小三角
  4. Spring入门5.事务管理机制
  5. C 主导、C++与 C# 为辅,揭秘 Windows 10 源代码!
  6. iTunes,一个不断侵蚀C盘的大虫
  7. Niushop开源微信商城+小程序商城源码
  8. win2008服务器系统玩红警,win8系统玩不了红色警戒2如何解决?win8系统玩不了红色警戒2解决方法...
  9. 苹果8硬件保修服务器,iPhone手机刷机报错,很多是硬件问题
  10. mysql根据出生日期计算年龄并查询
  11. 针对商品标题冗长问题,阿里工程师怎么解决?
  12. iOS开发- 实现类似于陌陌点点和探探首页切换效果类似
  13. 基于ROS1.0的stdr simulation搭建多移动机器人(multiple robots)仿真系统
  14. crontab: error renaming解决方法
  15. app 的 icon图标 有黑边
  16. 从VirtualDom(虚拟Dom)到真实DOM
  17. oracle对某两列求和再求和_分手再狠也不怕,3步让他主动求和
  18. OSChina 周三乱弹 ——美女 你钱掉了
  19. vscode git merge请输入一个提交信息以解释此合并的必要性
  20. umeditor 踩坑

热门文章

  1. 纵横公路造价软件学习_纵横公路造价软件教程
  2. 乐高机械系列01:曲柄滑块剪叉机构
  3. Dukto-R6超级实用的免费跨平台局域网文件/文件夹传输工具
  4. 深度理解 RGMII (包含Linux和realtek)
  5. ArcGIS API For JavaScript 利用GP服务生成等值线、等值面(一)之生成等值线
  6. iRedMail退信问题的解决
  7. 14届数独-真题标准数独-Day 10-20220125
  8. 计算机在小学英语中的应用,计算机在小学英语教学中的应用.doc
  9. linux复制文件到另一台服务器
  10. 工业机器人pallet指令_工业机器人编程指令详解