官方提供的  driver 中,有一个 hc32f460_utility.c,就是官方提供的工具类

首先找到 ddl_config.h  的64 行 使能 print,默认是 off 状态

#define DDL_PRINT_ENABLE                            (DDL_ON)

官方工具类申明了一下三个函数方法

en_result_t UART_PrintfInit(M4_USART_TypeDef *UARTx,
                            uint32_t u32Baudrate,
                            void (*PortInit)(void));

#define DDL_PrintfInit      (void)UART_PrintfInit
#define DDL_Printf          (void)printf

使用起来 很简单,用 DDL_PrintfInit      先初始化 串口 

参数(M4_USART1/M4_USART2/M4_USART3 , 波特率 (115200),引脚初始化的函数指针)

void usart_port_init(){
	 const stc_usart_uart_init_t stcInitCfg = {
        UsartIntClkCkNoOutput,
        UsartClkDiv_1,
        UsartDataBits8,
        UsartDataLsbFirst,
        UsartOneStopBit,
        UsartParityNone,
        UsartSampleBit8,
        UsartStartBitFallEdge,
        UsartRtsEnable,
    };
	 
	PORT_SetFunc(USART_RX_PORT, USART_RX_PIN, USART_RX_FUNC, Disable);
    PORT_SetFunc(USART_TX_PORT, USART_TX_PIN, USART_TX_FUNC, Disable);

    /* Initialize UART */
    USART_UART_Init(USART_CH, &stcInitCfg);
}

DDL_PrintfInit(M4_USART2,115200,usart_port_init);

以上串口调试就ok了

可以在任意的代码位置加上printf 语句了

printf("i : %d ,hz_count : %d\r\n",i,0x64 + i);

非常简单,用来做串口格式化输出,串口打印调试,都非常方便

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