hc32l13启用内部晶振示例,开启串口打印
时间: 2023-08-16 15:07:12 浏览: 94
下面是启用 HC32L13 内部晶振并开启串口打印的示例代码:
```c
#include "hc32l13x.h"
#include "stdio.h"
int main(void)
{
/* 使能内部高速时钟 */
CLK_HRCInit(CLK_HRC_ON, CLK_HRCFREQ_16M);
/* 配置系统时钟为内部高速时钟 */
CLK_SetSysclkDiv(CLK_SYSCLKSOURCE_HRC, CLK_SYSCLKDIV_1);
/* 使能 UART0 时钟 */
CLK_FcgPeriphClockCmd(CLK_FCG_UART0, ENABLE);
/* 配置 UART0 引脚 */
GPIO_SetFunc(UART0_TX_PORT, UART0_TX_PIN, GPIO_FUNC_2_UART);
GPIO_SetFunc(UART0_RX_PORT, UART0_RX_PIN, GPIO_FUNC_2_UART);
/* 配置 UART0 参数 */
stc_uart0_baud_t stcBaud = {2400, UART0_BCR_CLK_DIV64};
UART0_BaudrateConfig(&stcBaud);
/* 使能 UART0 发送和接收功能 */
UART0_FuncCmd(UART0_TX | UART0_RX, ENABLE);
while (1)
{
/* 打印 Hello World! */
printf("Hello World!\r\n");
}
}
```
在上述代码中,使用了 `stdio.h` 中的 `printf()` 函数实现了串口打印功能。在 `main()` 函数中,先启用了内部高速时钟,并将系统时钟源设置为内部高速时钟。然后,使用 `CLK_FcgPeriphClockCmd(CLK_FCG_UART0, ENABLE)` 使能 UART0 时钟,并配置 UART0 引脚为串口功能。接着,使用 `UART0_BaudrateConfig()` 函数配置 UART0 波特率为 2400,并将时钟分频系数设置为 64。最后,使用 `UART0_FuncCmd()` 函数使能 UART0 发送和接收功能。
在 `while` 循环中,使用 `printf()` 函数打印字符串 "Hello World!",并通过串口发送出去。
阅读全文