swzswz

  • 2025-01-14
  • 加入了学习《Follow me第二季第3期 任务汇总》,观看 Follow me第二季第3期 任务汇总

  • 2025-01-13
  • 回复了主题帖: 【Follow me第二季第3期】扩展任务:控制DAC输出

    Jacktang 发表于 2025-1-11 09:58 当调用没问题之后,就可以直接用其打印输出的值。 打印输出的值正确吧 对的,你可以试试

  • 2025-01-09
  • 发表了主题帖: 【Follow me第二季第3期】任务汇总

    本帖最后由 swzswz 于 2025-1-20 23:59 编辑 从收到板子到今天终于完成了所有任务,Follow Me也参加了好几期,真的是很好的活动。本期的EK-REA4M6这块板子,总的来说真的很不错,集成度非常高,各种传感器应有尽有,确实配称之为Playground,最后感谢社区和得捷提供的机会,期待后续活动再能出现一些有意思的板子   物料展示 任务成果展示 入门任务:【Follow me第二季第3期】 EK-RA6M5开发板开箱以及预编译程序测试 对应论坛帖:【Follow me第二季第3期】 EK-RA6M5开发板开箱以及预编译程序测试 https://bbs.eeworld.com.cn/thread-1298101-1-1.html 按照开发板手册,在ek-ra6m5-quick-start这个文件可以找到详细的说明。 1.首先按RESET按键,也即开发板的S3按键,这时三个灯会发生变化。 LED1按照1HZ的频率点亮,并且亮度为10%; LED2绿灯满亮度,不变。 LED3红灯熄灭。 2.按下按键S1,LED1的亮度会不断增加,在10%到50%到90%之间循环。 3.按下按键S2,LED1的闪烁频率在1HZ到5HZ到10HZ之间不断循环。 以下是具体的循环过程: [localvideo]36a1bfb818cc218b53ac55ccb16d838e[/localvideo] 基础任务:【Follow me第二季第3期】读写速度测试 对应论坛帖:【Follow me第二季第3期】 读写速度测试 https://bbs.eeworld.com.cn/thread-1301824-1-1.html 1.环境搭建: 根据quick-start-guide指导手册,下载好e2 studio和jlink驱动。具体按照往上即可进行。这里不再详细说明。其中安装完成IDE后,还必须安装fsp,即集成开发环境包。 2.项目导入: 按照手册,首先设置一个工作路径,再从github上下载EK-RA6M5的项目程序,将其复制到工作目录当中去。点击文件-选择导入-选择已经存在的项目-选择quick-start-guide项目,导入成功,在e2studio界面上出现工程。如下图。 3.下载工程并测试: 当出现编译成功之后,便可以利用调试器进行下载,这里默认选择jlink进行调试,注意提前下载好jlink并安装。 通过IDE上的terminal打开一个串口。 进阶任务:【Follow me第二季第3期】 示例程序中新增命令打印 对应论坛帖:【Follow me第二季第3期】 示例程序中新增命令打印 https://bbs.eeworld.com.cn/thread-1301866-1-1.html 参考其他大佬的的帖子,我受益匪浅,这个打印信息就是在主函数中增加一个打印功能。这里增加的是一个hello_world打印函数,直接在串口中去打印hello_world信息。 1.增加hello_world函数功能 这里主要进行hello_world函数的头文件和函数c文件实现。参考其他人的帖子,这里主要在原quick_start_guide项目中增加这个两个函数即可。在源文件中点击新建,可以分别是心啊头文件和c文件的模板。在头文件中定义hello_world函数,在c文件具体定义其功能实现。 头文件: C文件: 2.主函数调用 在主函数中直接进行调用,直接在st_menu_fn_tbl_t s_menu_items调用hello_world函数即可。如下图所示: 注意提前进行头文件包含。在menu_main.c文件中增加一行:#include "menu_text.h"。然后重新编译项目,并下载最终的二进制文件到开发板中去。 3.打开串口测试 打开串口,并进行按键测试,输入2。可以看到打印 2. Hello world! 扩展任务:【Follow me第二季第3期】控制DAC输出 对应论坛帖:【Follow me第二季第3期】 控制DAC输出 https://bbs.eeworld.com.cn/thread-1304047-1-1.html 本项目由于没有示波器,故不能进行演示,而且在默认的样例中给了DAC的工程,这里就详细进行解释。 1.DAC工程目的 该项目使用 ADC 初始化并演示了瑞萨 RA MCU 上的 DAC 模块。用户可以输入允许范围内的 DAC 值(0-4095),转换后的输出将作为 ADC 通道 0 的输入。ADC 输出值打印在 RTT JlinkViewer 上。硬件连接:将 P014(DAC 输出)连接到 P000(ADC 通道 0)。 2.代码解释 主函数实现流程,先设置参考电压电路控制寄存器,即ADC引脚的寄存器,之后校准 RA2A1 板的 ADC,通过adc_start_calibration函数确定ADC返回状态,加入一个判断,对返回的状态进行判断,如果不是错误代码,就进行ADC和DAC初始化,如果没有错误,就可以进行DA的初始值输入,即输入0-4095之间的值,而后在DAC连接的通道会进行数值的波形显示,同时在RTT的终端进行数值显示。 #if (defined BOARD_RA2A1_EK) || (defined BOARD_RA6T2_MCK) /* Set Reference Voltage Circuit Control register */ R_ADC0->VREFAMPCNT |= ((VREFADCG_VALUE) | (VREFADCG_ENABLE)); /* Calibrate the ADC for RA2A1 board */ err = adc_start_calibration (); /* handle error */ if (FSP_SUCCESS != err) { adc_deinit(); dac_deinit(); /* ADC Failure message */ APP_ERR_PRINT("** ADC Calibrate API failed ** \r\n"); APP_ERR_TRAP(err); } #endif 这里分别是ADC和DAC的初始化函数声明,分别调用其API,并对返回状态进行判断。 static void adc_deinit(void) { fsp_err_t err = FSP_SUCCESS; /* Close ADC module */ #if defined (BOARD_RA6T2_MCK) err = R_ADC_B_Close(&g_adc_ctrl); #else err = R_ADC_Close(&g_adc_ctrl); #endif /* Handle error */ if (FSP_SUCCESS != err) { /* ADC Close failure message */ APP_ERR_PRINT("** ADC Close API failed ** \r\n"); } } static void dac_deinit(void) { fsp_err_t err = FSP_SUCCESS; /* Close DAC module */ err = R_DAC_Close(&g_dac_ctrl); /* Handle error */ if (FSP_SUCCESS != err) { /* DAC Close failure message */ APP_ERR_PRINT("** DAC Close API failed ** \r\n"); } } APP_PRINT是其默认的打印函数,当调用没问题之后,就可以直接用其打印输出的值。 这个过程就是全DAC项目的实现流程,由于没有示波器,故不能进行演示。 项目总结           总的来说,在这次活动中,我尝试了EK-REA6M4 板上的各种功能,并将其应用于不同的任务。通过实现不同的功能模块,包括读写速度测试、串口命令打印、以及DAC模块使用的使用,我深入了解了这块板子的多样性和强大功能。通过这些尝试,我对硬件编程有了更全面的理解,对如何利用现有资源进行创意性的实现有了更深的认识。这次项目不仅提升了我在实际操作中的技能,也让我认识到了系统设计中的细节和优化的重要性。每一次的测试和调试都让我获得了宝贵的经验,尤其是在调节和优化过程中学到的实际问题解决技巧。对于未来的活动,我希望能够看到更多有趣和创新的硬件开发板。这将激发硬件爱好者的创意和兴趣,让我们能够在更广泛的应用场景中进行尝试和实现,使得每次活动都充满新鲜感和探索的乐趣。最后再次感谢EEWorld和得捷电子提供的机会,让我们能够深入体验和探索 EK-REA6M4 板的各种功能,期待未来能够继续参与类似的活动,并探索更多有趣的硬件和技术。

  • 2025-01-08
  • 发表了主题帖: 【Follow me第二季第3期】扩展任务:控制DAC输出

    本项目由于没有示波器,故不能进行演示,而且在默认的样例中给了DAC的工程,这里就详细进行解释。 一、DAC工程目的 该项目使用 ADC 初始化并演示了瑞萨 RA MCU 上的 DAC 模块。用户可以输入允许范围内的 DAC 值(0-4095),转换后的输出将作为 ADC 通道 0 的输入。ADC 输出值打印在 RTT JlinkViewer 上。 硬件连接:将 P014(DAC 输出)连接到 P000(ADC 通道 0)。 二、代码解释 主函数实现流程,先设置参考电压电路控制寄存器,即ADC引脚的寄存器,之后校准 RA2A1 板的 ADC,通过adc_start_calibration函数确定ADC返回状态,加入一个判断,对返回的状态进行判断,如果不是错误代码,就进行ADC和DAC初始化,如果没有错误,就可以进行DA的初始值输入,即输入0-4095之间的值,而后在DAC连接的通道会进行数值的波形显示,同时在RTT的终端进行数值显示。 #if (defined BOARD_RA2A1_EK) || (defined BOARD_RA6T2_MCK) /* Set Reference Voltage Circuit Control register */ R_ADC0->VREFAMPCNT |= ((VREFADCG_VALUE) | (VREFADCG_ENABLE)); /* Calibrate the ADC for RA2A1 board */ err = adc_start_calibration (); /* handle error */ if (FSP_SUCCESS != err) { adc_deinit(); dac_deinit(); /* ADC Failure message */ APP_ERR_PRINT("** ADC Calibrate API failed ** \r\n"); APP_ERR_TRAP(err); } #endif 这里分别是ADC和DAC的初始化函数声明,分别调用其API,并对返回状态进行判断。 static void adc_deinit(void) { fsp_err_t err = FSP_SUCCESS; /* Close ADC module */ #if defined (BOARD_RA6T2_MCK) err = R_ADC_B_Close(&g_adc_ctrl); #else err = R_ADC_Close(&g_adc_ctrl); #endif /* Handle error */ if (FSP_SUCCESS != err) { /* ADC Close failure message */ APP_ERR_PRINT("** ADC Close API failed ** \r\n"); } } static void dac_deinit(void) { fsp_err_t err = FSP_SUCCESS; /* Close DAC module */ err = R_DAC_Close(&g_dac_ctrl); /* Handle error */ if (FSP_SUCCESS != err) { /* DAC Close failure message */ APP_ERR_PRINT("** DAC Close API failed ** \r\n"); } } APP_PRINT是其默认的打印函数,当调用没问题之后,就可以直接用其打印输出的值。 这个过程就是全DAC项目的实现流程,由于没有示波器,故不能进行演示。

  • 2024-12-22
  • 回复了主题帖: [Follow me第二季第3期] 进阶任务 示例程序中新增命令打印

    Jacktang 发表于 2024-12-15 09:59 hello_world是第一步会了就开启了 这个函数不是要进行编写呢,没有直接打印hello world这个函数  

  • 2024-12-14
  • 发表了主题帖: [Follow me第二季第3期] 进阶任务 示例程序中新增命令打印

    参考其他大佬的的帖子,我受益匪浅,这个打印信息就是在主函数中增加一个打印功能。这里增加的是一个hello_world打印函数,直接在串口中去打印hello_world信息。   一、增加hello_world函数功能 这里主要进行hello_world函数的头文件和函数c文件实现。参考其他人的帖子,这里主要在原quick_start_guide项目中增加这个两个函数即可。在源文件中点击新建,可以分别是心啊头文件和c文件的模板。在头文件中定义hello_world函数,在c文件具体定义其功能实现。 头文件:   C文件:   二、主函数调用 在主函数中直接进行调用,直接在st_menu_fn_tbl_t s_menu_items调用hello_world函数即可。如下图所示:   注意提前进行头文件包含。在menu_main.c文件中增加一行:#include "menu_text.h"。 然后重新编译项目,并下载最终的二进制文件到开发板中去。 三、打开串口测试 打开串口,并进行按键测试,输入2。可以看到打印 2. Hello world!     至此,本项目到此结束。      

  • 2024-12-13
  • 发表了主题帖: 【Follow me第二季第3期】基础任务:读写速度测试

    一.环境搭建 根据quick-start-guide指导手册,下载好e2 studio和jlink驱动。具体按照往上即可进行。这里不再详细说明。其中安装完成IDE后,还必须安装fsp,即集成开发环境包。   这里是安装包显示界面。 二.项目导入 按照手册,首先设置一个工作路径,再从github上下载EK-RA6M5的项目程序,将其复制到工作目录当中去。点击文件-选择导入-选择已经存在的项目-选择quick-start-guide项目,导入成功,在e2studio界面上出现工程。如下图。   再进行构建编译,即可编译项目。   三.下载工程并测试 当出现编译成功之后,便可以利用调试器进行下载,这里默认选择jlink进行调试,注意提前下载好jlink并安装。 通过IDE上的terminal打开一个串口。   再进行测试,按键4,再按Tab即可以进行测试。   可以看到读写的速度。本例程测试完毕。  

  • 2024-11-24
  • 回复了主题帖: 【Follow me第二季第3期】 EK-RA6M5开发板开箱以及预编译程序测试

    秦天qintian0303 发表于 2024-11-2 23:11 板子看着挺壮实的,准备用什么开发环境开发? 官方推荐的e2进行开发

  • 2024-11-02
  • 发表了主题帖: 【Follow me第二季第3期】 EK-RA6M5开发板开箱以及预编译程序测试

    本帖最后由 swzswz 于 2024-11-2 15:24 编辑 很开心能够参与【Follow me第二季第3期】活动,这期开发板的厂商来自于瑞萨公司,其型号是RA6M5,通过活动页面,了解到这块开发板功能十分强大。 一、开箱 首先通过得捷商城进行下单,大约等个10来天收到了从美国发来的板子、开发板包装精美,有一块开发板、两根USB线、一根网线。   二、预编译程序测试 开发板上默认有四个LED灯亮,其中LED5是电源指示灯,LED4白色、LED2是绿色灯、LED1是渐变的蓝色,一亮一灭。 [localvideo]85601703a6b2be61e1fce6d450b2049e[/localvideo] 按照开发板手册,在ek-ra6m5-quick-start这个文件可以找到详细的说明。 1.首先按RESET按键,也即开发板的S3按键,这时三个灯会发生变化。 LED1按照1HZ的频率点亮,并且亮度为10%; LED2绿灯满亮度,不变。 LED3红灯熄灭。 2.按下按键S1,LED1的亮度会不断增加,在10%到50%到90%之间循环。 3.按下按键S2,LED1的闪烁频率在1HZ到5HZ到10HZ之间不断循环。 以下是具体的循环过程: [localvideo]e3ecd34654a75c9ab37b93992329fa43[/localvideo] 下面是开发板快速入门手册。期待与大家一起学习    

最近访客

< 1/3 >

统计信息

已有49人来访过

  • 芯积分:111
  • 好友:--
  • 主题:29
  • 回复:53

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言