利用瑞萨RA0E1开发板实现雷达人体感应功能

描述

内容来自:嘉立创社区

背景

非常有幸参与立创商城举办的测评活动,瑞萨电子作为全球领先的微控制器供应商,推出了基于Arm Cortex-M23内核的RA0E1系列微控制器,以其高性能、低功耗、高性价比等优势,在智能家居、工业控制、消费电子等领域展现出广阔的应用前景。手头正好有一个雷达模块,想着正好做一个监测是否有人的小玩意。

RA0E1方框图

瑞萨电子

RA0E1特性

32MHz Arm Cortex-M23内核

高达64KB闪存和12KB SRAM 

1KB数据闪存(100,000次编程/擦除 (P/E) 周期)

16引脚和32引脚封装选项

1.6V至5.5V的宽电压范围

TAU(16位通用PWM定时器)

TML32(32位间隔定时器)

实时时钟

12位模数转换器

温度传感器

SAU(UART、简单SPI、简单 I2C)

UART

I2C总线

随机数发生器

安全功能

+-1%高精度、高速片上振荡器

灵活的电源架构,具有快速唤醒功能

HAL驱动器代码

支持Arm生态系统和瑞萨电子原创开发工具

方法说明

通过串口将开发板与雷达模块连接,在有物体活动时,雷达模块就会发送串口数据,开发板在接收到串口数据后就会点亮板载的LED灯,如果8s内没有物体活动,LED灯熄灭。

系统框图

瑞萨电子

代码介绍

左右滑动查看完整内容

 

void hal_entry(void)
{
    /* TODO: add your own code here */
    R_TAU_Open(&g_timer0_ctrl, &g_timer0_cfg);
    R_TAU_Start(&g_timer0_ctrl);
    R_SAU_UART_Open(&g_uart0_ctrl,&g_uart0_cfg);
#if BSP_TZ_SECURE_BUILD
    /* Enter non-secure code */
    R_BSP_NonSecureEnter();
#endif
}
unsigned int count;
void g_timer0_callback(timer_callback_args_t * p_args)
{
    count++;
    if(count>=8000)
    {
        R_IOPORT_PinWrite(&IOPORT_CFG_CTRL,BSP_IO_PORT_01_PIN_12,0);
        count = 0;
    }
  
}


void uart0_callback(uart_callback_args_t * p_args)
{
    R_TAU_Reset(&g_timer0_ctrl);
    count = 0;
    R_IOPORT_PinWrite(&IOPORT_CFG_CTRL,BSP_IO_PORT_01_PIN_12,1);


}
void hal_entry(void)
{
    /* TODO: add your own code here */
    R_TAU_Open(&g_timer0_ctrl, &g_timer0_cfg);
    R_TAU_Start(&g_timer0_ctrl);
    R_SAU_UART_Open(&g_uart0_ctrl,&g_uart0_cfg);
#if BSP_TZ_SECURE_BUILD
    /* Enter non-secure code */
    R_BSP_NonSecureEnter();
#endif
}
unsigned int count;
void g_timer0_callback(timer_callback_args_t * p_args)
{
    count++;
    if(count>=8000)
    {
        R_IOPORT_PinWrite(&IOPORT_CFG_CTRL,BSP_IO_PORT_01_PIN_12,0);
        count = 0;
    }
  
}


void uart0_callback(uart_callback_args_t * p_args)
{
    R_TAU_Reset(&g_timer0_ctrl);
    count = 0;
    R_IOPORT_PinWrite(&IOPORT_CFG_CTRL,BSP_IO_PORT_01_PIN_12,1);


}

 

代码比较简单,在主函数中,初始化串口和定时器,在1ms的定时器中断中计数,当计数值超过8000,即延时8s后,清空计数值并关闭LED灯。在串口中断中,初始化定时器、清空计数值并打开LED灯。

结果

瑞萨电子

在有物体活动时,led就会亮。

演示

心得

在本次测评中,我利用RA0E1开发板实现了一个简单的雷达人体感应功能。通过串口与雷达模块通信,开发板能够实时检测人体活动,并控制LED灯的状态。整个系统运行稳定,响应迅速,通过立创dap调试工具可以观察到开发板正常工作时的电流仅为4.5ma左右,充分体现了RA0E1系列微控制器的高性能和低功耗优势。

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分