0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

3. 瑞萨RA系列MCU-UART使用

瑞萨mcu 来源:瑞萨mcu 作者:瑞萨mcu 2022-11-30 17:42 次阅读

1.硬件信息

图片.png

2.rasc配置

2.1sci-usart 配置

图片.png

2.2 stack配置

图片.png

图片.png

图片.png

2.3串口属性属性

图片.png

2.4 修改堆得大小

默认堆得大小是0,在使用printf函数时候需要堆得空间所以配置一下堆

图片.png

软件编写

bsp_debug_uart.c

#include "bsp_debug_uart.h"
/* 调试串口 UART4 初始化 */
void bsp_uart_init(void)
{
	fsp_err_t err = FSP_SUCCESS;
	err = R_SCI_UART_Open (&g_uart0_ctrl, &g_uart0_cfg);
	assert(FSP_SUCCESS == err);
}

/* 发送完成标志 */
volatile bool uart_send_complete_flag = false;
/* 串口中断回调 */
void uart0_callback (uart_callback_args_t * p_args)
{
	switch (p_args->event)
	{
		case UART_EVENT_RX_CHAR:
		{
		/* 把串口接收到的数据发送回去 */
		R_SCI_UART_Write(&g_uart0_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_UART_Write(&g_uart0_ctrl, (uint8_t *)pBuffer, (uint32_t)size);
	while(uart_send_complete_flag == false);
	uart_send_complete_flag = false;
	return size;
}
#else
int fputc(int ch, FILE *f)
{
	(void)f;
	R_SCI_UART_Write(&g_uart0_ctrl, (uint8_t *)&ch, 1);
	while(uart_send_complete_flag == false);
	uart_send_complete_flag = false;
	return ch;
}
#endif

bsp_debug_uart.h

#ifndef __BSP_UART_H__
#define __BSP_UART_H__

#include "hal_data.h"
#include "stdio.h"
void bsp_uart_init(void);

#endif

hal_entery.c

void hal_entry(void)
{
    /* TODO: add your own code here */
	//初始化io
	R_IOPORT_Open (&g_ioport_ctrl, g_ioport.p_cfg);
	bsp_uart_init();
	printf("hello RA4\\r\\n");
	//
	while(1)
	{
		R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_04, BSP_IO_LEVEL_LOW);
		R_BSP_SoftwareDelay(100, BSP_DELAY_UNITS_MILLISECONDS); //延时 100毫秒
		R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_04, BSP_IO_LEVEL_HIGH);
		R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_05, BSP_IO_LEVEL_LOW);
		R_BSP_SoftwareDelay(100, BSP_DELAY_UNITS_MILLISECONDS); //延时 100毫秒
		R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_05, BSP_IO_LEVEL_HIGH);
		R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_15, BSP_IO_LEVEL_LOW);
		R_BSP_SoftwareDelay(100, BSP_DELAY_UNITS_MILLISECONDS); //延时 100毫秒
		R_IOPORT_PinWrite(&g_ioport_ctrl, BSP_IO_PORT_04_PIN_15, BSP_IO_LEVEL_HIGH);
	}
#if BSP_TZ_SECURE_BUILD
    /* Enter non-secure code */
    R_BSP_NonSecureEnter();
#endif

效果

图片.png

审核编辑 黄昊宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    146

    文章

    17135

    浏览量

    351026
