《安富莱嵌入式周报》第348期:开源低功耗测试仪,开源创意万用表,续航100-300小时,开源PCB电机,自制shell和网络协议栈,开源水培自动化系统

周报汇总地址:嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz!

视频版:

https://www.bilibili.com/video/BV1Tzr9Y3EQ7/

《安富莱嵌入式周报》第348期:开源低功耗测试仪,开源创意万用表,续航100-300小时,开源PCB电机,自制shell和网络协议栈,开源水培自动化系统

目录:

1、开源低功耗测试仪

2、开源创意万用表,续航100-300小时

3、低级编程和优化实现

4、资讯

(1)兆易创新推出EtherCAT从站控制芯片GD32H75E系列

(2)Nordic的nRF54L系列已经广泛用于开发

(3)英伟达Jetson家族的Jetson Orin Nano推出升级版,算力提升1.7倍至67TOPS

(4)ST要推出一个WiFi6 & BLE5.3模组,支持UART/SPI接口,支持Matter,速度40Mbps

(5)OpenAI推出的嵌入式实时SDK开发包

(6)杰发科技AC7803x通过功能安全ISO 26262 ASIL B产品认证

(7)沁恒的IDE MounRiver Studio Ⅱ发布

(8)RL-TCPnet V8.x增加了一个TCP, UDP速度测试文件netio.c

(9)圣诞节前,Embedded Studio迎来最后一次更新V8.22版本发布,支持浏览MarkDown文件

(10) 极海G32R501实时控制MCU正式发布,双核Cortex-M52

5、PCB 电机即使在 16 亿次旋转后也能保持稳定

6、手把手自制实现

(1)手把手实现个简易C版shell

(2)手把手自制TCP/IP网络协议栈教程

7、开源水培自动化系统

8、emWin模拟器6.48发布,同时配套的AppWizard V1.56发布,横竖屏旋转和文本滑动案例

9、开源加密库Mbed,Cyclone,Wolf和NetX性能

10、H7-TOOL本周进展

(1)H7-TOOL固件2.27发布,新增加40多款芯片脱机烧录,含多款车轨芯片,发布LUA API手册,CAN助手增加负载率,错误状态信息检测

(2)历时456天,实测H7-TOOL的RTC不断电,不校准,快了44分钟

(3)客户H7-TOOL 串口记录小程序 Lua分享


一、开源低功耗测试仪

OpenEPT - Drive innovations in the field of low-powered technologies

所有资料全开源,还有一个上位机,方便查看功耗波形。

OpenEPT的主要目标是为工程师和研究人员提供一套全面的微控制器分析工具,促进对基于微控制器平台功耗的准确分析

原理图: Current_sense_v1_0.pdf (1.96 MB)

固件: Firmware-master.zip (6.98 MB)

PCB: OpenEPT_V1_1_KiCad.zip (5.31 MB)

最新版效果:

之前版本效果:

二、开源创意万用表,续航100-300小时

https://github.com/jduffy105/HydraMeter_0.4

HydraMeter_0.4-main.zip (86.24MB)

有一些功能希望在万用表中具备的,但大多数现有的商业万用表并不常见(这也是这个项目的主要原因)。

1、板载隔离 USB 接口。

2、高采样率和图形(波形)显示选项。

3、可拆卸显示屏

4、长电池寿命 ,最低 100 小时,最好能延长到约 300 小时。

5、同时测量电压和电流并进行功率计算

6、手感和操作良好。

7、保险丝易于更换,无需拆卸万用表。

8、没有十字头螺钉,所有组装/拆卸/维修都应只需一个尺寸的内六角扳手即可完成。

9、如果使用可充电电池,应通过 USB 充电。

10、主要功能的完全暴露界面。没有菜单或软键来更改 AC/DC 或范围或在电阻和连续性之间切换或任何这些。只需查看万用表的按钮/开关/旋钮,就应立即知道它处于什么状态。还可以在不到 2 秒的时间内配置万用表的任何"核心"功能。对于更高级的功能,如记录或无线通信,菜单是可以接受的。

主要(香蕉插孔)功能包括:

