《痞子衡嵌入式半月刊》 第 62 期

news2024/9/20 6:24:50

痞子衡嵌入式半月刊: 第 62 期

这里分享嵌入式领域有用有趣的项目/工具以及一些热点新闻,农历年分二十四节气,希望在每个交节之日准时发布一期。

本期刊是开源项目(GitHub: JayHeng/pzh-mcu-bi-weekly),欢迎提交 issue,投稿或推荐你知道的嵌入式那些事儿。

上期回顾 :《痞子衡嵌入式半月刊: 第 61 期》

唠两句

历史上的今天:1830年9月18日,第一台美国人制造的火车头,彼得·库拍的“大拇指汤姆号”在返回巴尔的摩途中与一匹马赛跑失败。

本期共收录 3 个项目、2 个工具,希望对你有帮助!

项目类

1、Lua-RTOS-ESP32 - 基于Lua语言面向嵌入式的RTOS

Lua RTOS 是一个实时操作系统,设计在嵌入式系统上运行,对 FLASH 和 RAM 内存的要求最低。目前 Lua RTOS 可用于 ESP32, ESP8266 和 PIC32MZ 平台,并可以轻松移植到其他32位平台。

  • 项目主页:https://github.com/whitecatboard/Lua-RTOS-ESP32

Lua RTOS 有 3 层设计:

