发新帖我要提问
12
返回列表
打印

GD32 F2x 串口常用库函数

[复制链接]
楼主: hanzhen654
手机看帖
扫描二维码
随时随地手机跟帖
21
hanzhen654|  楼主 | 2021-1-5 21:10 | 只看该作者 回帖奖励 |倒序浏览
函数名称 usart_dma_transmit_config
函数原型 void usart_dma_transmit_config(uint32_t usart_periph, uint32_t dmacmd);
功能描述 配置 USART DMA发送功能
例如:
/* USART0 DMA enable for transmission */
usart_dma_transmit_config(USART0, USART_DENT_ENABLE)

使用特权

评论回复
22
hanzhen654|  楼主 | 2021-1-6 13:16 | 只看该作者
最后来写一段 串口0发送数据的驱动代码

void USART_Config()
{
        rcu_periph_clock_enable(RCU_GPIOA);
        rcu_periph_clock_enable(RCU_USART0);
        // USART Tx
  gpio_init(GPIOA,GPIO_MODE_OUT_PP,GPIO_OSPEED_50MHZ,GPIO_PIN_9);
        // USART Rx
        gpio_init(GPIOA,GPIO_MODE_IN_FLOATING,GPIO_OSPEED_50MHZ,GPIO_PIN_10);       
        // USART
        usart_deinit(USART0);
  usart_baudrate_set(USART0,115200U);       
        usart_parity_config(USART0,USART_PM_NONE);
        usart_word_length_set(USART0,USART_WL_8BIT);
        usart_stop_bit_set(USART0,USART_STB_1BIT);
        usart_hardware_flow_rts_config(USART0,USART_RTS_DISABLE);
  usart_hardware_flow_cts_config(USART0,USART_CTS_DISABLE);
       
        usart_transmit_config(USART0,USART_TRANSMIT_ENABLE);
        usart_receive_config(USART0,USART_RECEIVE_ENABLE);
        usart_enable(USART0);       
}


使用特权

评论回复
23
hanzhen654|  楼主 | 2021-1-6 13:17 | 只看该作者
重定义到printf
int fputc(int ch, FILE *f)
{
  usart_data_transmit(USART0,ch);
        while(RESET == usart_flag_get(USART0,USART_FLAG_TBE));
        return ch;
}

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则