firefire666

  • 2024-12-16
  • 回复了主题帖: 【2024 DigiKey 创意大赛】家庭环境检测器-完成贴

    创意不错,实用性不强。 好歹加个空气质量检测啊

  • 2024-12-15
  • 加入了学习《Follow me 第二季第3期任务EK-RA6M5开发板任务完成》,观看 Follow me 第二季第3期任务EK-RA6M5开发板任务完成

  • 加入了学习《Follow me 第二季第3期任务EK-RA6M5开发板任务完成》,观看 Follow me 第二季第3期任务EK-RA6M5开发板任务完成

  • 上传了资料: Follow me 第二季第3期任务EK-RA6M5开发板任务完成

  • 发表了主题帖: 【Follow me第二季第3期】Renesas开发套件EK-RA6M5 任务提交和问题记录

    本帖最后由 firefire666 于 2024-12-15 21:43 编辑 很高兴能参与电子工程世界论坛https://bbs.eeworld.com.cn/和得捷DigiKey联合推出的【Follow me第二季第3期】活动。 通过老师的讲解,快速上手熟悉瑞萨renesas这款芯片的特点,熟悉e2 studio的开发环境,收获巨大。 物料展示 开箱大礼包很是规整,比较明显的区别就是包装全是环保的,各种纸结构,连填充料也是纸张和裁割的垫纸。塑料包装很少,除了开发板用了一个防静电袋。 物件一共包括开发板,两条micro USB转type A连接线(区别为type A端分别是公头、母头),一根网线。 开发调试中,下载调试和运行查看串口使用的是开发板上两个不同的micro USB插口,需要经常插拔板上插口,为了方便和开发板安全,板上两接口分别独立连线接用比较好,最好再自备一条micro USB转type A公头线使用。 活动介绍中的开发板是这个样子的。实际一致。只是没想到这个简单的芯片竟然会有这么大的开发板(大约是10cm*20cm)。不愧是大牌出名! 本期任务一共有四个, 入门任务:搭建环境,下载调试示例程序,Blink,按键; 基础任务:quad-spi flash和octo-spi flash配置及读写速度测试;DAC配置生成波形及性能测试; 进阶任务:示例程序中新增命令打印信息; 扩展任务:设计一个类似信号发生器功能的例程。可在示例程序上修改。通过命令或按键,设置DAC输出波形,可通过flash存储历史波形等信息。 因为示波器无法外用,扩展任务未能完成。 前面3个基本任务,主打的思路就是跟着老师学习快速跑通,剩下的就是沉下心学习开发了。不得不说,演示老师的讲解还是很到位的,瑞萨家的IDE开发环境也是功能强大很容易上手的。特别喜欢它家的各种操作小技巧,有点发现小彩蛋的感觉。假如有人记笔记的话, 老师起码得讲了有一二十条操作技巧了。 任务进行过程 入门任务:搭建环境,下载调试示例程序,Blink,按键 对于一个开发板来说,开发者最大的想法可能就是要快速容易的上手。这里做的还是不错的。 在活动首页中https://www.eeworld.com.cn/huodong/digikey_follow_me_2024_03/,下载了FSP & e2 studio 开发环境、FSP例程、快速入门指南 、EK-RA6M5用户手册、RA6M5系列MCU数据手册,就是简单的一路next安装就行了。 也没多少需要注意的,只是其中,360安全卫士得停用了,后面IDE使用中也是。还有,Github严重的水土不服,前后一共连接了五六回,只有某天半夜突然稳定好用了打开了下载下来,后期采用此开发板进行项目的话,一定要考虑本土环境安装包的可靠性、一致性。 按演示导入例程工程,编译下载到开发板,再按键调试就成。这就是一个熟悉开发板和开发IDE程序的过程。开发板上提供了两个用户按钮,程序中都用到了,一个是调节指示灯亮度,程序中用调节PWM波形占空比来实现,一个是调节指示灯闪烁,程序中就是调节每次指示灯熄灭到下次点亮的延时。 演示中是在区间中增加了一个值,两个按钮分别由3个状态增加到4个状态。作为一个拥有不少测试经验的开发,本来准备在取值区间之前增加一个选项值,就是在1Hz前增加一个0.5Hz的,看看会不会导致出什么有意思的结果来。结果去实现代码发现,代码中涉及的函数参数类型不是uint32_t就是uint8_t,动起来就也是个大工程了,果断的弃了。 那就增加了中间值的选项,20%占空比的和2Hz的按钮选项。 common_init.h #define LED_INTENSITY_10 (10) /* 10 percent */ #define LED_INTENSITY_20 (20) /* 20 percent */ #define LED_INTENSITY_50 (50) /* 50 percent */ #define LED_INTENSITY_90 (90) /* 90 percent */ #define BLINK_FREQ_1HZ (60000000) /* 1HZ */ #define BLINK_FREQ_2HZ (30000000) /* 2HZ */ #define BLINK_FREQ_5HZ (12000000) /* 5HZ */ #define BLINK_FREQ_10HZ (6000000) /* 10HZ */ board_mon_thread_entry.c uint32_t g_pwm_dcs[4] = { LED_INTENSITY_10, LED_INTENSITY_20, LED_INTENSITY_50, LED_INTENSITY_90 }; uint32_t g_pwm_rates[4] = { BLINK_FREQ_1HZ, BLINK_FREQ_2HZ, BLINK_FREQ_5HZ, BLINK_FREQ_10HZ }; uint8_t g_pwm_dcs_data[] = { 10, 20, 50, 90 }; uint8_t g_pwm_rates_data[] = { 1, 2, 5, 10 }; 调试中确实在按键时,调试界面的表达式监测窗口,对应的变量值从0-3循环变化了,指示灯闪烁区别也能明显察觉。 最初只是0-2循环,应该是有问题的,然后查了一下,发现是数值循环处理的% 3没改,改成% 4就按预期运行了。 流程图: 基础任务:quad-spi flash和octo-spi flash配置及读写速度测试;DAC配置生成波形及性能测试; QSPI和OSPI的配置基本没动,快速过了一下例程的代码,涉及到flash读写的,主打就是一个过程复杂。直接用例程写好的,输入个32K的选项运行看了一下结果。写速度基本是2倍,读的看不出来啥情况,后面再研究一下原因了。 流程图: DAC的配置任务,老师其实讲解的很详细,包括中断、PIN的配置使能,使用开发助手引入回调函数。这里是很重要的,干货满满! 照着演示加入了DAC输出正弦波代码,但可惜不能用示波器,看不到可爱的波形了。以这款开发板的资源,估计也不需要使用存储数组方式进行正弦函数算法性能优化了。 流程图: 进阶任务:示例程序中新增命令打印信息; 这个任务是很简单的,主要就是调用print_to_console()函数输出到终端,修改menu_main.c,menu_kis.c里面内容就行了。 偷了个懒,复制了kis_display_menu(void)函数实现,删除了大部分,简单的打了一段文字就差不多了。但是,没想到也出了点小故障,后面也是解决了。 再来看看一下使用和编程中的遇到的问题和解决 GitHub获取问题,不多说了,开发狗的痛 安装、使用中都不要开360,其它的安全软件不知道 用户手册上说的是J11。废了很大劲找到了,但1-2-3是怎么标记,怎么算连接的,就完全没找到了,只能寄希望开发板是出厂装配稳定可靠的了。这一点对于一个开发板上手快速需求来说,其实是不合适的。 开启IDE的Terminal后无响应 刚开始搭建环境后连接调试,e2直接程序未响应了,杀掉以后再用依然如此。后面偶然插拔了USB线才解决。大概率是建立串口连接通信持续失败造成的。 Terminal窗口显示 按键任务里,在IDE里面看串口Kit information显示时,温度数据重复占了两行,后面的指示灯亮度和占空比数值都下移了,跟前面的说明信息对应不上,开始以为时代码哪出错了,又怀疑串口设置错误,结果都没解决。后面把Terminal窗口点成最大就好了,窗口改回来一样没问题。问题是解决了,但是没想通。 修改不全的打印代码显示 新增命令打印任务里,为了偷懒,就简单拷贝kit information的函数代码,删除了绝大部分,只直接用了个打印“day day good”的信息的处理,结果切换菜单后除了期望的结果,还有不断刷新的温度信息。快速排查了一下,里面有一段区域信息保护的代码,注释掉就好了,这段代码挺有意思了,需要详读了。 #if 0 /* provide small delay so board_status should be up to date */ vTaskDelay (s_ticks_to_wait); xEventGroupSetBits (g_update_console_event, STATUS_DISPLAY_MENU_KIS); #endif 工程编译中hal_data.h文件缺失 然后就是后面导入OSPI例程,编译工程,直接就报错了。开始时差点就懵 了。又看了一下错误信息的含义,HAL的词义代表这似乎是个设备层文件,以我250个月的开发经验灵光一闪,点了工程里的配置文件configuration.xml,然后它估计就自动生成了,然后再编译就过了! 项目总结 在这次活动中,照着演示老师的快速跑通了程序,熟悉了开发板和开发环境,收获很大。后面有时间还是要把其它的例程都跑通理解的。希望可以更努力的参与活动,能对社区论坛也有点点的贡献。 视频 https://training.eeworld.com.cn/video/41971 https://training.eeworld.com.cn/video/41972 工程源码包 https://download.eeworld.com.cn/detail/firefire666/635248    

  • 加入了学习《FollowMe 第二季:3 - EK_RA6M5 开发板入门》,观看 EK-RA6M5 开发板入门

最近访客

< 1/1 >

统计信息

已有1人来访过

  • 芯积分:20
  • 好友:--
  • 主题:1
  • 回复:1

留言

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


现在还没有留言