ASWD123 发表于 2024-9-5 14:03

关于引脚复用的问题

我想用n32G452的TIM2定时器的PWM输出,PWM输出默认是PA0 PA1 PA2 PA3
现在想复用到PA15 PB3 PB10 PB11,现在在时钟使能指令后面增加
AFIO->RMP_CFG&=~(0x1<<12);       
AFIO->RMP_CFG|=0x1<<12;
这两条指令没有效果,该怎么设置才能复用成功呢?

niceguy 发表于 2024-9-6 15:41

本帖最后由 niceguy 于 2024-9-6 15:46 编辑

首先,PA15,PB3引脚对于MCU默认是JTAG功能,不是作为普通GPIO使用的,如果要当作其他功能用首先需要调用GPIO_ConfigPinRemap(GPIO_RMP_SW_JTAG_SW_ENABLE, ENABLE);将调试接口JTAG换成SWD,然后再使用PA15, PB3;

第二,你代码都配错了,你代码中配置的 AFIO->RMP_CFG|=0x1<<12;是配置的TIM4 吧,用户手册上配置TIM2是bit8-9, 应该是 AFIO->RMP_CFG|=0x3<<8;才对吧

elephant00 发表于 2024-9-10 15:18

步骤来配置PWM输出到特定引脚
确认引脚复用映射:
首先,您需要查阅N32G452的参考手册或数据手册,以确认哪些引脚可以被复用为TIM2的PWM输出,并且了解如何通过寄存器配置这些复用。
时钟使能:
确保TIM2和涉及的GPIO端口的时钟已经使能。这通常通过RCC(Reset and Clock Control)模块的相关寄存器来完成。
配置GPIO复用功能:
找到控制GPIO引脚复用功能的寄存器,并将相应的位设置为TIM2的PWM输出。这通常涉及设置GPIO端口的复用功能寄存器(如GPIOx_AFRL或GPIOx_AFRH,但N32G452可能有不同的命名)。
配置TIM2:
配置TIM2的PWM模式,包括周期、占空比等参数。这通常通过TIM2的配置寄存器来完成。
使能TIM2:
页: [1]
查看完整版本: 关于引脚复用的问题