打印
[活动专区]

【AC7811开发板试用活动】USART1测试

[复制链接]
555|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
对于USART,我们可以直接根据示例代码修改而来。这里选择usart1.

1.确定USART1的引脚。



可以从GPIO引脚分配图中选择USART1的pin脚,这里选择PB5和PB6作为USART1的TX和RX。

下面对usart1进行初始化

void uart_init(void)
{
       
        UART_SettingType uartSetting;
       
        GPIO_SetFunc(GPIO_PB5, 1);//设置PB5为uart功能
        GPIO_SetFunc(GPIO_PB6, 1);//设置PB6为uart功能
       
        uartSetting.baudrate = 115200;//设置波特率
        uartSetting.dataBits = 8;
        uartSetting.stopBits = 1;
        uartSetting.parity         = 0;
        uartSetting.fifoByte = ENABLE;//使能缓冲区
        uartSetting.dmaEn          = DISABLE;//dma不使能
        UART_Init(UART1, &uartSetting);//初始化串口
       
        UART_SetEventCallback(UART1, UART_IRQHandler);//设置中断回调函数
        UART_SetRxIntEn(UART1, ENABLE);//使能接收中断
       
        NVIC_ClearPendingIRQ(UART1_IRQn);
        NVIC_EnableIRQ(UART1_IRQn);       
}
如上设置使能了串口接收中断,回调函数如下:

int32_t UART_IRQHandler(uint8_t port, uint32_t LSR0, uint32_t LSR1)
{
        if ((UART1->UARTn_IER.ERXNE == 1) && (LSR0 & LSR0_DR))
    {
                rx_table[step++]=UART_ReceiveData(UART1);
    }

    if ((UART1->UARTn_IER.ETXE == 1) && (LSR0 & LSR0_THRE))//发送数据
    {
      
    }

    return 0;
}

串口发送函数:

void UART_SendString(uint8_t *pDataBuf, uint8_t dataLen)
{
        for (uint8_t ii = 0; ii < dataLen; ii++)
        {
                UART_SendData(UART1, pDataBuf[ii]);//发送一个byte
                while(!UART1->UARTn_LSR0.TC);//等待发送完成
        }
}

主函数:

int main(void)
{
        //SetSysClock();
        InitDelay();
        led_init();
        uart_init();
        exti_init();
        //pwm_gpio_init();
        //PWM1_GenerateFrequency();
        GPIO_SetPinValue(GPIO_PA0, 1);               
        while(1)
        {
                mdelay(1000);
                UART_SendString((uint8_t*)"uart1 test...",sizeof("uart1 test...")-1);
                GPIO_SetPinValue(GPIO_PA0, 0);
        }
}
效果如下::




使用特权

评论回复

相关帖子

沙发
condition| | 2019-11-11 19:59 | 只看该作者
一般新板子到手之后,都是先点灯,再通讯

使用特权

评论回复
板凳
consumption| | 2019-11-17 17:53 | 只看该作者
感谢楼主的测评贴

使用特权

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

本版积分规则

68

主题

240

帖子

1

粉丝