从IMX6ULL到边缘AI:一个车牌识别系统的硬件选型与性能优化之旅

imx6之camera mipi 1.IPU imx6qp有2个IPU,每个IPU有2个CSI,这个CSI并不是MIPI-CSI,是内部的功能模块。 static struct mipi_csi2_platform_data mipi_csi2_pdata = { .chans = 4,//max is 4 .chans_data = { { .ipu_id  = 0, .csi_id = 0, .v_ch 阅读详情

从IMX6ULL到边缘AI:一个车牌识别系统的硬件选型与性能优化之旅

在嵌入式AI领域,车牌识别系统一直是一个极具挑战性的应用场景。它需要在有限的硬件资源上实现复杂的图像处理、机器学习推理和实时响应,这对硬件选型和软件优化都提出了极高要求。IMX6ULL作为一款经典的工业级处理器,虽然算力有限,却为我们提供了一个绝佳的起点,来探索如何在资源受限的环境中构建实用的边缘AI系统。本文将带你深入硬件选型的核心考量,分享从基础实现到性能极致的优化策略,为嵌入式开发者和边缘计算爱好者提供一条清晰的技术路径。

1. 边缘AI系统的硬件平台选型策略

选择合适的硬件平台是边缘AI项目成功的基础。不同的处理器架构、算力水平和外设支持,直接影响着系统的性能上限和开发难度。

处理器核心的权衡:IMX6ULL采用ARM Cortex-A7架构,主频通常在800MHz-900MHz之间,内置的Vivante GC系列GPU虽然能够提供基础的图形加速,但对于现代AI推理来说仍显吃力。相比之下,RK3588的4×A76+4×A55大小核设计和内置的NPU能够提供数TOPS的算力,更适合复杂的多任务处理。而全志H616则定位中端,四核Cortex-A53架构和G31 MP2 GPU在功耗和性能之间找到了不错的平衡点。

实际选型中需要考虑的不仅是峰值算力,还有持续性能表现和热设计功耗。IMX6ULL的最大优势在于极低的热设计和出色的工业级稳定性,适合常年不间断运行的场景。

内存与存储配置:车牌识别系统需要同时运行图像采集、预处理、推理计算和后处理等多个任务,对内存带宽和容量都有一定要求。IMX6ULL通常配置256MB-512MB DDR3内存,而RK3588可支持高达32GB的LPDDR4X内存。更大的内存容量意味着可以缓存更多帧图像数据,提高系统应对突发负载的能力。

# 查看IMX6ULL内存配置
cat /proc/meminfo | grep MemTotal

# 监控内存使用情况
vmstat -s

外设接口与扩展能力:车牌识别系统需要连接摄像头、显示屏、网络和可能的控制设备(如舵机)。IMX6ULL提供MIPI-CSI、LCD接口、多个UART和USB接口,能够满足基本需求。而更高端的平台如RK3588则提供更丰富的接口选项,包括多路MIPI-CSI、PCIe扩展等,为系统未来升级留下空间。

平台CPU架构典型频率GPU/NPU内存支持典型功耗适用场景
IMX6ULLCortex-A7800MHzVivante GC256MB-512MB~0.5W基础识别、工业控制
全志H616Cortex-A531.5GHzMali-G311GB-4GB~2W中端应用、多媒体
RK3588A76+A552.4GHzMali-G610+NPU4GB-32GB~5W高性能识别、多路处理

2. 开发环境搭建与基础组件配置

构建一个稳定高效的开发环境是项目成功的关键第一步。针对嵌入式Linux开发,我们需要配置交叉编译工具链、系统镜像构建环境和必要的调试工具。

交叉编译工具链配置:针对ARM架构的处理器,我们需要在x86主机上配置交叉编译环境。对于IMX6ULL,可以使用Linaro或厂商提供的工具链:

# 下载并配置ARM工具链
wget https://releases.linaro.org/components/toolchain/binaries/latest-7/arm-linux-gnueabihf/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.xz
tar -xvf gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.xz
export CC=`pwd`/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc

OpenCV库的交叉编译:在嵌入式平台上运行OpenCV需要针对特定硬件进行优化编译。关键配置选项包括:

  • -DCMAKE_TOOLCHAIN_FILE:指定交叉编译工具链文件
  • -DCMAKE_BUILD_TYPE=Release:启用优化选项
  • -DBUILD_LIST=core,imgproc,highgui:只编译必要的模块以减少体积
  • -DWITH_GTK=OFF:禁用不必要的GUI依赖
  • -DNEON=ON:启用NEON指令集加速

系统镜像构建与部署:使用Buildroot或Yocto构建定制化的Linux系统镜像,只包含必要的组件和服务,减少系统开销:

# Buildroot配置示例
make menuconfig
# 选择Target options → ARM (little endian) → Cortex-A7
# 选择System configuration → Enable root login with password
# 选择Target packages → Libraries → Graphics → opencv
# 选择开启必要的模块:core, imgproc, highgui

摄像头驱动与视频采集:针对OV5640或USB摄像头配置V4L2驱动,确保能够稳定采集视频流:

// V4L2视频采集基本流程
int capture_init(const char* device, int width, int height) {
    int fd = open(device, O_RDWR);
    struct v4l2_format fmt;
    fmt.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
    fmt.fmt.pix.width = width;
    fmt.fmt.pix.height = height;
    fmt.fmt.pix.pixelformat = V4L2_PIX_FMT_YUYV;
    ioctl(fd, VIDIOC_S_FMT, &fmt);
    return fd;
}

3. 车牌识别核心算法与模型优化

车牌识别算法的选择直接影响系统的准确率和性能。在资源受限的嵌入式环境中,我们需要在准确率和计算复杂度之间找到最佳平衡。

传统图像处理与深度学习结合:单纯使用传统图像处理方法(如边缘检测、颜色分割)虽然计算量小,但适应性和鲁棒性有限。而纯深度学习方案虽然准确率高,但对算力要求极高。实际应用中往往采用混合方案:

  • 使用轻量化的CNN模型进行车牌检测和字符区域定位
  • 结合传统的图像预处理方法增强图像质量
  • 针对特定场景优化识别逻辑,减少误识别

模型量化与压缩技术:将浮点模型转换为8位整型模型可以大幅减少模型大小和推理时间,同时保持较高的准确率:

# TensorFlow模型量化示例
import tensorflow as tf
converter = tf.lite.TFLiteConverter.from_saved_model(saved_model_dir)
converter.optimizations = [tf.lite.Optimize.DEFAULT]
converter.representative_dataset = representative_dataset_gen
tflite_quant_model = converter.convert()

多尺度检测与推理优化:车牌在图像中的大小位置多变,需要采用多尺度检测策略。但多尺度检测会显著增加计算量,需要通过以下方式优化:

  • 使用图像金字塔而不是多次缩放模型输入
  • 实现滑动窗口检测的区域提议网络(RPN)
  • 采用非极大值抑制(NMS)优化检测结果

针对嵌入式平台的模型选择:选择适合嵌入式设备的轻量化模型架构:

  • MobileNetV2/V3:深度可分离卷积大幅减少参数量
  • SqueezeNet:fire module设计在保持精度的同时减少参数
  • ShuffleNet:通道混洗操作实现高效的信息交流
  • NanoDet:专为边缘设备设计的超轻量目标检测模型

在实际部署中发现,针对特定场景重新训练模型头部(head)而不是使用通用预训练模型,能在保持较小模型体积的同时显著提升准确率。

4. 系统性能优化与实时性保障

在嵌入式环境中,性能优化不是可选项而是必选项。我们需要从多个层面挖掘硬件潜力,确保系统能够满足实时性要求。

内存管理优化:嵌入式设备内存有限,需要精细化管理:

  • 使用内存池预分配策略减少动态内存分配开销
  • 实现零拷贝图像传输管道,避免不必要的内存拷贝
  • 调整Linux内核内存管理参数,优化缓存行为
// 内存池实现示例
typedef struct {
    void* buffer;
    size_t block_size;
    int block_count;
    bool* used_flags;
} memory_pool_t;

memory_pool_t* create_pool(size_t block_size, int block_count) {
    memory_pool_t* pool = malloc(sizeof(memory_pool_t));
    pool->buffer = malloc(block_size * block_count);
    pool->used_flags = calloc(block_count, sizeof(bool));
    return pool;
}

计算加速技术:充分利用硬件提供的各种加速能力:

  • NEON SIMD优化:使用ARM NEON指令集并行处理多个数据
  • GPU加速:通过OpenCL或Vulkan利用GPU进行通用计算
  • 多核并行:使用pthread或OpenMP实现任务级并行

流水线架构设计:将车牌识别任务分解为多个阶段,形成处理流水线,提高硬件利用率:

  1. 图像采集阶段:专用线程负责摄像头数据采集
  2. 预处理阶段:调整大小、格式转换、直方图均衡化
  3. 推理阶段:模型前向计算,生成检测结果
  4. 后处理阶段:结果解析、车牌号码提取
  5. 输出阶段:结果显示、网络传输或控制执行

实时性保障策略:确保系统即使在负载波动时也能保持稳定性能:

  • 使用Linux的实时调度策略(SCHED_FIFO/SCHED_RR)
  • 调整CPU频率调控器为performance模式
  • 设置进程CPU亲和性,减少上下文切换开销
  • 实现基于帧率的动态质量控制,在负载高时降低处理分辨率
# 设置实时调度策略和优先级
chrt -f -p 99 [pid]

# 设置CPU性能模式
echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

# 设置进程CPU亲和性
taskset -p 0x1 [pid]

5. 实际部署与系统调优经验

理论优化需要在实际部署中验证和调整。以下是我们在多个实际项目中积累的实战经验。

环境适应性处理:车牌识别系统需要在各种光照和天气条件下工作,必须具备良好的环境适应性:

  • 自动曝光与白平衡:通过摄像头驱动参数实时调整图像质量
  • 多模式识别策略:针对白天/夜晚、晴天/雨天等不同条件采用不同的预处理参数
  • 基于历史的自适应阈值:根据近期识别结果动态调整识别灵敏度

系统稳定性保障:嵌入式系统需要长时间稳定运行,必须考虑各种异常情况:

  • 看门狗机制:硬件看门狗和软件看门狗双重保障
  • 进程监控与恢复:监控关键进程状态,异常时自动重启
  • 资源泄漏防护:定期检查内存、文件描述符等资源使用情况

性能监控与诊断:建立完善的性能监控体系,便于问题诊断和持续优化:

# 监控系统性能指标
# CPU使用率
mpstat -P ALL 1

# 内存使用情况
vmstat 1

# 磁盘IO
iostat -xz 1

# 网络流量
iftop -i eth0

# 温度监控
cat /sys/class/thermal/thermal_zone0/temp

电源管理与功耗优化:对于电池供电或对功耗敏感的应用场景:

  • 动态调整CPU频率和核心数量
  • 外设电源管理(摄像头、显示屏等在不使用时进入低功耗模式)
  • 利用SoC的低功耗工作模式(如IMX6ULL的wait模式)

在实际项目中,我们发现最大的性能提升往往来自于算法层面的优化而非单纯的硬件升级。通过减少不必要的计算、优化数据流和充分利用硬件特性,即使在IMX6ULL这样的入门级平台上也能实现接近实时的车牌识别性能。这种深度优化经验对于理解和掌握边缘AI开发的精髓具有不可替代的价值。

I.MX6U 裸机开发21. LCD原理及eLCDIF接口介绍 配置 CSCDR2[LCDIF1_PRE_CLK_SEL],bit[17:15],值为2,表示选择 LCDIF_CLK_ROOT 为时钟源;在初始化的时候,先读取ID来识别屏幕。继续设置 CCM_CSCDR[LCDIF1_CLK_SEL],bit[9:11],值为0,表示LCDIF的最终时钟源来源于 pre-muxed LCDIF clock。配置 CBCMR[LCDIF1_PODF],bit[25:23] 为LCDIF_PODF,设置第二级分频,可以设置0~7,表示1 ~ 8分频。 阅读详情

相关推荐

超越监控:imx6ull与QT5重塑边缘计算中的视频流处理

本文探讨了基于imx6ull嵌入式处理器与QT5框架的边缘计算视频流处理方案,超越传统网络视频监控,实现本地化视频捕获、格式转换和UDP协议低延迟传输。该技术组合为工业物联网和智能安防提供了高性能、低延迟的分布式智能解决方案,重塑边缘计算中的视频处理能力。

rain6的博客 196

IMX6ULL开发板Linux设备树实验

在上一节迅为IMX6ULL开发板已经对DTS的语法做了比较详细的介绍,在本节中根据前面讲解的语法,从头到尾编写一个小型的设备树文件。我们会以一个虚拟的设备作为参考,提前假设一些外部设备和功能。当然这个虚拟的设备没有任何的意思,只是为了复习掌握前面学习的设备树语法。在实际产品的开发过程中,我们不需要从头编写一个dts设备树文件,一般都是使用soc厂商提供的dts文件,我们只需要根据自己的实际情况修改添加自己的内容即可。 下面这个假设的设备,制造商为“Acme”,并命名为“Coyote's Revenge”,

mucheni的博客 1075

mipi 调试经验

MIPI(moblie industry processor interface)是 2003 年由 ARM、Nokia、ST、TI 等公司成立的一个联盟(www.mipi.org)。联盟的目的是制定一套用于移动设备和消费类电子产品的接口标准,使这些设备的接口既能增加带宽、提高性能,同时又能降低成本、复杂度、功耗和EMI。MIPI主要针对下列系统部分:图像子系统(摄像头和显示器)、存储子系统、无线

嵌入式技术博客 10万+

泰山派3.1寸mipi屏幕驱动分析(对比正点原子LCD驱动)

本文总结了Linux下屏幕与触摸驱动的开发流程,对比了正点原子IMX6ULL开发板(RGB接口LCD)和泰山派扩展板MIPI屏幕的硬件设计与驱动实现差异。通过对比分析,对linux的屏幕驱动框架会有一个更加深入的认识!

qq_53686293的博客 1822

IMX6 GPU开发参考文档

imx6 gpu的开发参考文档,包括给g2d的接口说明,gpu的opengl使用imx6 framebuffer的对接接口

I.MX6的MIPI接口调试流程

这个文档是我开发I.MX6的MIPI接口是用到的,非常有用。大家可以参考一下,按照这个文档上的描述去一步一步的走,基本就没有什么问题。

i.MX6ULL(十) LCD 驱动

LCD(Liquid Crystal Display),液晶显示器。LCD的构造是在两片平行的玻璃基板中放置液晶盒,下基板玻璃上设置TFT(薄膜晶体管),上基板玻璃上设置彩色滤光片,通过TFT上的信号与电压改变来控制液晶分子的转动方向,从而达到控制每个像素点偏振光出射与否而达到显示目的。

TyearLin的专栏 3119

两路半桥LLC谐振变换器软开关Simulink仿真(模拟谐振参数不同、分裂电容)

内容概要:本文介绍了“两路半桥LLC谐振变换器软开关Simulink仿真”资源包,重点在于基于Simulink平台对两路半桥LLC谐振变换器进行高精度建模与动态仿真,特别考虑了谐振参数不一致及分裂电容等非理想工况对系统性能的影响。该仿真模型不仅涵盖了主电路拓扑、软开关实现机制与谐振网络设计,还深入分析了不同参数配置下系统的启动特性、稳态效率、动态响应及软开关条件的满足情况。通过参数扫描与对比仿真,帮助用户掌握LLC变换器的关键设计要素与优化方法,具备较强的工程指导价值和科研教学意义。; 适合人群:电力电子、电气工程及其自动化等相关专业的高校师生,以及从事高频开关电源、新能源变换器、车载充电机等领域的研发工程师和技术人员。; 使用场景及目标:① 掌握两路并联半桥LLC谐振变换器的建模与仿真方法;② 理解软开关技术在提升变换器效率与降低EMI方面的关键作用;③ 分析谐振参数偏差与分裂电容结构对系统均流特性、增益曲线及软开关范围的影响;④ 支持科研项目中的拓扑验证、控制策略开发与故障工况分析; 阅读建议:建议结合Simulink仿真模型与配套说明文档进行学习,重点关注谐振腔参数设置、驱动时序设计及软开关波形观测;可通过调整谐振电感、电容值或引入参数失配,观察系统行为变化,深入理解LLC变换器的稳定边界与优化设计原则。

一灯大师,基于imx6ull点亮LED灯

主要介绍基于Linux字符设备驱动框架来实现在imx6ull点亮LED灯

朝气蓬勃 3449

突发E层(Es层):短波通信中的“意外惊喜”与“隐形杀手”全解析

本文深入解析了突发E层(Es层)在短波通信中的双重作用,既可能带来超远距离通信的“意外惊喜”,也可能成为通信链路的“隐形杀手”。通过分析Es层的形成机制、时空分布规律及实战应用技巧,帮助通信爱好者与专业人员更好地利用或应对这一电离层现象,提升短波通信的可靠性与效率。

weixin_30443813的博客 828

2025年MathorCup数学应用挑战赛【B题完整论文】附参考代码(免费分享)

摘。

RS_handy的博客 2694

性价比最高处理器和国产处理器I.MX6UL/A40I/T3对比

NXP的i.MX 6ULL系列芯片是一款基于ARM Cortex A7内核的低功耗高性能且低成本的应用处理器,下面是imx6ull处理器的内部功能框图 主要特性如下: ARM Cortex-A7内核可达900 MHz, 128 KB L2缓存。 支持 并行24bit RGB LCD接口,可以支持1366*768分辨率。 8/10/16位并行摄像头传感器接口(CSI)。 2个MMC 4.5/SD 3.0/SDIO 接口。 2个USB 2.0 OTG, HS/FS, Device or Ho.

szembed的博客 3890

mac(apple silicon)arm64安装spm12详细教程

3.下载matlab runtime R2023b for macOS (macA64),注意必须下载这个,只下载matlab是不可以的。默认安装目录是/Applications/MATLAB/MATLAB_Runtime/R2023b。注意最后的命令,路径根据自己的matlab_runtime安装位置进行调整,然后就可以安装成功了。5. 解压spm12.zip,解压后将文件夹拖到应用程序下(Applications)2.下载spm12,这个版本可兼容mac芯片!6.打开mac终端,输入。

weixin_62332001的博客 2027

韦东山升级版嵌入式视频之快速入门

韦东山老师为啥要录升级版嵌入式视频?200x年左右,嵌入式Linux在全世界、在中国刚刚兴起。我记得我2005年进入中兴时,全部门的人正在努力学习Linux。在2008年,我写了一本书《嵌入式Linux应用开发完全手册》。它的大概内容是:裸机、U-boot、Linux内核、Linux设备驱动。那时还没有这样讲解整个系统的书,芯片厂家Linux开发包也还不完善,从bootloader到内核,再到设备驱动都不完善。有全系统开发能力的人也很少。于是这书也就恰逢其时,变成了畅销书。我也根据这个思路录制了视频:裸机、U-boot、Linux内核、Linux设备驱动。收获些许名声,带领很多人进入Linux世界。11年过去了,嵌入式Linux世界发生了翻天覆地的变化① 基本系统能用芯片厂家都会提供完整的U-boot、Linux内核、芯片上硬件资源的驱动。方案厂家会做一些定制,比如加上某个WIFI模块,会添加这个WIFI模块的驱动。你可以使用厂家的原始方案,或是使用/借鉴方案商的方案,做出一个“能用”的产品。② 基础驱动弱化;高级驱动专业化基础的驱动,比如GPIO、UART、SPI、I2C、LCD、MMC等,有了太多的书籍、视频、示例代码,修修改改总是可以用的。很多所谓的驱动工程师,实际上就是“调参工程师”。我们群里有名的火哥,提出了一个概念:这些驱动就起一个“hardware enable”的作用。高级的驱动,比如USB、PCIE、HDMI、MIPI、GPU、WIFI、蓝牙、摄像头、声卡。体系非常复杂,很少有人能讲清楚,很多时候只是一笔带过。配置一下应用层工具就了事,能用就成。这些高级驱动,工作中需要专门的人来负责,非常专业。他们是某一块的专家,比如摄像头专家、音频专家。③ 项目为王你到一个公司,目的是把产品做出来,会涉及APP到内核到驱动全流程。中小公司玩不起华为中兴的配置,需要的是全面手。大公司里,只负责很小很小一块的镙丝钉,位置也不太稳固啊。所以,如果你不是立志成为某方面的专家,那就做一个全栈工程师吧。④ 调试很重要都说代码是3分写7分调,各种调试调优技术,可以为你的升职加薪加一把火。基于上述4点,我录制的全新视频将有这些特点:1. 快速入门,2. 实战项目,3. 驱动大全,4. 专题,5. 授人以渔,6. 要做任务另外,我们会使用多款芯片同时录制,先讲通用的原理,再单独讲各个板子的操作。这些芯片涵盖主流芯片公司的主流芯片,让你学习工作无缝对接。1.快速入门入门讲究的是快速,入门之后再慢慢深入,特别是对于急着找工作的学生,对于业余时间挑灯夜读的工作了的人,一定要快!再从裸机、U-boot、内核、驱动这样的路线学习就不适合了,时间就拉得太长了。搞不好学了后面忘了前面。并且实际工作中并不需要你去弄懂U-boot,会用就行:U-boot比驱动还复杂。讲哪些内容?怎么讲呢?混着讲比如先讲LED APP,知道APP怎么调用驱动,再讲LED硬件原理和裸机,最后讲驱动的编写。这样可以快速掌握嵌入式Linux的整套开发流程,不必像以前那样光学习裸机就花上1、2个月。而里面的裸机课程,也会让你在掌握硬件操作的同时,把单片机也学会了。讲基础技能中断、休眠-唤醒、异步通知、阻塞、内存映射等等机制,会配合驱动和APP来讲解。这些技能是嵌入式Linux开发的基础。而这些驱动,只会涉及LED、按制、LCD等几个驱动。掌握了这些输入、输出的驱动和对应的APP后,你已经具备基本的开发能力了。讲配置我们从厂家、从方案公司基本上都可以拿到一套完整的开发环境,怎么去配置它?需要懂shell和python等配置脚本。效果效率优先以前我都是现场写代码、现场写文档,字写得慢,降低了学习效率。这次,效果与效率统一考虑,不再追求所有东西都现场写。容易的地方可先写好代码文档,难的地方现场写。2.实战项目会讲解这样的涉及linux网关/服务器相关项目(不限于,请多提建议):                   定位为:快速掌握项目开发经验,丰满简历。涉及的每一部分都会讲,比如如果涉及蓝牙,在这里只会讲怎么使用,让你能写出程序;如果要深入,可以看后面的蓝牙专题。3. 驱动大全包括基础驱动、高级驱动。这些驱动都是独立成章,深入讲解。虽然基础驱动弱化了,但是作为Linux系统开发人员,这是必备技能,并且从驱动去理解内核是一个好方法。在讲解这些驱动时,会把驱动的运行环境,比如内核调度,进程线程等概念也讲出来,这样就可以搭建一个知识体系。没有这些知识体系的话,对驱动的理解就太肤浅了,等于在Linux框架下写裸机,一叶障目,不见泰山。定位为:工具、字典,用到再学习。4. 专题想深入学习的任何内容,都可独立为专题。比如U-boot专题、内核内存管理专题、systemtap调试专题。

elegant(ELEctron Generation ANd Tracking)入门指南(1)

elegant (ELEctron Generation ANd Tracking),美国先进光子源(APS)所用的圆环加速器的模拟程。

qq_41106132的博客 1849

[LaTeX] 调整参考文献的格式(References),包括作者名缩写,行距,字体,引用顺序等等

在此记录我对LaTeX中参考文献references的尝试,主要涵盖如题几个方面。

the Blog of 等不到天亮丶等时光 4万+

IMX6ULL学习笔记(1)——搭建环境、编译烧写

i.MX 应用处理器包括i.MX8、i.MX7、i.MX6及i.MX28系列,被广泛应用于工业控制、 汽车电子领域,久经市场考验。而且它的产品线非常丰富, 用户熟悉其中一款产品后就能非常方便地迁移至不同的平台。它们的前身是Freescale旗下的产品, 目前属于NXP公司,所以在查阅资料和代码时,在看到Freescale的一些标签时不要奇怪。 NXP承诺对这些产品供货周期持续10年以上。学习应用处理器的驱动程序开发时, 芯片原厂的技术支持是非常重要的,NXP官方提供的资料包含uboot、Linux内核的Yo

Leung的博客 3368

Coze 上 OpenClaw 完整使用攻略(零代码 + 24 小时在线 + 飞书 / 微信接入)

Coze(扣子)是目前国内零门槛部署 OpenClaw 最友好的平台,无需服务器、不用命令行,5 分钟即可拥有可执行本地 / 云端任务的 AI 助手,还能一键发布到飞书、微信、钉钉等 IM。

hy行者勇哥的博客 2926

i.MX6ULL 系列处理器简介

NXP的i.MX 6ULL系列芯片是一款基于ARM Cortex A7内核的低功耗高性能且低成本的应用处理器,下面是imx6ull处理器的内部功能框图: 主要特性如下: ARM Cortex-A7内核可达900 MHz, 128 KB L2缓存。 并行24bit RGB LCD接口,可以支持1366*768分辨率。 8/10/16位 并行摄像头传感器接口(CSI)。 2个MMC 4.5/SD 3.0/SDIO 接口。 2个USB 2.0 OTG, HS/FS, Device or Ho.

CodeAllen嵌入式 6万+

华为OD机试真题2025双机位C卷 Python&JS 实现【卡牌游戏】

小明正在尝试一种新的牌游戏。游戏规则只如下:首先,小明拿到一张写有数字m的牌。 然后,他会拿到另外n张牌,上面分别写有不同的数字,牌排成一排。小明的目标是从这排牌中找到一串连续的牌,这些牌上数字的总和可以被 m整除。你的任务是判断小明是否可以完成这个目标。

MISAYAONE的博客 404

华为OD机试 - 比赛的冠亚季军(Python/JS/C/C++ 双机位C卷 100分)

有个运动员,他们的id为0到N-1,他们的实力由一组整数表示。他们之间进行比赛,需要决出冠亚军。比赛的规则是0号和1号比赛,2号和3号比赛,以此类推,每一轮,相邻的运动员进行比赛,获N (3\leq N< 10000)胜的进入下一轮,实力值大的获胜,实力值相等的情况,id小的情况下获胜,轮空的直接进入下一轮。(0 <= 实力值 <= 10000000000)。输入一行N个数字代表N的运动员的实力值。输出冠亚季军的id,用空格隔开。

学Java,找哪吒 1588

imx6ull 移植mqtt

imx6ull 移植mqtt 1.ubuntu 环境搭建 参考链接 https://www.jianshu.com/p/37f7ee7ead65 sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa sudo apt-get update sudo apt-get install mosquitto sudo apt-get instal...

muyang tech blog 1809

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

IMX6ULL学习笔记-裸机篇01-点亮一个LED

文章目录前言过程写代码编译烧写偷懒 前言 本学习笔记仅自己学习过程中的记录,可交流学习,但请勿恶语相加。 NXP的i.MX 6ULL系列芯片是一款基于ARM Cortex A7内核的低功耗高性能且低成本的应用处理器,下面是imx6ull处理器的内部功能框图: 主要特性如下: ARM Cortex-A7内核可达900 MHz, 128 KB L2缓存。 并行24bit RGB LCD接口,可以支持1366*768分辨率。 8/10/16位 并行摄像头传感器接口(CSI)。 2个MMC 4.5/SD

weixin_42101470的博客 1275

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

IMX6ULL的基本配置

IMX6ULL基本硬件资源核心板介绍核心板资源内核版本和文件系统 核心板介绍 可以在淘宝搜索很多IMX6ULL核心板,我根据性价比和价格,以及尺寸,我选择了明远智睿的CB140核心板(MY-IMX6-CB140-6Y2D)。 核心板资源 通过简单验证,了解核心板硬件接口,如下: 内核版本和文件系统 【Linux-4.1.15】:QT-5.6.1 【Linux-4.9.88】:QT-5.9.4 ...

qq_41903418的博客 4949

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

上一篇: ESP8266天气时钟:从OLED屏到TFT触控的进阶实践
下一篇: 【STM32CubeMX学习教程】——6.看门狗实战:IWDG与WWDG的精准喂狗与调试技巧
github5actions
博客等级 码龄1天 0粉丝 1824原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值