CoderX9527

  • 2024-11-20
  • 回复了主题帖: 有奖直播 | 报名STM32全球线上峰会,了解重磅新品!

    报名,报名

  • 2024-11-15
  • 加入了学习《NuttX Workshop 2024》,观看 NuttX Memory Debug tools

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

  • 2024-11-14
  • 回复了主题帖: DIY了一台无人机,用全志T113芯片

    为大佬点赞

  • 回复了主题帖: 用开发板本身的板载开发工具 ,keil能够连接上开发板,读到芯片型号,也可以正常编...

    没有安装板级支持包 DFP ,又或者没有安装烧录算法 FLM 文件。

  • 2024-11-08
  • 发表了主题帖: FM2-3瑞萨RA6M5开箱

    背景 第一次参加 EEWORLD 和 DigiKey 联合举办的 【Follow Me 第二季第三期】活动,入围后灰常激动,立刻下单,接下来就是漫长的等待快递环节。 收到快递后迫不及待的打开,以下就是此板卡的靓照。 得捷的外包装很严实 拆箱 大盒子打开有三样东西: 物品清单 EK-RA6M5 套件 纸盒子填充物 EK-RA6M5 正面靓照 套件清单 蓝色板卡 EK-RA6M5【不得不说主芯片面积真的大】 三根线,分别是 Micro USB device 线;Micro USB host 线;网线; 板卡正面 板卡背面 出厂程序演示 先确保 J12 的 2-3 连接在一起,并且 J15 短接了; 使用 Micro USB 线一头接电脑,一头接板卡上的 J11 即 micro-AB USB Full Speed 端口; 上电,电源指示灯 LED4 亮起; 打开串口工具,找到电脑上新扫描出来的串口,例如我的电脑串口是 COM63,串口工具设置波特率 115200; 如下的测试我并没有插网线。 串口欢迎界面 1进入 Kit Information 此页面展示了板卡的一些信息,包括 MCU 温度信息,摄氏度为 29.47°C. 按键交互 按键SW2改变蓝色LED1闪烁频率 按键SW1改变蓝色LED1闪烁亮度 上电后 LED1 默认闪烁频率 1Hz,闪烁的亮度为10%。可以通过 SW2 改变其频率, SW1 改变其亮度。 2进入 Next Steps 此页面展示 EK-RA6M5 官方的资源链接,如文档、论坛、支持等。 疑问 为什么我的板卡串口只有两个菜单选项,但是官方的 ek-ra6m5-quick-start-guide.pdf 却有6个菜单选项呢?是不是烧的固件版本不同?

  • 发表了日志: FM2-3瑞萨RA6M5开箱

  • 2024-11-05
  • 回复了主题帖: 【实战练手】解锁高性能、近500元的【EK-RA6M5】,得捷Follow me第二季第3期报名中

    直播时间还没定吗?

  • 回复了主题帖: 《CMake 构建实战-项目开发卷》实战分享4—基于onnxruntime的手写数字识别库

    #聊一聊# 为什么0/9 两张图片识别失败呢?

  • 发表了主题帖: 《CMake 构建实战-项目开发卷》实战分享4—基于onnxruntime的手写数字识别库

    本帖最后由 CoderX9527 于 2024-11-5 17:02 编辑   简介 这是本书的最后一个章节,融合前面模块、库搜寻、调用第三方库的知识,并基于 ONNX runtime 写一个手写数字识别的命令行工具。 ONNX runtime 安装 ONNX runtime 的官方地址如下 https://github.com/microsoft/onnxruntime ONNX Runtime 是一种跨平台的推理和训练机器学习加速器。通过使用 ONNX runtime 进行推理,可以实现更快的客户体验并降低陈本,并支持诸如 PyTorch、TensorFlow/Keras 等深度学习框架以及诸如 sckit-learn、LightGBM 和 XGBoost 等经典机器学习库。 ONNX Runtime 兼容不同的硬件、驱动程序和操作系统,并利用使用的硬件加速器和图形优化与转换来提供最佳性能。 安装并检验库(最新版本失败,低版本成功) 这里下载当前最新的预编译包 onnxruntime-linux-x64-1.20.0.tgz,来源于 https://github.com/microsoft/onnxruntime/releases 下载适用于 linux-x64 平台的压缩包,并解压到如下目录: ch009 目录下编译失败: 应该和 c++ 版本与编译有关。暂时不折腾了。 低版本编译成功 下载和作者一样的 onnxruntime-linux-x64-1.10.0.tgz ,解压到对应目录。 运行提示 Load model failed,符合书本上的描述。 zlib 库的编译和安装 zlib 的 github 链接 https://github.com/madler/zlib 编译 在 zlib 源码路径中新建 build-release 目录,进入,然后 cmake 配置并开始编译。 mkdir build-release cmake -DCMAKE_BUILD_TYPE=Release .. cmake --build . –config Release 安装 cmake --install . 失败,需要以管理员权限安装 sudo cmake --install . 安装成功 libpng 库的编译和安装 仓库地址:https://github.com/pnggroup/libpng 编译 在源码目录中新建一个 build-release 目录,在此目录中编译 cmake -DCMAKE_BUILD_TYPE=Release .. cmake --build . –-config Release 安装 cmake --install . 安装失败,需要管理员权限 sudo cmake --install . 安装成功 手写库示例 此目录程序是一个调用手写数字识别库的应用程序,依赖上面三个库。 CMake 目录程序 设置工程属性 以上命令设置 CMake 目录程序的工程属性。 查找软件包 onnxruntime 这里指定 onnxruntime 版本为 1.10.0 用户可以根据下载的实际版本进行修改。 第17行查找 onnxruntime 包并指定版本号为 1.10.实际会调用 cmake/Findonnxruntime.cmake 文件。它的内容如下: 最终设置 onnxruntime_INCLUDE_DIR 、onnxruntime_LIBRARIES 两个变量。 查找软件包 libpng 在 CMakeLists.txt 的第18行。 它实际会调用 cmake/Findlibpng.cmake 文件,它的内容如下: 注意,它会继续在系统中找 libpng16.cmake 模块文件,即此文件是对 libpng16.cmake 文件的封装,导出了 libpng_LIBRARY 和 libpng_INCLUDE_DIR 两个变量。 注意,libpng16.cmake 文件路径在 /usr/local/lib/libpng/libpng16.cmake 。是上面libpng 安装的。 生成出错 出错,提示 png_shared 接口目标包含 ZLIB:ZLIB 没有找到。 ZLIB:ZLIB 解决办法 修改 /usr/local/lib/libpng/libpng16.cmake 文件 以管理员权限打开此文件,屏蔽包含 ZLIB:ZLIB 的两个语句,如下图所示: cmake 配置并编译,成功 mkdir build-debug cd build-debug cmake -DCMAKE_BUILD_TYPE=Debug .. cmake --build . --config Debug 运行结果—有对有错 命令行运行 ./recognize ../models/mnist.onnx ../2.png 分别识别 2.png/3.png/4.png 均识别成功。 这里的 2.png/3.png/4.png 均是作者提供的原始图片。 以下是我提供的图片 8.png/9.png/0.png,图片尺寸和2.png 相同,111x131 像素大小。 运行结果如下:0/8 识别正确,9 识别错误(识别为1)。 又提供了一张粗体的 9_bold.png 图片,识别结果还是出错,识别成了7.

  • 发表了日志: 《CMake 构建实战-项目开发卷》实战分享4—基于onnxruntime的手写数字识别库

  • 回复了主题帖: 瑞萨e2studio如何去除汉化

    秦天qintian0303 发表于 2024-11-2 23:31 感觉中文界面也还可以啊,e2的汉化还是比较彻底的  我安装的,界面汉化不完整,中文、英文混搭。所以卸载了中文。

  • 2024-11-02
  • 回复了主题帖: 【得捷电子Follow me第2期】ESP32-S3之基于Clion+PlatformIO+Arduino环境搭建和使用

    CoderX9527 发表于 2024-11-2 12:04 老兄,我的也是重启一直进入 DFU 模式,怎么办 啊? 我用 platformio 开发环境,下载程序失败呢。。。 ... 终于在 adafruit 官网找到了资料: 先按住 boot 键再按下reset 键;再依次释放 boot 键、reset 键。这样就能进入 esp32 rom bootloader, platformio IDE 可以下载了。   注意下载串口和打印日志的串口不同。

  • 回复了主题帖: 【得捷电子Follow me第2期】ESP32-S3之基于Clion+PlatformIO+Arduino环境搭建和使用

    老兄,我的也是重启一直进入 DFU 模式,怎么办 啊? 我用 platformio 开发环境,下载程序失败呢。。。   第一次玩 esp32,网上没找到资料呢。

  • 2024-11-01
  • 回复了主题帖: 【2024 DigiKey创意大赛】基于ESP32 S3的智能骑行头盔

    有意思,期待成品

  • 回复了主题帖: 瑞萨e2studio如何去除汉化

    问题是一开始安装选择了中文。安装后设置里没找到改语言的设置选项。

  • 发表了主题帖: 瑞萨e2studio如何去除汉化

    # 背景 安装e2 studio时选择了中文语言,但使用之后发现汉化不完全,而且某些地方汉化词不达意。想把汉化去掉,但是网络并没有多少资料,而且过时了,不生效。经过我一番摸索,终于找到了法门。 # 卸载汉化过程 ## 卸载插件入口 从菜单栏 **Help** --> **About e2 studio** 进入。 ## 进入安装细节 在弹出的界面点击 **Installation Details** ## 搜索中文插件 搜索 ch 开头的插件,找到三个,全部卸载。 ## 卸载完成重启 三个都卸载完成后,再点击重启 # 英文界面 完美,现在是全英文的界面,除了这里有一个菜单栏是中文的。

  • 2024-10-30
  • 发表了主题帖: 《CMake 构建实战-项目开发卷》实战分享3—从零开始给MCU项目增加CMake支持

      背景 我在芯片原厂做BSP开发,公司的项目原本只支持Keil MDK AC6编译器,领导让我增加个GCC编译器支持。当前我先增加了第一个版本的 CMake + GCC 编译支持,并且在 VS Code 中可以调用 J-Link 调试器进行调试,后续再完善 CMake 目录结构。 搭建嵌入式MCU 编译环境 安装软件清单 GCC 编译器,这里以 2021.10 版本为例; CMake 工具,这里以 v3.28.1 为例; Ninja 或者 Make 工具,这里安装 ninja 绿色版本; JLink V752d,烧写程序、调试程序 安装 GCC 编译器 文件 gcc-arm-none-eabi-10.3-2021.10-win32.exe 可以从 ARM Developer 官网下载,地址如下: https://developer.arm.com/downloads/-/gnu-rm/10-3-2021-10 下载后双击安装,一路 NEXT,安装到 “C:\Program Files (x86)\GNU Arm Embedded Toolchain\10 2021.10\bin” 目录下。安装结束打开一个新的命令行窗口输入 “arm-none-eabi-gcc.exe --version” 检查是否看到正确的版本信息。 如果没有,就把此目录添加到系统环境变量 PATH 中。(后续各个软件也需要把安装路径添加到 PATH 变量中) 安装 CMake 工具 从 CMake 官网下载最新的版本,我这里以 3.28.1 版本为例。 点击安装,一路 NEXT 即可。 安装 Ninja 工具 ninja 是一个绿色软件,github 官方释放地址为:https://github.com/ninja-build/ninja/releases 它的作用和 make 一样,区别是 make 读取 Makefile 文件调用编译器命令,而 ninja 读取 build.ninja 文件调用编译器命令,而且 ninja 没有隐含规则,编译速度更快。 解压 ninja 到某个磁盘,然后添加到系统 PATH 路径,打开新的命令行输入 “ninja --version” 检查版本。 安装 JLink V752d 从 Segger 官网下载,点击安装一路 NEXT 即可。 编写 CMake 编写 CMake 目录程序,围绕着以下几点: 编译器配置:设定编译工具链路径,二进制文件和库文件输出路径; 针对处理器的编译选项:即C编译选项,针对处理器的宏定义,调试选项,链接脚本路径; 二进制目标文件的规则,库文件的导入导出:一般要指定可执行文件依赖源文件、头文件、库文件的路径; 编译后的elf/bin文件处理:即 elf/axf 如何加工生成 bin 文件,如何生成反汇编文件,以及调用外部工具处理 bin 文件; 这里直接列出工程修改后的大致结构: cmake 目录,存放 cmake 模块文件; test 目录,有一个 CMakeLists.txt 文件,实际上它继续添加下面的 testcase 目录,指导包含可执行文件所在目录; 链接脚本,这里有两个链接脚本,区分运行在Flash和 RAM 版本; CMakeLists.txt 主目录文件,工程入口 cmake 目录中的模块文件 简单介绍此目录中的4个文件。 functions.cmake 定义了一些 cmake 通用函数,例如: gcc_compiler_flags.cmake 定义了编译选项,包括针对处理器的选项,通用选项、调试选项以及链接器选项。下图仅截取一部分: gcc_custom_build.cmake 定义了一些自定义目标,用来处理 axf/elf 文件到 bin 文件的转换。 这个文件用到了生成器语法和 CMAKE 命令(跨平台),比写 Makefile 方便多了。 gcc_toolchain_setup.cmake 此文件定义了编译工具链路径。 主目录 CMakeLists.txt 文件 此文件太长了,就不截图了。大致可以分为以下几个部分: 导入 cmake/ 目录下的模块; 调用 add_executable() 新增一个二进制构建目标,但是还没有增加源文件路径; 调用 include_directories() 为工程设置全局的头文件搜索路径; 调用 add_subdirectory(test) 把子目录加进来; 调用 include(cmake/gcc_custom_build.cmake) 设定编译后的 elf/axf 文件处理规则; 可执行文件指定源文件 前面说了顶层目录的 CMakeLists.txt 文件仅添加了可执行文件目标,但是没有指定源文件。通过调用 add_subdirectory() 层层依赖,最终到了我们的示例工程,文件内容如下: 使用 file(GLOB_RECURSE) 命令搜索当前目录下的C源程序添加到 USER_APP_SRCS 变量中; 设置 APP_DEP_SRCS 变量,加入GCC 版本的启动文件、system 文件以及标准输入输出重定向文件; 调用 target_sources() 命令为最终的可执行目标设置源文件路径。 编译后的动作 见上面的 gcc_custom_build.cmake 文件,调用编译工具链中的命令把 elf/axf 文件转换为 hex/bin 文件,并生成反汇编文件。 调试支持 VS Code 安装 Cortex-Debug 插件。 然后先点击(1)处的 Run and Debug 按钮,在点击(2)处的齿轮,配置调试选项。 在打开的 launch.json 文件输入以下内容,配置调试文件为 RADAR_CHIPX.elf 文件,调试器类型为 jlink,调试器接口为 swd,并配置进入调试时要执行的 JLink 命令。 运行 JLink 链接电脑和开发板之后,按 F5 键开始调试。 刚进入调试模式会弹出 TERMINAL 窗口,打印 JLink 调试器加载信息 然后 DEBUG CONSOLE 窗口会打印 JLink 调试器执行命令的信息 最后成功进入 main() 函数并打印信息 总结 编写 CMake 程序,主要是指定源文件、头文件、库文件路径,设置编译器选项、链接器参数等。当然还需要注意链接脚本设置的启动文件。 这个项目是为了赶时间所以CMake程序写的潦草,后期可以参考我的第一个分享 QCC74x SDK 的写法虽然复杂,但是每个example 都可以独立进入编译,而我这个项目需要修改顶层目录中的 CMakeLists.txt 文件,修改一个全局变量,有点麻烦。 多学习其他SDK的CMake写法,从实战中收获新知识。    

  • 回复了主题帖: 【2024 DigiKey 创意大赛】teensy4.1开发板学习

    学习了,多谢分享

  • 2024-10-29
  • 回复了主题帖: 【2024 DigiKey 创意大赛】基于Raspberry Pi 5的植物生长监管系统—4、功能&接线

    点赞

最近访客

< 1/2 >

统计信息

已有21人来访过

  • 芯积分:149
  • 好友:--
  • 主题:10
  • 回复:41

留言

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


现在还没有留言