针对瑞萨RA8D1板卡的调试串口输出。
一、硬件电路连接
串口选择:通常使用USART3进行调试,该串口与JLINK仿真器连接。电路连接时,使用的端口是P408(TXD)和P409(RXD)。
板载JLINK使用:如果板卡上集成了JLINK,只需用一根线连接电脑即可进行下载和调试。若板卡没有集成JLINK,则需要单独准备一个。

二、串口配置
端口和波特率配置:在串口配置中,需要设置串口端口和波特率。波特率的选择应根据实际需求进行,常见的波特率等。
串口时钟设置:串口时钟的配置对波特率的准确性有重要影响。在配置时,需要注意时钟源和分频系数的选择,以确保波特率的正确性。
新建串口配置:

串口设置:

引脚配置:

三、代码实现
串口初始化:在代码中,需要实现串口的初始化函数。该函数通常包括打开串口、配置串口参数(如波特率、数据位、停止位、校验位等)以及设置中断回调函数等步骤。以下是一个简单的串口初始化示例:
bsp_debug_uart3.c:
#include "bsp_debug_uart.h"
void Debug_UART3_Init(void)
{
fsp_err_t err = FSP_SUCCESS;
err = R_SCI_B_UART_Open (&g_uart3_ctrl, &g_uart3_cfg);
assert(FSP_SUCCESS == err);
}
uint8_t uart_send_complete_flag = 0;
void debug_uart3_callback (uart_callback_args_t * p_args)
{
switch (p_args->event)
{
case UART_EVENT_RX_CHAR:
{
R_SCI_B_UART_Write(&g_uart3_ctrl, (uint8_t *)&(p_args->data), 1);
break;
}
case UART_EVENT_TX_COMPLETE:
{
uart_send_complete_flag = 1;
break;
}
default:
break;
}
}hal_entry.c
#include "hal_data.h"
#include "led/led.h"
#include "debug_uart/bsp_debug_uart.h"
fsp_err_t err;
void R_BSP_WarmStart(bsp_warm_start_event_t event);
//extern bsp_leds_t g_bsp_leds;
/*******************************************************************************************************************//**
* [url=home.php?mod=space&uid=159083]@brief[/url] Blinky example application
*
* Blinks all leds at a rate of 1 second using the software delay function provided by the BSP.
*
**********************************************************************************************************************/
void hal_entry (void)
{
init_led();
Debug_UART3_Init();
while (1)
{
printf("https://bbs.eeworld.com.cn!\r\n");
/* if(R_BSP_PinRead (BSP_IO_PORT_00_PIN_08)==0)
{
led201_on();
}
else
{
led201_off();
}*/
/* Delay */
//R_BSP_SoftwareDelay(delay, bsp_delay_units);
R_BSP_SoftwareDelay(100, BSP_DELAY_UNITS_MILLISECONDS);
led201_on();
R_BSP_SoftwareDelay(100, BSP_DELAY_UNITS_MILLISECONDS);
led201_off();
}
}四、运行结果:

我要赚赏金
