这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 企业专区 » Renesas » 【瑞萨RA8D1板卡】串口输出

共1条 1/1 1 跳转至

【瑞萨RA8D1板卡】串口输出

工程师
2025-02-11 20:00:30     打赏

针对瑞萨RA8D1板卡的调试串口输出。


一、硬件电路连接

串口选择:通常使用USART3进行调试,该串口与JLINK仿真器连接。电路连接时,使用的端口是P408(TXD)和P409(RXD)。

板载JLINK使用:如果板卡上集成了JLINK,只需用一根线连接电脑即可进行下载和调试。若板卡没有集成JLINK,则需要单独准备一个。

image.png

二、串口配置

端口和波特率配置:在串口配置中,需要设置串口端口和波特率。波特率的选择应根据实际需求进行,常见的波特率等。

串口时钟设置:串口时钟的配置对波特率的准确性有重要影响。在配置时,需要注意时钟源和分频系数的选择,以确保波特率的正确性。

新建串口配置:

image.png

串口设置:

image.png

引脚配置:

image.png

三、代码实现

串口初始化:在代码中,需要实现串口的初始化函数。该函数通常包括打开串口、配置串口参数(如波特率、数据位、停止位、校验位等)以及设置中断回调函数等步骤。以下是一个简单的串口初始化示例:

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();
    }
}


四、运行结果:

image.png








共1条 1/1 1 跳转至

回复

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