最近在做蓝桥杯往届试题,遇到了要求利用串口2接收数据,还需要使用PA1,PA2输出PWM信号,但是USART2的TXD和PWM的PA2脚是同一个引脚,导致按照正常初始化步骤运行,会发现串口可以正常使用,PA1可以正常输出PWM,但是PA2始终是高电平,无法输出PWM。
1.分时复用
顾名思义,分时复用就是分时间段来使用,自我们这里也就是用一会串口,用一会PWM,来回切换。
#define PWM_ENABLE 1
#define UART_ENABLE 2
void PWM_UART_Enable(u8 flag)
{
if(flag==PWM_ENABLE)
{
USART_Cmd(USART2, DISABLE);