打印

GD32F405串口中断

[复制链接]
1193|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
天命风流|  楼主 | 2022-3-16 21:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用的是GD32F405RGT6单片机,串口初始化后,单片机能接收数据,但发送不出去,请问有那位大神可以为在下解惑
int USART1_put_char(int ch)
{
    usart_data_transmit(USART1, (unsigned char)ch );
    while ( usart_flag_get(USART1, USART_FLAG_TBE) == RESET) {}
    return ch;

}
void EvbUart1Config(void)
{
    rcu_periph_clock_enable(RCU_GPIOA);
    rcu_periph_clock_enable(RCU_USART1);

    /* connect port to USART1_Tx */
    gpio_af_set(GPIOA, GPIO_AF_1, GPIO_PIN_2);

    /* connect port to USARTx_R1 */
    gpio_af_set(GPIOA, GPIO_AF_1, GPIO_PIN_3);

    /* configure USART1 Tx as alternate function push-pull */
    gpio_mode_set(GPIOA, GPIO_MODE_AF, GPIO_PUPD_PULLUP,GPIO_PIN_2);
    gpio_output_options_set(GPIOA, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ,GPIO_PIN_2);

    /* configure USART2 Rx as alternate function push-pull */
    gpio_mode_set(GPIOA, GPIO_MODE_AF, GPIO_PUPD_PULLUP,GPIO_PIN_3);
    gpio_output_options_set(GPIOA, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ,GPIO_PIN_3);

    /* USART2 configure */
    usart_deinit(USART1);
    usart_baudrate_set(USART1,115200);
    usart_receive_config(USART1, USART_RECEIVE_ENABLE);
    usart_transmit_config(USART1, USART_TRANSMIT_ENABLE);
    usart_enable(USART1);
}


void uart_init()
{

    usart_deinit(USART1);
    usart_baudrate_set(USART1,115200);
    usart_parity_config(USART1, USART_PM_NONE);
    usart_word_length_set(USART1, USART_WL_8BIT);
    usart_stop_bit_set(USART1, USART_STB_1BIT);
    usart_receive_config(USART1, USART_RECEIVE_ENABLE);
    usart_transmit_config(USART1, USART_TRANSMIT_ENABLE);

    usart_interrupt_enable(USART1, USART_INT_RBNE);
    nvic_irq_enable(USART1_IRQn, 0, 2);
    usart_enable(USART1);
}
unsigned char tmp = 0;
void USART1_IRQHandler()
{

    tmp = usart_data_receive(USART1);
    //uart1_write_ch(tmp);
}

使用特权

评论回复
沙发
天命风流|  楼主 | 2022-3-16 21:33 | 只看该作者
自己顶一下           

使用特权

评论回复
板凳
天命风流|  楼主 | 2022-3-17 08:46 | 只看该作者

使用特权

评论回复
地板
天命风流|  楼主 | 2022-3-17 14:16 | 只看该作者

使用特权

评论回复
5
freeelectron| | 2022-3-17 16:51 | 只看该作者
本帖最后由 freeelectron 于 2022-3-17 16:53 编辑

引脚配置的串口2,发送数据用的串口1?

使用特权

评论回复
6
天命风流|  楼主 | 2022-3-17 17:32 | 只看该作者
freeelectron 发表于 2022-3-17 16:51
引脚配置的串口2,发送数据用的串口1?

配置的也是串口1  请忽略错误的注释

使用特权

评论回复
7
billzhang331| | 2022-3-17 19:20 | 只看该作者
接收中断里没有清除RBNE位

使用特权

评论回复
8
天命风流|  楼主 | 2022-3-17 19:25 | 只看该作者
谢谢  我自己解决了

使用特权

评论回复
9
天命风流|  楼主 | 2022-3-17 19:26 | 只看该作者

使用特权

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

本版积分规则

91

主题

1175

帖子

6

粉丝