收藏 人收藏

    评论

    相关推荐

    RA8系列高性能MCU开发上手体验

    大家好,我是痞子衡,是正经搞威廉希尔官方网站 的痞子。今天痞子衡给大家介绍的是RA8系列高性能MCU开发上手体验。
    的头像 发表于 08-08 15:21 1436次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b><b class='flag-5'>RA</b>8<b class='flag-5'>系列</b>高性能<b class='flag-5'>MCU</b>开发上手体验

    电子RA系列MCU解决智能物联网系统开发痛点

    电子株式会社今日宣布推出采用32位ARM®Cortex®-M核的RA(高端)系列MCU
    发表于 10-08 08:06 2140次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b>电子<b class='flag-5'>RA</b><b class='flag-5'>系列</b><b class='flag-5'>MCU</b>解决智能物联网系统开发痛点

    MCU的相关资料分享

    电子推出了适用于空间受限、能源敏感的物联网 (IoT) 端点应用的新型微控制器 (MCU),包括可穿戴设备、医疗设备、电器和工业自动化。新的 RA2E2
    发表于 11-11 08:18

    RA4系列开发板体验】3. RA系列MCU-UART使用

    使用printf函数时候需要堆得空间所以配置一下堆软件编写bsp_debug_uart.c#include "bsp_debug_uart.h"/* 调试串口 UART4 初始化
    发表于 12-01 09:11

    【精品聚合】RA-Eco-RA4M2-100PIN开发板试用报告作品汇总

    工程+点亮LED【RA4系列开发板体验】3.
    发表于 12-02 16:43

    【野火启明6M5开发板体验】野火启明开发板和RA MCU介绍

    首先感谢电子发烧友和野火,已经收到野火启明6M5开发板。野火启明6M5开发板包装野火启明6M5开发板开发板简介:野火启明6M5开发板是野火科技基于RA系列的32位
    发表于 12-14 22:31

    RA MCU创意氛围赛】3. 硬件I2C驱动OLED显示汉字

    RA MCU创意氛围赛】1. PWM驱动LED以及STLINK下载配置【
    发表于 05-26 14:06

    RA系列MCU选型指南

    RA系列MCU产品基于Arm Cortex-M内核,与自有内核RL78和RX系列一起,成为
    发表于 11-08 13:51 2301次阅读

    RA2系列MCU IIC通信速率分析

    一、RA系列MCU简介 RA(Renesas Advanced)系列MCU
    的头像 发表于 11-11 12:15 3135次阅读

    线下培训 | 电子RA MCU应用开发培训课程报名开启![野火电子]

    TRAINING RA应用开发培训课程来了! 电子RA系列MCU产品基于Arm  Corte
    的头像 发表于 03-21 10:30 1113次阅读

    基于RA系列R7FA2E1A52DFJ MCU的无叶风扇控制方案

    基于RA系列R7FA2E1A52DFJ MCU的无叶风扇控制方案
    的头像 发表于 09-26 16:55 837次阅读
    基于<b class='flag-5'>瑞</b><b class='flag-5'>萨</b><b class='flag-5'>RA</b><b class='flag-5'>系列</b>R7FA2E1A52DFJ <b class='flag-5'>MCU</b>的无叶风扇控制方案

    RA MCU串口通信空闲中断

    RA MCU串口通信空闲中断
    的头像 发表于 09-26 16:59 947次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b><b class='flag-5'>RA</b> <b class='flag-5'>MCU</b>串口通信空闲中断

    使用VSCODE+GNU+J-Link开发RA MCU(下)

    使用VSCODE+GNU+J-Link开发RA MCU
    的头像 发表于 09-04 16:23 938次阅读
    使用VSCODE+GNU+J-Link开发<b class='flag-5'>瑞</b><b class='flag-5'>萨</b><b class='flag-5'>RA</b> <b class='flag-5'>MCU</b>(下)

    电子RA家族推出RA8系列高算力通用MCU

    电子RA家族推出RA8系列高算力通用MCU,是业界首款基于Arm® Cortex®-M85(
    的头像 发表于 04-02 14:14 1427次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b>电子<b class='flag-5'>RA</b>家族推出<b class='flag-5'>RA</b>8<b class='flag-5'>系列</b>高算力通用<b class='flag-5'>MCU</b>

    RA MCU家族推出集成Arm® Cortex®-M23内核的全新RA0系列

    RA MCU家族推出全新的RA0系列RA0E1
    的头像 发表于 04-10 14:32 1280次阅读
    <b class='flag-5'>瑞</b><b class='flag-5'>萨</b><b class='flag-5'>RA</b> <b class='flag-5'>MCU</b>家族推出集成Arm® Cortex®-M23内核的全新<b class='flag-5'>RA</b>0<b class='flag-5'>系列</b>