1、交流和直流电压,从几毫伏到约 250V

2、交流和直流电流,从约 10 微安到 10A

3、电阻/连续性/二极管测试。约 10 欧姆到约 1 兆欧,二极管测试 >3V

4、功率测量(同时测量电压和电流,包括显示所有 3 个)

次要 XT-60 连接器,具有独立功能:

1、直流电源来自最多 12S 电池组

2、直流电压,至少 60V

3、直流电流,至少 30A,但可以承受更高的峰值电流而不会损坏或熔断保险丝。

4、电压、电流和功率的脉冲/峰值测量,时间尺度为毫秒。

三、低级编程和优化实现

Complexity Models - Algorithmica

这个是学习低级编程和优化的好网站,特此给大家分享下

四、资讯

1、兆易创新推出EtherCAT从站控制芯片GD32H75E系列

用 Cortex-M7高性能内核,主频600MHz

兆易创新推出EtherCAT®从站控制芯片,工业自动化的卓越选择-新闻-兆易创新 GigaDevice | 官方网站

2、Nordic的nRF54L系列已经广泛用于开发

nRF54L Series now widely available for development - Blogs - Nordic Blog - Nordic DevZone

各种开发环境和芯片购买都已经就绪

下面是对应推出的开发板

3、英伟达Jetson家族的Jetson Orin Nano推出升级版,算力提升1.7倍至67TOPS

Jetson Orin Nano Super Developer Kit | NVIDIA

4、ST要推出一个WiFi6 & BLE5.3模组,支持UART/SPI接口,支持Matter,速度40Mbps

https://www.st.com/content/st_co ... ead-module-z13.html

预计明年第1季度上线,初步从功能上看没问题,就看价格了,当前还没有公布

1、支持CubeMX为各种型号MCU/MPU提供生成代码支持。

2、提供软件包The X-CUBE-ST67W61

3、支持UART和SPI接口

4、BLE速度2Mbps,WiFi速度40Mbps。

5、模组主控芯片采用高通的QCC743

5、OpenAI推出的嵌入式实时SDK开发包

https://github.com/openai/openai-realtime-embedded-sdk

6、杰发科技AC7803x通过功能安全ISO 26262 ASIL B产品认证

通过ISO 26262 ASIL B功能安全产品认证的AC7803x,采用Arm Cortex M0+内核,主频达到64MHz,具备高可靠性,符合AEC-Q100车规要求

7、沁恒的IDE MounRiver Studio Ⅱ发布

MounRiver Studio

从V2.1.0开始,框架更换至更现代的VSCode,并深度定制开发

8、RL-TCPnet V8.x增加了一个TCP, UDP速度测试文件netio.c

https://github.com/ARM-software/MDK-Middleware/tree/main/Test/Network/netio

这个测试结果没有针对GCC做memcpy和字节复制粘贴优化

9、圣诞节前,Embedded Studio迎来最后一次更新V8.22版本发布,支持浏览MarkDown文件

SEGGER Embedded Studio

ARM和RISC-V二合一版

2024年,SES更新还是挺勤快的,一共更新了13个版本

更新记录,其他家的IDE编辑器,基本都转向支持VS Code。而Embedded Studio没有,还在持续更新自己的编辑器

10. 极海G32R501实时控制MCU正式发布,双核Cortex-M52

五、PCB 电机即使在 16 亿次旋转后也能保持稳定

https://github.com/microbotsio/MotorCell/tree/main

https://hackaday.com/2024/12/17/ ... -1-6-billion-spins/

视频

《安富莱嵌入式周报》第348期:2024.12.13--2025.01.07 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz!

一个由 20 个测试电机组成的阵列,所有电机都以大约 37,000 RPM 的恒定速度连续运行。一个月后,拆卸并检查了每个单元。每台电机每天旋转超过 5300 万次,当月结束时旋转超过 16 亿次。没有发现内部划痕或其他损坏的迹象

六、手把手实现个简易C版shell

Tutorial - Write a Shell in C • Stephen Brennan

非常不错的文章,大家有兴趣可以看看

