加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

瑞萨RA8系列教程 | 基于e2s实现RA8串口输出配置

05/29 12:00
2774
阅读需 8 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

微信公众号 | strongerHuang

串口是最常见的通信方式之一,也是单片机调试最常见的通信接口,也是现在的单片机必备的通信接口,目前(2024-05)最新、最强的Cortext-M85内核的RA8系列单片机也不例外。

今天就结合瑞萨Cortext-M85内核RA8系列单片机给大家讲讲串口输出实现的方法,简单到只需要一分钟左右即可配置好。

准备工作

要快速使用瑞萨Cortext-M85内核RA8系列单片机,需要有一些准备工作。

1、下载安装集成开发环境

瑞萨单片机的集成开发工具(IDE)有很多,比如:瑞萨自家的e2s、Keil、 IAR等。

2、准备硬件板卡

虽然现在仿真工具都可以实现单片机的要一些功能,但我们最好还是在硬件实物上跑程序更能学会技术。

本教程就使用瑞萨CPKCOR_RA8D1B评估板,这块板卡使用RA8D1单片机,并集成了J-link,我们只需要用一根线连接电脑即可下载调试。

当然,如果你板卡没有集成J-Link,就需要单独准备一个。

以上就是主要的准备工作,其实也挺简单,入门都要准备的工作。

一分钟上手Cortext-M85单片机串口

e2s集成了很多功能,我们只需要动动鼠标就能快速创建并生成一个工程。

1、基于e2s快速创建一个工程

打开e2s,文件 -> 新建 -> 瑞萨C/C++项目 -> Renesas RA:

输入工程名称,比如我们输入RA8D1_UART

选择单片机型号,比如R7FA8D1BHEC:

然后,根据提示,一步一步下去,就可以创建一个RA8工程:

2、配置串口

这里只需要根据图形化界面,简单配置一下串口即可使用串口。

我们在引脚(Pins)的位置,选择外设(Peripherals)-> SLI4,配置成异步通信模式:

在 Stacts -> New Stacts,新建一个UART:

然后,在配置一下UART参数(属性):

这里根据自己情况修改几个主要参数,其他大多数默认即可,如果需要中断,就需要自己定义一个中断回调函数:

如果要使用printf就还需要配置两个地方,1、heap栈大小;2、工程设置。

接下来就是添加代码了,我们添加两个源文件:bsp_debug_uart.h和bsp_debug_uart.c

其中bsp_debug_uart.h就是包含头文件,以及声明函数。

#ifndef __BSP_DEBUG_UART_H#define  __BSP_DEBUG_UART_H#include "hal_data.h"#include <stdio.h>
void Debug_UART4_Init(void);
#endif

其中bsp_debug_uart.c源文件也比较简单:

#include "bsp_debug_uart.h"
/* 调试串口 UART4 初始化 */void Debug_UART4_Init(void){    fsp_err_t err = FSP_SUCCESS;        err = R_SCI_B_UART_Open(&g_uart4_ctrl, &g_uart4_cfg);
    assert(FSP_SUCCESS == err);}
/* 发送完成标志 */volatile bool uart_send_complete_flag = false;
/* 串口中断回调 */void debug_uart4_callback (uart_callback_args_t * p_args){    switch (p_args->event)    {        case UART_EVENT_RX_CHAR:        {            /* 把串口接收到的数据发送回去 */            R_SCI_B_UART_Write(&g_uart4_ctrl, (uint8_t *)&(p_args->data), 1);
            break;        }        case UART_EVENT_TX_COMPLETE:        {            uart_send_complete_flag = true;            break;        }        default:            break;    }}
/* 重定向 printf 输出 */#if defined __GNUC__ && !defined __clang__int _write(int fd, char *pBuffer, int size); //防止编译警告int _write(int fd, char *pBuffer, int size){    (void)fd;    R_SCI_B_UART_Write(&g_uart4_ctrl, (uint8_t *)pBuffer, (uint32_t)size);    while(uart_send_complete_flag == false);    uart_send_complete_flag = false;
    return size;}#elseint fputc(int ch, FILE *f){    (void)f;    R_SCI_B_UART_Write(&g_uart4_ctrl, (uint8_t *)&ch, 1);    while(uart_send_complete_flag == false);    uart_send_complete_flag = false;
    return ch;}#endif

这样下来就算完成了,你往单片机发送什么字符,它就会给你发回来,比如:往里面发字符“A”

到这里就完成了一个RA8单片机串口的配置,是不是很简单?对于有一定基础的朋友,基本上一分钟就能搞定。

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
S29GL256P10FFI020 1 AMD Flash, 16MX16, 100ns, PBGA64,
$9.29 查看
SN74LVC1G125DCKR 1 Texas Instruments Single 1.65-V to 5.5-V buffer with 3-state outputs 5-SC70 -40 to 125

ECAD模型

下载ECAD模型
$0.3 查看
ASFL1-12.000MHZ-ERS-T 1 Abracon Corporation XTAL OSC XO 12.0000MHZ HCMOS TTL
$1.28 查看
瑞萨电子

瑞萨电子

(RENESAS)于2003年4月1日—由日立制作所半导体部门和三菱电机半导体部门合并成立。RENESAS结合了日立与三菱在半导体领域方面的先进技术和丰富经验,是无线网络、汽车、消费与工业市场设计制造嵌入式半导体的全球领先供应商。创立日期2003年4月1日公司法人董事长&CEO伊藤达业务范围单片机逻辑模拟等的系统LSI、分立半导体元件、SRAM等的存储器开发、设计、制造、销售、服务的提供。集团成员44家公司(日本20家,日本以外24家)年度销售额2006财年(截止至2007年3月):9526亿日元(约83亿美元)从业人员:26000人(全世界20个国家、43家公司)瑞萨科技是世界十大半导体芯片供应商之一,在很多诸如移动通信、汽车电子和PC/AV 等领域获得了全球最高市场份额。瑞萨集成电路设计(北京)有限公司苏州分公司(RDB-SU)是瑞萨科技全资子公司,2004年1月成立以来,现已拥有150多名优秀工程师,承担着家电和汽车电子领域MCU的一系列设计工作,并在2006年4月开始开发面向中国市场的MCU。

(RENESAS)于2003年4月1日—由日立制作所半导体部门和三菱电机半导体部门合并成立。RENESAS结合了日立与三菱在半导体领域方面的先进技术和丰富经验,是无线网络、汽车、消费与工业市场设计制造嵌入式半导体的全球领先供应商。创立日期2003年4月1日公司法人董事长&CEO伊藤达业务范围单片机逻辑模拟等的系统LSI、分立半导体元件、SRAM等的存储器开发、设计、制造、销售、服务的提供。集团成员44家公司(日本20家,日本以外24家)年度销售额2006财年(截止至2007年3月):9526亿日元(约83亿美元)从业人员:26000人(全世界20个国家、43家公司)瑞萨科技是世界十大半导体芯片供应商之一,在很多诸如移动通信、汽车电子和PC/AV 等领域获得了全球最高市场份额。瑞萨集成电路设计(北京)有限公司苏州分公司(RDB-SU)是瑞萨科技全资子公司,2004年1月成立以来,现已拥有150多名优秀工程师,承担着家电和汽车电子领域MCU的一系列设计工作,并在2006年4月开始开发面向中国市场的MCU。收起

查看更多

相关推荐

电子产业图谱

作者黄工,从事嵌入式软件开发工作8年有余,高级嵌入式软件工程师,业余维护公众号『strongerHuang』,分享嵌入式软硬件、单片机、物联网等内容。