这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 综合技术 » 基础知识 » CW32L010串口输出

共2条 1/1 1 跳转至

CW32L010串口输出

工程师
2024-12-30 23:39:04     打赏

CW32L010是一款集成了丰富功能的低功耗微控制器,其串口输出功能是通过其内部的通用异步收发器(UART)实现的。
一、串口硬件资源CW32L010提供了二路低功耗UART,这些UART接口支持异步全双工、同步半双工和单线半双工模式,以及多机通信。


二、串口配置与初始化在使用CW32L010的串口输出功能之前,需要进行相应的配置与初始化。通常包括设置波特率、数据位、停止位、校验位等参数,以及配置相关的GPIO引脚。
波特率设置:波特率是指串口通信的速率,CW32L010的UART接口支持广泛的波特率选择,可以通过小数波特率发生器提供精确的波特率。数据位设置:数据位是指串口通信中每个数据帧的位数,CW32L010支持标准的数据位长度,如7位或8位。停止位设置:停止位用于标识数据帧的结束,CW32L010支持1位或2位停止位的选择。校验位设置:校验位用于检测数据传输中的错误,CW32L010支持无奇偶校验、奇校验和偶校验三种模式。GPIO引脚配置:需要将指定的GPIO引脚配置为UART功能,包括TX(发送)和RX(接收)引脚。


三、串口通信的实现在配置和初始化完成后,就可以通过CW32L010的UART接口进行串口通信了。这通常包括数据的发送和接收两个过程。
数据发送:通过调用相关的UART发送函数,将数据帧发送到串口总线上。CW32L010的UART接口支持硬件数据流控制,可以在发送过程中自动处理数据的流动。数据接收:通过轮询或中断的方式,接收来自串口总线的数据帧。当接收到数据时,可以触发中断或产生状态标志,以便及时处理接收到的数据。
四、代码:

串口配置:
void UART_Configuration(void)
{
    UART_InitTypeDef UART_InitStructure = {0};

    UART_InitStructure.UART_BaudRate = DEBUG_UART_BaudRate;
    UART_InitStructure.UART_Over = UART_Over_16;
    UART_InitStructure.UART_Source = UART_Source_PCLK;
    UART_InitStructure.UART_UclkFreq = DEBUG_UART_UclkFreq;
    UART_InitStructure.UART_StartBit = UART_StartBit_FE;
    UART_InitStructure.UART_StopBits = UART_StopBits_1;
    UART_InitStructure.UART_Parity = UART_Parity_No ;
    UART_InitStructure.UART_HardwareFlowControl = UART_HardwareFlowControl_None;
    UART_InitStructure.UART_Mode = UART_Mode_Rx | UART_Mode_Tx;
    UART_Init(DEBUG_UARTx, &UART_InitStructure);
}

主函数:

    //配置RCC
    RCC_Configuration();

    //配置GPIO
    GPIO_Configuration();

    //配置UART
    UART_Configuration();

    //使能UARTx RC中断
    UART_ITConfig(DEBUG_UARTx, UART_IT_RC, ENABLE);
    UART_SendString(DEBUG_UARTx, "\r\nCW32L010 UART Interrupt\r\n");
    printf("\r\nCW32L010\r\n");
        UART_ClearITPendingBit(CW_UART2, UART_IT_RC);
    while(1)
    {
                //轮询收发
        TxRxBufferSize = UART_RecvBuf_Polling(DEBUG_UARTx, TxRxBuffer);
        UART_SendBuf_Polling(DEBUG_UARTx, TxRxBuffer, TxRxBufferSize);
    }

五.原理图:

串口芯片CH340芯片连接图:

TYPE C接口输入:

六.输出结果 :





专家
2024-12-31 01:01:08     打赏
2楼

感谢楼主分享


共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]