手把手自制TCP/IP网络协议栈教程

art 1, Ethernet & ARP: Let's code a TCP/IP stack, 1: Ethernet & ARP

Part 2, IPv4 & ICMPv4: Let's code a TCP/IP stack, 2: IPv4 & ICMPv4

Part 3, TCP Basics & Handshake: Let's code a TCP/IP stack, 3: TCP Basics & Handshake

Part 4, TCP Data Flow & Socket API: http://www.saminiir.com/lets-cod ... ta-flow-socket-api/

Part 5, TCP Retransmission: http://www.saminiir.com/lets-cod ... tcp-retransmission/

这个也是一个非常不错的系列教程,有兴趣可以挑战下自己,写个协议栈试试

七、开源水培自动化系统

openhydroponics · GitLab
RootMaster

农业方便的开源搜集的不多,这次再为大家分享一个

八、emWin模拟器6.48发布,同时配套的AppWizard V1.56发布,横竖屏旋转和文本滑动案例

AppWizard

AppWizardTrial_V156_648_Install.exe (92.21MB)

emWin模拟器:

SeggerEval_WIN32_MSVC_GUI_V648.zip (74.96MB)

emWin6.48更新记录:

新版AppWizard:

新增案例效果:

九、开源加密库Mbed,Cyclone,Wolf和NetX性能

NetX有两个:

NetX Crypto

NetX Secure(TLS)

Mbed有两个:

MbedTLS

MbedCrypto

Cyclone有两个:

Cyclone Crypto

Cyclone SSL

Wolf有两个:

wolfSSL

wolfCrypt

在MDK RTE里面都有集成

MbedTLS

搜到一个2017年的测试

https://os.mbed.com/teams/mbed-o ... 60cd5226d/main.cpp/

cs 复制代码
SHA-256                  :       1673 Kb/s,         70 cycles/byte
SHA-512                  :        546 Kb/s,        215 cycles/byte
AES-CBC-128              :       1428 Kb/s,         82 cycles/byte
AES-CBC-192              :       1260 Kb/s,         93 cycles/byte
AES-CBC-256              :       1127 Kb/s,        104 cycles/byte
AES-GCM-128              :        486 Kb/s,        242 cycles/byte
AES-GCM-192              :        464 Kb/s,        253 cycles/byte
AES-GCM-256              :        445 Kb/s,        264 cycles/byte
AES-CCM-128              :        610 Kb/s,        192 cycles/byte
AES-CCM-192              :        547 Kb/s,        214 cycles/byte
AES-CCM-256              :        496 Kb/s,        237 cycles/byte
CTR_DRBG (NOPR)          :       1139 Kb/s,        102 cycles/byte
CTR_DRBG (PR)            :        826 Kb/s,        142 cycles/byte
HMAC_DRBG SHA-256 (NOPR) :        193 Kb/s,        611 cycles/byte
HMAC_DRBG SHA-256 (PR)   :        170 Kb/s,        695 cycles/byte
RSA-2048                 :      28 ms/ public
RSA-2048                 :     953 ms/private
RSA-4096                 :      93 ms/ public
RSA-4096                 :    5327 ms/private
ECDSA-secp384r1          :     451 ms/sign
ECDSA-secp256r1          :     304 ms/sign
ECDSA-secp384r1          :     863 ms/verify
ECDSA-secp256r1          :     594 ms/verify
ECDHE-secp384r1          :     829 ms/handshake
ECDHE-secp256r1          :     566 ms/handshake
ECDHE-Curve25519         :     533 ms/handshake
ECDH-secp384r1           :     407 ms/handshake
ECDH-secp256r1           :     281 ms/handshake
ECDH-Curve25519          :     268 ms/handshake

wolfssl

https://github.com/wolfSSL/wolfssl/blob/master/IDE/STM32Cube/STM32_Benchmarks.md#stm32h753zi

cs 复制代码
Supports RNG, AES CBC/GCM and SHA-2 acceleration. Note: HW RNG on for all tests
  
Board: NUCLEO-H753ZI CPU: Cortex-M7 at 480 MHz IDE: STM32CubeIDE RTOS: FreeRTOS
  
