[讨论] 【瑞萨RA6E2评估板】开箱测评及特性介绍

bigbat   2023-10-1 13:35 楼主

瑞萨电子200MHz Cortex-M33 RA6E2评估板开箱

image.png  

可以看到这块板子的附件带的是够全的,除了USB线、杜邦线公—母线3根,母—母10根、CAN-FD模块、还有CAN的手册两本,特别让我高兴的是:还有一个大的元件盒。板子上的资源集成了jlink OB仿真器,其它的外设就是led两个、用户按键一个。其它就没有了。USB的接口芯片都没有。

这次板子的做工没有上次RA4E1的好,上次的板子是镀金工艺的,这次就是一般的无铅工艺吧,而且PCB上的布线没有太大变化,有走线出现了裸铜的地方。现在的PCB走线都流行6mil了吗。看来我还停在10mil的时代,看来该提高到8mil了。

image.png  

这次的RA6E2的芯片比RA4E1都是Cortex-M33的核心,但是主频增加到200MHz,这个可能要快很多吧。外设CAN也升级到了CAN FD,其它的好像没有看出来什么变化,flash还小了点。

板子的开发环境我使用的是keil,当然瑞萨公司推荐的是自家的e2STUDIO,使用的是GNU的编译器语言是clang,当然keil 6.0的也是clang,所以应该差不太多。如果想使用keil芯片需要安装灵活配置软件包 (FSP),这个可以从官网处获得setup_fsp_v4_6_0_e2s_v2023-07.exe

image.png  

安装过程比较顺利,建立项目的过程

image.png  

我习惯keil就使用了,还有就是开发板FPB-RA6E2

image.png  

项目类型选择Non-TrustZone类型,后面带操作系统ThreadX系统。生成代码用keil打开既可以。

image.png  

看到jlink连接开发板成功,及表明可以下载了。主要的代码在blinky_thread.C文件中,

#include "blinky_thread.h"

extern bsp_leds_t g_bsp_leds;

/* Blinky Thread entry function */
void blinky_thread_entry (void)
{
    /* LED type structure */
    bsp_leds_t leds = g_bsp_leds;

    /* If this board has no LEDs then trap here */
    if (0 == leds.led_count)
    {
        while (1)
        {
            ;                          // There are no LEDs on this board
        }
    }

    /* Holds level to set for pins */
    bsp_io_level_t pin_level = BSP_IO_LEVEL_LOW;

    while (1)
    {
        /* Enable access to the PFS registers. If using r_ioport module then register protection is automatically
         * handled. This code uses BSP IO functions to show how it is used.
         */
        R_BSP_PinAccessEnable();

        /* Update all board LEDs */
        for (uint32_t i = 0; i < leds.led_count; i++)
        {
            /* Get pin to toggle */
            uint32_t pin = leds.p_leds[i];

            /* Write to this pin */
            R_BSP_PinWrite((bsp_io_port_pin_t) pin, pin_level);
        }

        /* Protect PFS registers */
        R_BSP_PinAccessDisable();

        /* Toggle level for next write */
        if (BSP_IO_LEVEL_LOW == pin_level)
        {
            pin_level = BSP_IO_LEVEL_HIGH;
        }
        else
        {
            pin_level = BSP_IO_LEVEL_LOW;
        }

        tx_thread_sleep(TX_TIMER_TICKS_PER_SECOND);
    }
}

代码不是很复杂,将初始化好的GPIO放到leds数组中,

/** Array of LED IOPORT pins. */
static const uint16_t g_bsp_prv_leds[] =
{
    (uint16_t) BSP_IO_PORT_02_PIN_07,  ///< LED1
    (uint16_t) BSP_IO_PORT_02_PIN_06,  ///< LED2
};

然后循环程序,将leds中的GPIO状态翻转,然后任务休眠

tx_thread_sleep(TX_TIMER_TICKS_PER_SECOND);

指定时间。看来大部分的公司芯片都在支持treadx系统了。

总结:

本次测试的重点是如何搭建RA6E2的开发环境,还有TreadX系统的测试。瑞萨给的代码还是比较简洁的,而且TreadX系统的性能也很不错,随着MCU主频的升高操作性应该不是性能的瓶颈。

 

 

回复评论 (4)

请问大佬如何区分镀金和无铅工艺呢?


点赞  2023-10-1 18:05
引用: EPTmachine 发表于 2023-10-1 18:05 请问大佬如何区分镀金和无铅工艺呢?

PCB焊点的颜色,镀金的焊点比较亮,有铅工业的焊点发灰,无铅的焊点比较亮。

点赞  2023-10-1 19:18

虽然没有镀金工艺,但板子能做到无铅工艺也是够意思了

 

点赞  2023-10-2 09:29

羡慕一下

曾经有一个机会我也可以拥有这块开发板

点赞  2023-10-2 09:43
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复