首页 > 其他分享 >面向单片机的超轻量级的神经网络推理库+单片机上实现动态加载功能的函数库

面向单片机的超轻量级的神经网络推理库+单片机上实现动态加载功能的函数库

时间:2024-05-11 09:52:39浏览次数:12  
标签:函数库 单片机 TinyMaix https com 轻量级 加载

1、TinyMaix - 面向单片机的超轻量级的神经网络推理库

TinyMaix 是专为低资源的单片机设计的 AI 神经网络推理框架,通常被称为 TinyML。TinyMaix 可以让你在任意单片机上运行轻量级深度学习模型。TinyMaix 的设计原则:易用性 > 移植性 > 速度 > 空间。

TinyMaix 其实是矽速科技(Sipeed)利用两个周末的业余时间完成的项目,它足够简单,可以在 30 分钟内读完代码,可以帮助新手理解它是怎么运行的。

TinyMaix 关键特性:

- 核心代码少于400行(tm_layers.c+tm_model.c+arch_cpu.h), 代码段(.text)少于3KB
- 低内存消耗,甚至Arduino ATmega328 (32KB Flash, 2KB Ram) 都能基于TinyMaix跑mnist(手写数字识别)
- 支持INT8/FP32/FP16模型,实验性地支持FP8模型,支持keras h5或tflite模型转换
- 支持多种芯片架构的专用指令优化: ARM SIMD/NEON/MVEI,RV32P, RV64V
- 友好的用户接口,只需要load/run模型~
- 支持全静态的内存配置(无需malloc)
- MaixHub 在线模型训练支持

2、ZS1100A - 专用于物联网功耗测量的开源功率计

大多数用于创建物联网(IoT)的设备都是用小电池工作的。由于当前消费电子的动态性,测量这些物联网设备的能耗是一项艰巨的任务。开发人员经常需要使用多种仪器和手工计算来估计能源消耗。ZS1100A 型电能表就是为解决这些问题的。该工具可以非常准确和详细地绘制电流消耗与时间的关系,可以与电池模型一起使用,以估计电池的总体寿命。

3、dynamic_loader - 单片机上实现动态加载功能的函数库

dynamic_loader 是一个在单片机(如:STM32)上实现动态加载功能的函数库,与 Windows 中的 dll,Linux 中的 so 类似,可以将代码动态地从其他的存储介质,动态加载到 RAM 中。

程序使用 dl_load_lib 加载相应的库文件到句柄中,加载成功后可使用 dl_get_func,通过函数名获得相应函数指针,在不需要使用时可使用 dl_destroy_lib 对句柄进行释放。

4、little-bee-B1 - 开源实用的高性能电流和磁场探头

little-bee-B1 是一种基于各向异性磁电阻(AMR)磁传感器的开源磁场和电流探头。它直接感知磁场,并通过电流传感附件测量电流,该附件由放置在导线周围的有间隙的铁氧体环形体组成,在导线中的电流和传感器所受的磁场之间建立固定的关系。

特性如下:

- 可调带宽(10mhz和1mhz)
- 可调增益(1倍和4倍)
- SMA输出连接器
- 连接到任何标准1 MΩ阻抗示波器输入
- 单节AA电池供电(续航4小时)
- 自动归零

5、White Rabbit - 亚纳秒级同步精度的网络数据传输项目

White Rabbit 为大型分布式系统提供亚纳秒级同步精度,它还允许确定性和可靠的数据传输。White Rabbit 允许您对测量数据进行精确的时间标记,并允许您在大型安装中触发数据,同时使用相同的网络传输数据。

White Rabbit 特点:

- 亚纳秒级同步
- 支持连接数千个节点
- 节点之间的典型距离为 10 km
- 基于千兆以太网的的可靠数据传输
- 硬件、固件和软件全开源

标签:函数库,单片机,TinyMaix,https,com,轻量级,加载
From: https://www.cnblogs.com/lineAI2022/p/18185820

