最近想用GD32F330芯片,看了下例程,USART Rx引脚设置为推挽输出, Rx引脚还内收到信号吗?
/* enable COM GPIO clock */
rcu_periph_clock_enable(RCU_GPIOA); //使能外设时钟
/* connect port to USARTx_Tx */
gpio_af_set(GPIOA, GPIO_AF_1, GPIO_PIN_9); //设置GPIO复用功能
/* connect port to USARTx_Rx */
gpio_af_set(GPIOA, GPIO_AF_1, GPIO_PIN_10);
/* configure USART Tx as alternate function push-pull */
gpio_mode_set(GPIOA, GPIO_MODE_AF, GPIO_PUPD_PULLUP, GPIO_PIN_9);//设置GPIO模式
gpio_output_options_set(GPIOA, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_9);//设置GPIO输出模式和速度
/* configure USART Rx as alternate function push-pull */
gpio_mode_set(GPIOA, GPIO_MODE_AF, GPIO_PUPD_PULLUP, GPIO_PIN_10);
gpio_output_options_set(GPIOA, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_10);
GPIO_OTYPE_PP是设置为推挽输出。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
看了下GD32F3x0的文档,模式选择是只能选其一的,输出或复用在是同一个寄存器。
复用模式下输出驱动模式是不起作用的,试想,你选输入模式,会不会也有类似的疑问?
一周热门 更多>