官方提供的 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);
非常简单,用来做串口格式化输出,串口打印调试,都非常方便