STM32H753ZI (STM Crypto/Hash Acceleration, -Os, SP-ASM Cortex-M)
------------------------------------------------------------------------------
wolfSSL version 4.4.1
------------------------------------------------------------------------------
wolfCrypt Benchmark (block bytes 1024, min 1.0 sec each)
RNG                875 KB took 1.019 seconds,  858.685 KB/s
AES-128-CBC-enc     10 MB took 1.000 seconds,   10.400 MB/s
AES-128-CBC-dec     10 MB took 1.000 seconds,   10.327 MB/s
AES-192-CBC-enc     10 MB took 1.000 seconds,   10.425 MB/s
AES-192-CBC-dec     10 MB took 1.000 seconds,   10.278 MB/s
AES-256-CBC-enc     10 MB took 1.000 seconds,   10.376 MB/s
AES-256-CBC-dec     10 MB took 1.000 seconds,   10.278 MB/s
AES-128-GCM-enc      9 MB took 1.000 seconds,    8.789 MB/s
AES-128-GCM-dec      9 MB took 1.000 seconds,    8.716 MB/s
AES-192-GCM-enc      9 MB took 1.000 seconds,    8.740 MB/s
AES-192-GCM-dec      9 MB took 1.000 seconds,    8.691 MB/s
AES-256-GCM-enc      9 MB took 1.000 seconds,    8.765 MB/s
AES-256-GCM-dec      9 MB took 1.000 seconds,    8.691 MB/s
CHACHA               4 MB took 1.000 seconds,    4.443 MB/s
CHA-POLY             3 MB took 1.004 seconds,    3.040 MB/s
POLY1305            13 MB took 1.000 seconds,   12.671 MB/s
SHA-256              9 MB took 1.000 seconds,    8.691 MB/s
HMAC-SHA256          8 MB took 1.000 seconds,    8.496 MB/s
RSA     2048 public         82 ops took 1.019 sec, avg 12.427 ms, 80.471 ops/sec
RSA     2048 private         4 ops took 1.749 sec, avg 437.250 ms, 2.287 ops/sec
DH      2048 key gen         5 ops took 1.000 sec, avg 200.000 ms, 5.000 ops/sec
DH      2048 agree           6 ops took 1.200 sec, avg 200.000 ms, 5.000 ops/sec
ECC      256 key gen       121 ops took 1.000 sec, avg 8.264 ms, 121.000 ops/sec
ECDHE    256 agree          56 ops took 1.016 sec, avg 18.143 ms, 55.118 ops/sec
ECDSA    256 sign           78 ops took 1.007 sec, avg 12.910 ms, 77.458 ops/sec
ECDSA    256 verify         36 ops took 1.004 sec, avg 27.889 ms, 35.857 ops/sec
Benchmark complete
Benchmark Test: Return code 0

Cyclone

部分截图

STM32H7 Crypto Benchmark | SSL TLS SSH IPsec TCP

十、H7-TOOL本周进展

H7-TOOL详细介绍:H7-TOOL开发工具,1拖4/16脱机烧录,高速DAPLINK,RTOS Trace,CAN/串口助手, 示波器, RTT等,支持WiFi,以太网,高速USB和手持 - H7-TOOL开发工具 - 硬汉嵌入式论坛 - Powered by Discuz!

1、H7-TOOL固件2.27发布,新增加40多款芯片脱机烧录,含多款车轨芯片,发布LUA API手册,CAN助手增加负载率,错误状态信息检测

H7-TOOL固件2.27发布,新增加40多款芯片脱机烧录,含多款车轨芯片,发布LUA API手册,CAN助手增加负载率,错误状态信息检测 - H7-TOOL开发工具 - 硬汉嵌入式论坛 - Powered by Discuz!

2、历时456天,实测H7-TOOL的RTC不断电,不校准,快了44分钟

【测试条件】

1、这个TOOL已经连续运行656天未断电过,使用的STM32H7内置RTC。

2、RTC时间在2023年9月26号进行了校准,并开启测试。