相关文章

  • 嵌入式系统设计的轻量级框架+在Linux中用于外围设备访问C库+自研的编程语言和集成开发
    1、mr-library-一个专为嵌入式系统设计的轻量级框架mr-library是一个专为嵌入式系统设计的轻量级框架,模块化的软件架构充分考虑了嵌入式系统的资源和性能要求。通过提供标准化的设备管理等,极大地简化了嵌入式应用的开发难度,帮助开发者快速构建嵌入式应用程序。设备框架 为......
  • Pdoc:轻量级生成 API 文档
    pdoc是一个轻量级的库,专注于为Python项目生成API文档。它通过扫描指定的模块和包,自动提取文档字符串,快速转化为易于浏览的HTML文档。这项技术尤其适用于需要快速生成文档的现代Python项目。与市面上其他文档生成库例如Sphinx相比,pdoc的特色在于其轻量级和......
  • VectSharp一个C#轻量级矢量图形库
    VectSharp是一个功能强大的C#库,专门用于创建矢量图形,包括文本,不依赖任何第三方,支持跨平台运行,包括Mac、Windows和Linux。使得开发者可以更容易地在他们的项目中集成矢量图形的生成和处理。https://github.com/arklumpus/VectSharp特点:内置字体:包含了14种标准字体,这些字体......
  • Imghdr:轻量级判断图像文件类型
    我们可能很少遇到需要判断图片类型的情况,因为通过扩展名一下子就判断出来了,但是从网上大量的下载图片,将它们作为机器学习的材料时,可能会遇到大量的图片只有数据没有扩展名的情况,为了将图片信息标准化,你就需要确定每一张图片数据的类型,到底是jpg、png还是bmp呢?遇到这种状况,该......
  • Pdoc:轻量级生成 API 文档
    pdoc是一个轻量级的库,专注于为Python项目生成API文档。它通过扫描指定的模块和包,自动提取文档字符串,快速转化为易于浏览的HTML文档。这项技术尤其适用于需要快速生成文档的现代Python项目。与市面上其他文档生成库例如Sphinx相比,pdoc的特色在于其轻量级和......
  • Whose:轻量级搜索引擎工具
    #Whoosh简介Whoosh由MattChaput创建,它一开始是一个为Houdini3D动画软件包的在线文档提供简单、快速的搜索服务工具,之后便慢慢成为一个成熟的搜索解决工具并已开源。Whoosh纯由Python编写而成,是一个灵活的,方便的,轻量级的搜索引擎工具,现在同时支持Python2、3,其优点如......
  • 单片机的发展历史及简介
    单片机的发展历史单片机是单片微型计算机(Singlechipmicrocomputer)的简称,又称为微控制器(MicroControlUnit,MCU)。目前,众多厂商将单片机称为微控制器,虽然这样看上去比单片机的名字显得更高级些,但是单片机这个词更能反映其本质特点。单片机是20世纪70年代中期发展起来的一种超大规......
  • 单片机开发编程用什么软件比较好
    今天给大家分享我从业单片机开发10年来必备的神器。下面,zhugedz就介绍下最常用到的一些编程软件。一、集成开发环境(IDE)集成开发环境一般是集写代码、编译代码、调试代码于一身的工具。1.KeilMDKKeil支持目前大多数单片机,Keil根据不同内核单片机,分为几个版本,最常用的就是Ke......
  • 51单片机程序框架之矩阵按键
    /******************************************************************************此程序是依据吴坚鸿程序框架,在普中51A2单片机开发板上的程序练习程序目标:4*4矩阵按键*******************************************************************************/#include<REG51.H......
  • 51单片机程序框架之短按长按
    /******************************************************************************此程序是依据吴坚鸿程序框架,在普中51A2单片机开发板上的程序练习程序目标:按键长按与短按,长按LED亮,短按LED灭****************************************************************************......