- 在顶层有一个Lua 5.3.4解释器,它为程序员提供Lua编程语言提供的所有资源,以及用于访问硬件的特殊模块(PIO、ADC、I2C、RTC等),以及Lua RTOS提供的中间件服务(Lua Threads、LoRa WAN、MQTT等)。
- 中间层是一个由FreeRTOS驱动的实时微内核。这就是事情在预期时间内发生的责任。
- 底层是硬件抽象层,它与平台硬件直接通信。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fJrM23Og-1670223235042)(http://henjay724.com/image/biweekly20220918/Lua-RTOS-ESP32.PNG)]

2、SOEM,SOES - 工业以太网协议EtherCAT的开源主从协议栈

SOEM是一个用C语言编写的EtherCAT主库,其目的是学习和使用。邀请所有用户研究源,以了解EtherCAT主控器如何工作以及它如何与EtherCAT从器相互作用。由于所有的应用程序都是不同的,SOEM尽量不强加任何设计架构。在Linux下,它可以在一般用户模式、PREEMPT_RT或Xenomai下使用。在Windows下可以作为用户模式程序使用。

SOES (简单开源EtherCAT从栈)是一种非常容易使用且占用空间小的开源从栈。它是市场上更复杂的堆栈的一个很好的替代方案。

  • 项目主页:https://github.com/OpenEtherCATsociety/SOEM
  • 项目主页:https://github.com/OpenEtherCATsociety/SOES

MBED里有该项目的移植,EasyCAT LAB是一个完整的教育和实验EtherCAT®系统,由一个主系统和两个从系统组成。

3、STM32 OpenSource Multimeter - 适合DIY入门的开源万用表

一个基于 STM32F1/F3 的开源万用表设计,具有双量程的V/I, RMS测量,连续性,组件测试等功能。作者将全部设计文件都开源了,非常适合 DIY 入门。

  • 项目主页:https://github.com/MartinD-CZ/STM32F1-open-source-multimeter

特性如下:

1. voltage measurement: ±60 V, ±6 V, ±600 mV, ±60 m ranges, with DC or RMS data acquisition
2. current measurement: ±250 or ±2500 mA ranges, again with DC or RMS
3. can measure voltage and current simultaneously and display the product, ie power
4. measures continuity and displays the resistance and voltage drop
5. can perform simple component testing
6. frequency measurement up to 10 MHz

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TQtVTrwK-1670223235045)(http://henjay724.com/image/biweekly20220918/STM32-OpenSource-Multimeter2.PNG)]

工具类

1、Power Profiler Kit II - Nordic出品的开源二代功耗测量套件

Power Profiler Kit II (PPK2)是一个独立的单元,除了外部硬件外,它可以测量并可选地提供所有 Nordic DK 板上从sub-uA到高达1A的电流。

  • 工具主页:https://www.nordicsemi.com/Products/Development-hardware/Power-Profiler-Kit-2

PPK2具有先进的模拟测量单元,具有较高的动态测量范围。这使得在低功耗嵌入式应用程序中可以精确测量整个范围的功耗,从单个μ a到1A。根据测量范围的不同,分辨率在100nA和1mA之间变化,并且足够高,可以检测在低功率优化系统中经常看到的小峰值。

PPK2还可以使用数字输入作为低端逻辑分析器,支持代码同步测量。这可以通过将数字输入连接到被测外部设备(DUT)上的I/O引脚来实现。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UAF1B76e-1670223235046)(http://henjay724.com/image/biweekly20220918/Power-Profiler-Kit-II.PNG)]

2、ChipWhisperer - 汽车级芯片爆破设备

ChipWhisperer 是 NewAE 公司推出的用于侧通道功率分析和故障攻击的完整的开源工具链。工具链含硬件,上位机软件,硬件芯片固件,均在 Github 上开源,这套设备主要是致力于硬件安全研究。

  • 工具主页:https://github.com/newaetech/chipwhisperer
  • 工具主页:https://github.com/newaetech/ChipShover

下图是在 NXP 汽车级芯片上的做的爆破演示,展示了绕过了芯片的安全启动,直接进入主程序,但攻击和理解结果的可移植性的想法适用于整个领域。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-by1M4iUj-1670223235047)(http://henjay724.com/image/biweekly20220918/ChipShover.PNG)]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/64901.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JAVA班主任管理系统(源代码+论文)

毕业综合实训报告 班主任管理系统设计与实践 目 录 摘要 ………………………………………………………………………Ⅰ (空2行,本页行间距为最小值14磅) 目录………………………………………………………………………………… 1 第1章 绪…

【QT开发笔记-基础篇】| 第五章 绘图QPainter | 5.1 效果演示、技术点

Qt 中绘图用到的类是 QPainter,可以实现点、线、矩形、圆形、多边形、圆弧、饼图、图片等的绘制 什么时候会用到绘图? 需要简单绘制时 比如,绘制温度的曲线时,如下: 自定义控件 绘图最大的一个应用场景就是自定义控…

三 TypeScript变量

流程控制 计算机执行程序的时候是按照从上到下从左到右逐行进行 我们常见的流程: 顺序 分支循环 分支结构 分支结构 单分支 语法结构 if(表达式){代码块}执行逻辑:当程序遇到if结构,首先判断表达式的值,如果表达式的值为真,则执行大括号里面的代码块,如果表达…

Spring - FactoryBean扩展接口

文章目录Preorg.springframework.beans.factory.FactoryBeanFactoryBean中的设计模式----工厂方法模式FactoryBean VS BeanFactory源码解析扩展示例Pre Spring Boot - 扩展接口一览 org.springframework.beans.factory.FactoryBean package org.springframework.beans.factory…

IDEA新建一个spark项目

第一步&#xff1a;新建一个maven工程 第二部&#xff1a;命名工程名 第三步&#xff1a;新建一个文件夹&#xff0c;并设置为sources root 第四步&#xff1a;pom编写 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http:/…

表格数据方法、分页方法及组件的封装和分页组件的复用

请假列表 1、数据获取与显示的通用方法封装 <template><div> <el-table:data"tableData"height"450"borderstyle"width: 100%":default-sort"{ prop: number, order: Ascending }"><!-- <el-table-column pr…

亚像素级精确度的角点

有时我们需要最大精度的角点检测。OpenCV为我们提供了函cv2.cornerSubPix()&#xff0c; 它可以提供亚像素级别的角点检测。下面是一个例子。首先我们要找到 Harris 角点&#xff0c;然后将角点的重心传给这个函数进行修正。Harris 角点用红色像素标出&#xff0c;绿色像素是修…

[附源码]计算机毕业设计社区疫情防控信息管理系统Springboot程序

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

jdk11新特性——新加的一些更实用的API

目录一、集合 增强1.1、List集合 of()方法1.2、Set集合 of()方法1.3、Map集合 of()方法1.4、List集合copyOf()方法1.5、of()和copyOf()方法创建集合的注意事项二、Stream 增强2.1、Stream 新增of()方法2.2、Stream 新增ofNullable()方法2.3、Stream 新增takeWhile() 和 dropWhi…

[附源码]Python计算机毕业设计Django网文论坛管理系统

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…

torchnet简介

前言 最近项目开发过程中遇到了torchnet.metertorchnet.metertorchnet.meter来记录模型信息&#xff0c;搜了好多篇博客&#xff0c;都潦草草没有一点干货。于是参考了官方文档以及参考代码&#xff0c;根据自己的理解&#xff0c;在此做了一个其的使用教程&#xff1a; torc…

flink1.13.2 Streaming File Sink产生大量orc小文件的问题解决方案

Orc小文件合并问题 Orc小文件合并问题 现象:hdfs中出现大量ORC小文件 1.1. 已经映射为hive表ORC小文件合并 1.1.1. 非分区表 alter table 表名 concatenate; 示例: alter table ods_lxy_demo concatenate; 注意:可多次重复执行,每执行一次就会做一次文件合并,执行多次最终…

gitee/github上传远程仓库错误usage: git remote add [<options>] <name> <url>

gitee/github上传远程仓库错误gitee/github上传远程仓库错误错误截图版本错误出现时间错误检查及解决1.网址中含有空格2.关闭翻译软件3.git bash自身问题gitee/github上传远程仓库错误 不知道大家最近有没有碰到这个错误usage: git remote add [<options>] <name>…

[附源码]计算机毕业设计JAVA疫情防控期间网上教学管理

[附源码]计算机毕业设计JAVA疫情防控期间网上教学管理 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM…

Uniapp云开发(Uniapp入门)

前言&#xff1a; 今天这篇文章主要讲解的是Uniapp云开发基础&#xff0c;有了Uniapp云开发&#xff0c;我们就不用需要后端&#xff0c;前端自己就可以实现增删改查。还有就是案例很重要&#xff0c;一定要看&#xff0c;自己去尝试运行试试。 目录超详细一. 什么是Uniapp云开…

分布式配置中心Apollo

Apollo&#xff08;阿波罗&#xff09;是携程框架部门研发的分布式配置中心&#xff0c;能够集中化管理应用不同环境、不同集群的配置&#xff0c;配置修改后能够实时推送到应用端&#xff0c;并且具备规范的权限、流程治理等特性&#xff0c;适用于微服务配置管理场景。 服务…

【Python百日进阶-数据分析】Day326 - plotly.express.scatter_geo():地理散点图

文章目录一、scatter_geo语法二、参数三、返回类型四、实例4.1 常规地理散点图4.2自定义地理散点图4.3GeoPandas 的基本示例一、scatter_geo语法 plotly.express.scatter_geo(data_frame None ,lat None ,lon None ,locations None ,locationmode None ,geojson None , …

MuziDB数据库-0.项目描述

前言 该项目写完也有一段时间了&#xff0c;为了避免以后忘记该项目的一些实现的原理&#xff0c;所以写下这篇博客来记录一下该项目的设计等 项目整体 MuziDB分为前端与后端&#xff0c;前后端交互通过socket进行交互&#xff0c;前端的作用就是读取用户输入并发送到后端进…

mybatis开发要点-insert主键ID获取和多参数传递

1.2、代码示例 二、查询如何传入多个参数 1、使用map传递参数&#xff1b; 2、使用注解传递参数&#xff1b; 3、使用Java Bean的方式传递参数&#xff1b; 一、插入数据主键ID获取 一般我们在做业务开发时&#xff0c;经常会遇到插入一条数据并使用到插入数据的ID情况。如…

网络安全事件应急演练方案

文章目录1 总则1.1 应急演练定义1.2 应急演练目的1.3 应急演练原则1.4 应急演练分类1.4.1 按组织形式划分1.4.2 按内容划分1.4.3 按目的与作用划分1.4.4 按组织范围划分1.5 应急演练规划2 应急演练组织机构2.1 组织单位2.1.1 领导小组2.1.2 策划小组2.1.3 保障小组2.1.4 评估小…