- 2024-12-20
-
发表了主题帖:
【MCXN947开发板测评】RT-Thread系统烧录
【MCXN947开发板测评】RT-Thread系统烧录
参考RT-Thread系统文档,实现源码下载及系统烧录,解决编译过程中问题
Step1. 研究板卡信息
研究板卡硬件信息及接口,插电,启动板卡
FRDM-MCXN947 是NXP官方基于 MCXN947 器件的低成本评估板。MCXN947 器件集成了双 Arm Cortex-M33 微控制器和神经处理单元 (NPU)。该板还具有 P3T1755DP I3C 温度传感器、TJA1057GTK/3Z CAN PHY、以太网PHY、SDHC电路(卡槽为DNP)、RGB LED、触摸板、高速USB电路、按钮等 MCU-Link 调试器电路。该板提供 Arduino 扩展、PMOD拓展,MicroBus总线拓展。该板还支持摄像头模块和 NXP 低成本 LCD 模块 PAR-LCD-S035。板载 MCU-Link 调试器基于 LPC55S69 MCU。
开发板外观如下图所示:
https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/tutorial/quick-start/frdm_mcxn947/quick-start?id=%e7%bb%a7%e7%bb%ad%e5%ad%a6%e4%b9%a0
常用 板载资源 如下:
启动板卡后,点亮指示灯
Step2. MDK开发环境
安装MDK-5.41,安装方法可以参考 Keil MDK安装
详细细节如下链接所示:
https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/tutorial/quick-start/keil/keil
Step3. 获取RT-Thread 5.1.0源码
https://github.com/RT-Thread/rt-thread/releases下载源码,在 Assets 中下载压缩包获取最新稳定版代码,本次使用v5.1.0版本。
RT-Thread-5.1.0源码如下所示
文件结构:
Step4. 编译源代码
进入到 rt-thread\bsp\nxp\mcxn\frdm-mcxn947 文件夹中,双击 project.uvprojx 文件,打开 MDK5 工程。按照下图说明,点击相关按钮
下图为具体操作效果
这个显示默认状态是C <default>,解决方案是将Language C: 选c99,图蓝色部分
第一次编译,提示包错误,缺少rt_vsnprintf.c文件
检索网络,下载rt-vsnprintf_full-1.0.0.zip软件包,解压缩并安装到指定位置
再次编译错误解决
Step5. 烧录系统至开发板
Step6. 重启板卡
点击Reset按钮,重启板卡
6.1 串口读数
使用串口读取相关参数,设置波特率115200,停止位1,数据位8和校验位None等参数,实现串口数据读取
6.2 板卡状态
板卡红灯变成了绿灯,呈现周期性闪亮
-
发表了日志:
【MCXN947开发板测评】RT-Thread系统烧录
- 2024-12-17
-
发表了主题帖:
嵌入式工程师AI挑战营RV1106人脸识别+板卡烧录系统(0)
嵌入式工程师AI挑战营RV1106人脸识别+板卡烧录系统(0)
1. 板卡外观特征,可以明显看到芯片上RV1106G3标识,按照下图所示,进行摄像头的连接
结合Luckfox wiki教程,获取板卡硬件特征
https://wiki.luckfox.com/zh/Luckfox-Pico/Luckfox-Pico-RV1106/Luckfox-Pico-Pro-Max/Luckfox-Pico-quick-start
在点亮板卡的基础上,进行镜像烧录。
Step1. 安装DriverAssitant瑞芯微驱动助手v5.12版本:
Step2. 镜像烧录
Step2.1 选择SD卡版本
首先使用SD Card Formatter将SD卡格式化
然后,使用烧录工件软件,选中芯片RV1106型号,点击OK
按照wiki的官方流程执行如下操作:
SD卡烧录仅适用于 Windows 环境下,下载固件库方法:
① 将 SD 卡装在读卡器并连接到电脑,选择 SD 卡工具。
② 在 USB 磁盘下会显示 SD 卡大小,如果未显示重新插拔读卡器。
③ 选择 SD卡启动。
④ 导入启动文件。(注意:启动文件不包括update.img)
⑤点击创建 SD 卡。
这个是我具体操作及结果:重点是把update.img给取消掉
SD卡烧录系统成功
Step2.2 后来发现SD卡刷系统没有SPI FLASH刷机快捷,就放弃了该方法,使用SPI NAND Flash进行烧录系统。
首先,LuckFox Pico Max开发板选择RV1106.
按照wiki方法进行操作:
LuckFox Pico Max 在 Windows下载固件库方法:
① 按住 BOOT 键后连接电脑后,松开 BOOT 键,瑞芯微刷机工具就会显示 MaskRom 设备。
② 加载固件的存放目录,重载 env 文件,勾选所有项。
③ 点击下载。
按照上图流程进行操作,本人操作结果如下:
点击下载按钮,实现SPI NAND Flash烧录成功:
Step3. 配置静态IP
LuckFox Pico Max的USB虚拟网卡具有静态IP地址为172.32.0.93。使用前需要设置RNDIS虚拟网口:
3.1 Windows 安全中心—>防火墙和网络保护—>关闭防火墙
3.2 配置 RNDIS 网卡的静态IP,打开设置—>高级网络设置—>更改适配器选项
3.3 网卡一般是类似这样的名字Remote NDIS based nternet Sharing Device,右键属性
3.4 双击 internet 协议版本(TCP/IPv4),IPV4地址设置为 172.32.0.100,避免和设备地址冲突。
注意:需要把Internet协议版本4(TCP/IPv4)前框给选中:
执行后如下图所示:
Step4. 使用Windows PowerShell访问板卡:
连接:ssh root@172.32.0.93
账号:root
密码:luckfox
静态IP地址:172.32.0.93
输入密码luckfox,系统显示登录成功:
Step4. 使用adb连接板卡
后续需要使用luckfox-config配置,然后测试了adb连接
按照官方文档,执行如下操作:
4.1 下载 ADB 安装包,解压即可使用(戳我下载)。
4.2 右键我的电脑属性—>高级系统设置—>环境变量。
4.3 系统变量—>编辑—>将adb解压路径新建进去。
4.4 保存环境变量
如果系统变量Path中信息太多,可以添加至用户变量Path路径下,只需要系统能够找到相关可执行文件即可。
4.5 执行adb指令
ssh root@172.32.0.93
按Win+R快捷键输入cmd, 打开windows终端,在终端输入adb命令,查看adb相关信息:
仅有一个设备 adb shell
查看adb设备信息:adb devices。通过插拔重新执行查询指令以确认需要连接的设备(如果未识别设备尝试更换Type-c线解决)
使用adb -s XXX shell登录到开发板
Step5. 执行luckfox-config,启动图形化配置界面
点击1,点击回车,进入高级选项配置界面
进入Compatible Devices -> CSI 界面,选中 enable 使能,选中 disable 禁用
选中CSI配置,确保CSI使能
如果有其他 I2C4 引脚被使用,无法配置 CSI ,防止 CSI 配置的使能和禁用影响 I2C4 正在运行的任务。
注意: CSI 配置需要重启后才能生效
进入userdata文件夹,检查是否有rkipc.ini文件
Step6. 使用Windows的VLC播放器,访问开发板摄像头媒体流。
点击媒体==>打开网络串流==>网络,输入rtsp://172.32.0.93/live/0
实时媒体流还可以,图像质量还是可以的,除了响应有点慢,个人觉得其他没啥大的问题。
-
发表了日志:
嵌入式工程师AI挑战营RV1106人脸识别+板卡烧录系统(0)
- 2024-12-16
-
发表了日志:
嵌入式工程师AI挑战营RV1106人脸识别+InsightFace简单应用测试(1)
-
发表了主题帖:
嵌入式工程师AI挑战营RV1106人脸识别+InsightFace简单应用测试(1)
嵌入式工程师AI挑战营RV1106人脸识别+InsightFace简单应用测试(1)
Step1. 在Anaconda3环境下安装InsightFace
使用pip install -U insightface指令安装包及依赖
等待指令操作结束
提示出现错误,分析是依赖版本产生冲突
安装1.24.4版本的numpy。其他方法也进行了测试,但这个1.24.4版本更好解决问题
这个numba是版本问题,就没有解决。
重新测试安装一下,显示没有问题
另一种方案是使用whl文件安装,没有测试
https://pan.baidu.com/link/zhihu/7thmzNuShoiyV2QGhmNv12w2QTVlFDTQUK12==#list/path=%2F
其中,cp310代表Python3.10,cp311代表Python3.11
直接安装whl文件也可以实现insightface安装
Step2 安装onnxruntime
使用pip install onnxruntime指令,如果有gpu,使用 pip install onnruntime-gpu
使用简单示例程序测试安装软件效果
运行程序:
搜索网络发现onnx版本1.17.0,版本产生冲突。选择安装1.16.1版本
再测试程序
数据有效果。
使用官方程序
图片没显示出来,搜了一下,代码有点问题
将insightface/app文件夹下face_analysis.py中第84行和88行的np.int改为int
Step3. 测试效果
使用官方程序,效果如下
Step4. 使用电脑摄像头
使用笔记本摄像头测试,编写测试程序:
提示如下错误
安装opencv-python
成功调用笔记本摄像头
下一步,将两者结合起来,实现对摄像头的人脸识别
- 2024-12-03
-
回复了主题帖:
测评入围名单:NXP 边缘AI FRDM-MCXN947开发板
个人信息无误,确认可以完成测评分享计划
- 2024-11-22
-
回复了主题帖:
入围名单公布:嵌入式工程师AI挑战营(进阶)的挑战者们,领取板卡啦
个人信息已确认,领取板卡,可继续完成任务。
- 2024-11-11
-
回复了主题帖:
嵌入式工程师AI挑战营(进阶):在RV1106部署InsightFace算法的多人实时人脸识别实战
-申请理由
1. 基本思路
1.1 简述了解的InsightFace:
InsightFace算法是一种用于人脸分析和识别任务的深度学习模型,主要侧重于人脸识别和人脸验证。其是一个用于2D和3D人脸分析的集成Python库,实现了多种先进的人脸识别、人脸检测和人脸对齐算法,并针对训练和部署进行了优化。
1.2 部署InsightFace在RV1106开发板
Step1. 获取一个带有摄像头的RV1106开发板;
Step2. 熟悉SDK。下载SDK,解压并查看其目录结构。
Step3. 交叉编译:使用Pico SDK进行交叉编译。安装LuckFoxPicoSDK,设置环境变量,确保cmake版本大于3.15。
Step4. 部署InsightFace算法:在RV1106上部署InsightFace算法,实现多人的实时人脸识别。
Step5. 测试和调试:部署完成后,进行测试和调试,确保算法在RV1106上正常运行,实现多人的实时人脸识别功能
2. 具体应用
2.1 复杂场景下多人实时人脸识别
尝试使用家庭场景内多人脸实时识别场景,时间允许的情况下,使用会议场景内多人脸识别来进行算法和模型的测试和验证