3、运行期间,未做任何手动校准,软件校准和NTP, SNTP网络校准。

【测试结果】

1、第1次测试结果,从2023年9月26号到2024年4月5号,共计192天,

实测快了13分钟。

2、第2次测试结果,从2023年9月26号到2024年12月26号,共计456天

实测快了将近44分钟。

【误差原因】

因为晶振对温度敏感,下面是典型的温度对晶振影响:

STM32支持LSI内部低速时钟或者LSE外置低速时钟,使用外部就要接32768Hz的晶体。

一个月的典型误差50秒左右。

【校准】

以外置RTC DS3231为例,精度是:

Accuracy ±2ppm from 0°C to +40°C ---- 每个月30天算的最大误差是2*10^-6 * 24 * 60 *60 * 30 = 5.184秒

Accuracy ±3.5ppm from -40°C to +85°C ---- 每个月30天算的最大误差是3.5*10^-6 * 24 * 60 *60 * 30 = 9.072秒

使用STM32内部RTC不行,白天温度不稳定的话,当天的误差差不多就有1-2秒。主要是晶振不是温补的。

ST提供了一些方案,但是不实用:

方法1:Smooth digital calibration

这种方法使用比较麻烦,当前提供的案例需要用户使用超高精度的信号时钟,精确到几个ppm,发送这个信号给板子做校准。然后示波器测量实际的输出效果来确实是否采用这个校准值。

方法2: RTC时钟同步

官方提供的例子没什么参考价值,倒腾了高精度的HSE来实现。

方法3: 使用50Hz/60Hz高精度参考时钟辅助

这个实用性也有点差。

3、当前推荐方案

(1)使用外置温补晶振,但价格略高,10块钱左右:

(2)使用自带温补的RTC芯片。

(3)带网络的,可以使用NTP, SNTP校准

【RTC校准软件包】

1、https://www.st.com/en/embedded-software/x-cube-rtc.html

2、开源Sensor Watch Pro智能手表,号称一年的误差不到1秒
开源Sensor Watch Pro智能手表,一年的误差不到1秒 - 单片机 - 硬汉嵌入式论坛 - Powered by Discuz!

3、H7-TOOL 串口记录小程序 Lua分享

H7-TOOL 串口记录小程序 Lua分享 - H7-TOOL开发工具 - 硬汉嵌入式论坛 - Powered by Discuz!

来自客户processor的分享

为了提高系统程序的稳定性,且方便查找程序在长期运行过程中发生报错问题。就需要调试工具长期接入被测设备,通电1,2天,记录设备运行数据,最后电脑记事本ctrl+F查找报错点和报错时间;亦或者用excel导入做图标数据分析等都可以使用本lua小程序。

目前我正使用此小程序用于记录设备上发生的链表剩余可分配空间不足,运行参数检查,通讯丢包等异常查找等非常方便。期待坛友们对此代码一起共同优化。

相关推荐
唐僧不爱八戒1 小时前
LibreOffice 自动化操作目录
运维·自动化
文慧的科技江湖2 小时前
AI平台如何实现推理?数算岛是一个开源的AI平台(主要用于管理和调度分布式AI训练和推理任务。)
人工智能·架构·开源·训练·推理
梦醒三叹2 小时前
自动化 Markdown 图片上传到 GitHub
运维·自动化·github
MervynZ3 小时前
Agent to Agent(A2A)一文全了解
人工智能·google·开源
人机与认知实验室3 小时前
无人驾驶是自动化还是智能化?
运维·自动化
努力犯错玩AI3 小时前
HuggingFace镜像站-AI 快站使用说明文档
人工智能·后端·开源
小马爱打代码5 小时前
RPC与其他通信技术的区别,以及RPC的底层原理
网络·网络协议·rpc
阿威昂5 小时前
计算机网络——传输层(Udp)
网络协议·计算机网络·udp
说私域6 小时前
整合线下资源视角下定制开发开源AI智能名片S2B2C商城小程序的应用研究
人工智能·小程序·开源·零售
几米哥7 小时前
Llama 4全面评测:官方数据亮眼,社区测试显不足之处
开源·llm·llama