瑞萨电子200MHz Cortex-M33 RA6E2评估板开箱
可以看到这块板子的附件带的是够全的,除了USB线、杜邦线公—母线3根,母—母10根、CAN-FD模块、还有CAN的手册两本,特别让我高兴的是:还有一个大的元件盒。板子上的资源集成了jlink OB仿真器,其它的外设就是led两个、用户按键一个。其它就没有了。USB的接口芯片都没有。
这次板子的做工没有上次RA4E1的好,上次的板子是镀金工艺的,这次就是一般的无铅工艺吧,而且PCB上的布线没有太大变化,有走线出现了裸铜的地方。现在的PCB走线都流行6mil了吗。看来我还停在10mil的时代,看来该提高到8mil了。
这次的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
安装过程比较顺利,建立项目的过程
我习惯keil就使用了,还有就是开发板FPB-RA6E2
项目类型选择Non-TrustZone类型,后面带操作系统ThreadX系统。生成代码用keil打开既可以。
看到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主频的升高操作性应该不是性能的瓶颈。
请问大佬如何区分镀金和无铅工艺呢?
引用: EPTmachine 发表于 2023-10-1 18:05 请问大佬如何区分镀金和无铅工艺呢?
PCB焊点的颜色,镀金的焊点比较亮,有铅工业的焊点发灰,无铅的焊点比较亮。
羡慕一下
曾经有一个机会我也可以拥有这块开发板