大目前的主流芯片都具有重映射的功能,很多刚入坑的小伙伴不太清楚重映射功能,本文章以STM32F103C8T6为例子,对该功能进行说明。
重映射功能的作用:芯片的重映射功能是为了最大化利用IO口,减少IO口数量,每一个内置外设有若干个输入输出引脚,对应的IO口是固定不变的,为了让设计师更好走线且使用功能,引入了重映射。设置复用 重映射和调试I/O配置寄存器,实现引脚的重新映射。这时,复用功能不再映射到它 们的原始分配上。REMAP=0表示为默认引脚,REMAP=1表示为开启重映射。
部分重映射和完全重映射:所谓部分重映射就是部分管脚和默认的是一样的,而部分管脚是重新映射到其他管脚,而完全重 映射就是所有管脚都重新映射到其他管脚。通俗一点讲就是一个IO口有多个管脚,有的IO口是所有的管脚全部连接到一个外设上,有的IO口是一部分管脚接在一个外设上,另一部分管脚接在另一个外设上。
例如:
GPIO中的PB5IO口,默认功能为I2C_SMBAI,重映射的一部分管脚接在TIM_CH2外设上,一部分接在SPI1_MOSI外设上,所以这里的重映射就是指的部分重映射。
例如:

本文介绍了STM32F103C8T6芯片的重映射功能,该功能允许设计师根据需要重新分配IO口,以优化硬件设计。通过设置复用重映射寄存器,可以实现部分或完全重映射,以连接不同的外设。以PB5为例,讲解了部分重映射的概念,即PB5可同时连接TIM3_CH2和SPI1_MOSI。同时,提供了PB10和PB11完全重映射到TIM3的示例。初始化重映射功能涉及使能IO口、AFIO时钟和相应外设时钟,并配置GPIO。代码示例展示了PB5作为TIM3_CH2的重映射初始化过程。
最低0.47元/天 解锁文章
6765





