问答

汇集网友智慧,解决技术难题

ya1234

TA的家园币:28  

  • GD32E230串口0使用PB6、PB7的问题

    GD32E230的datasheet中可以看到PB和PB7是可以复用到USART0的,然后使用官方的例程,将官方例程默认引进从PA9、PA10改成PB6、PB7,结果串口就不打印了。用PA9、PA10却可以。请教一下有没有人知道PB6、PB7怎么当串口0使用?以下是官方例程,我将引脚宏定义改成PB6和PB7:/*definitionforCOM,connectedtoUSART0*/#defineEVAL_COMUSART0#defineEVAL_COM_CLKRCU_USART0#defineEVAL_COM_TX_PINGPIO_PIN_6#defineEVAL_COM_RX_PINGPIO_PIN_7#defineEVAL_COM_GPIO_PORTGPIOB#defineEVAL_COM_GPIO_CLKRCU_GPIOB#defineEVAL_COM_AFGPIO_AF_1/*!\briefconfigureCOMport\paramcom:COMontheboard\argEVAL_COM:COMontheboard\param[out]none\retvalnone*/voidgd_eval_com_init(uint32_tcom){uint32_tCOM_ID;COM_ID=0U;/*enableCOMGPIOclock*/rcu_periph_clock_enable(EVAL_COM_GPIO_CLK);/*enableUSARTclock*/rcu_periph_clock_enable(COM_CLK[COM_ID]);/*connectporttoUSARTx_Tx*/gpio_af_set(EVAL_COM_GPIO_PORT,EVAL_COM_AF,COM_TX_PIN[COM_ID]);/*connectporttoUSARTx_Rx*/gpio_af_set(EVAL_COM_GPIO_PORT,EVAL_COM_AF,COM_RX_PIN[COM_ID]);/*configureUSARTTxasalternatefunctionpush-pull*/gpio_mode_set(EVAL_COM_GPIO_PORT,GPIO_MODE_AF,GPIO_PUPD_PULLUP,COM_TX_PIN[COM_ID]);gpio_output_options_set(EVAL_COM_GPIO_PORT,GPIO_OTYPE_PP,GPIO_OSPEED_10MHZ,COM_TX_PIN[COM_ID]);/*configureUSARTRxasalternatefunctionpush-pull*/gpio_mode_set(EVAL_COM_GPIO_PORT,GPIO_MODE_AF,GPIO_PUPD_PULLUP,COM_RX_PIN[COM_ID]);gpio_output_options_set(EVAL_COM_GPIO_PORT,GPIO_OTYPE_PP,GPIO_OSPEED_10MHZ,COM_RX_PIN[COM_ID]);/*USARTconfigure*/usart_deinit(com);usart_baudrate_set(com,115200U);usart_receive_config(com,USART_RECEIVE_ENABLE);usart_transmit_config(com,USART_TRANSMIT_ENABLE);usart_enable(com);}