码迷,mamicode.com
首页 > 其他好文 > 详细

STM32之复用功能

时间:2019-10-01 11:49:58      阅读:311      评论:0      收藏:0      [点我收藏+]

标签:margin   不同的   auto   没有   数据   封装   表示   png   span   

  复用功能分复用输入,复用输出,STM32芯片内部集成多种模块,如GPIO、串口、i2c等,为使IO端口支持这些模块,厂家对IO端口进行扩展,同一个端口通过设置寄存器会有不同的功能。如下图IO结构图:

技术图片

STM32的复用功能由两个高、低的均为32位的寄存器组成:

  (1) GPIO 复用功能低位寄存器 (GPIOx_AFRL)

技术图片

  (2) GPIO 复用功能高位寄存器 (GPIOx_AFRH)

技术图片

 复用功能寄存器4位为1小组,分别是AFL0~AFL7、AFH8~AFH15。

 AFL0~AFL7 是和GPIOx0~GPIOx7一一对应,AFH8~AFH15和GPIOx8~GPIOx15一一对应。

STM32底层没有AFRH和AFRL寄存器,底层是封装成一个数组AFR[2],ARF[0]代表AFRL寄存器,AFR[1]代码AFRH寄存器。

示例:把GPIOA9 、GPIOA10设为复用功能,则有下面:

         GPIOA9、GPIOA10分别对应:  GPIOA->AFR[1] |= 7<<4    ;   GPIOA->AFR[1] |= 7<<8 ;     

     注释:7表示AF7,为复用数据,4和8表示复用GPIO的位置.  GPIOA9 、GPIOA10属于AFH8~AFH15的范畴。

IO口的复用功能可以查询 “STM32f405、407xxx数据手册”复用表:

  技术图片

 

STM32之复用功能

标签:margin   不同的   auto   没有   数据   封装   表示   png   span   

原文地址:https://www.cnblogs.com/anSn/p/11614978.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!