《安富莱嵌入式周报》第320期:键盘敲击声解码, 军工级boot设计,开源CNC运动控制器,C语言设计笔记,开源GPS车辆跟踪器,一键生成RTOS任务链表

news/2024/7/10 21:43:02 标签: 计算机外设, 开源, c语言

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

 

视频版:

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

《安富莱嵌入式周报》第320期:键盘敲击声解码, 军工级boot设计,开源CNC运动控制器,C语言设计笔记,开源GPS车辆跟踪器,一键生成RTOS任务链表



1、键盘敲击声解码

https://arxiv.org/abs/2308.01074

键盘敲击声被解码的话,我们使用键盘输入密码将被方便的解码出来。这篇文章介绍了一种使用最先进的深度学习模型,以便使用手机麦克风对笔记本电脑敲击键盘分析。实际测试训练手机,可以实现97%的准确率,使用Zoom视频会议软件可以实现93%的精度。

 

 


2、4轴CNC运动控制器,搭载开源库grblHAL,高度优化的 C 语言编写,能够保持高达300kHz的频率,稳定、无抖动的控制脉冲

https://github.com/phil-barrett/PicoCNC/

可以为机床,铣床等提供CNC运动控制器,

规格:

 

效果:

 

软件是采样的开源库grblHA,高度优化的 C 语言编写,能够保持高达300kHz的频率,稳定、无抖动的控制脉冲,当前已经支持了15款单片机。

grblHAL Web Builder

为了方便使用,也可以在线选择型号,生成固件,无需用户自己折腾

 


3、开源低功耗4G-LTE GPS车辆跟踪器,具有蓝牙和Wi-Fi连接功能

介绍:https://docs.valetron.com/wiki/p ... k-v4-vts-io-int-lte
原理图:https://docs.valetron.com/wiki/p ... esp32-c3/schematics
固件:https://docs.valetron.com/wiki/p ... s-esp32-c3/firmware

 

 


4、软件

(1)是德科技推出PathWave ADS 2024,助力加速 5G 毫米波设计,引领 6G 开发

https://www.keysight.com.cn/cn/z ... 4-to-accelerat.html

是德科技推出PathWave高级设计系统(ADS)2024,这是一款电子设计自动化(EDA)软件套件,为芯片设计人员提供了新的毫米波(mmWave)和亚太赫兹(sub-THz)频率功能,可加速5G毫米波产品设计并预测6G无线通信开发的要求。

 


(2)兆松科技 ZCC 工具链全面支持 ANDES 晶心科技 RISC-V 处理器

兆松科技 ZCC 工具链全面支持 Andes 晶心科技 RISC-V 处理器 – 兆松科技

晶心科技是 32 及 64 位高效能、低功耗 RISC-V 处理器核心领导供货商、RISC-V 国际协会的创始首席会员。ZCC 工具链相较晶心科技 AndeSight IDE 所提供的 LLVM 编译器,可以进一步将AndesCore AX45 双发射 8 级流水线处理器 CoreMark 分数提升 6%,在 Embench-IoT(-O3)测试中同时实现了 18.9% 的性能提升和 11.8% 的代码密度优化;在 Embench-IoT(-Os)测试同时实现了 10% 的代码密度优化和 9.1% 的性能提升

 


(3)nRF Connect for VS Code 加速物联网开发

https://devzone.nordicsemi.com/n ... -connect-for-vscode

这个是Nordic新发的一篇博文,开头有一句至理名言:“If the only tool you have is a hammer, you tend to see every problem as a nail”, 如果你拥有的唯一工具是锤子,你往往会把每个问题都视为钉子,为工作选择合适的工具至关重要。

a、丰富的案例

 

b、设备树可视化编程

 

c、应用程序KConfig配置

 

d、调试

 

e、内存报告

 


(4) emWin6.34模拟器发布,增加Cortex-M85和A系NEON扩展的硬件逆离散余弦IDCT支持

模拟器含手册下载:

SeggerEval_WIN32_MSVC_MinGW_GUI_V634.zip (80.81MB)

更新记录:

 


(5)STM32L5的ThreadX全家桶软件包升级至V2.0.0

GitHub - STMicroelectronics/x-cube-azrtos-l5: X-CUBE-AZRTOS-L5 (Azure RTOS Software Expansion for STM32Cube) provides a full integration of Microsoft Azure RTOS in the STM32Cube environment for the STM32L5 series of microcontrollers.

 


5、硬件

(1)ST推出汽车机器学习评估板SL-AIAID012401V1

https://blog.st.com/aekd-aicar1/

ST首款可识别四种汽车状态的机器学习解决方案:停车、正常路况、颠簸路面、打滑或转弯

 


(2) 安世半导体推出纽扣电池长续航管理芯片NBM7100ABQ

https://www.nexperia.com/product ... ics/NBM7100ABQ.html

NBM7100A/B 是一款电池能量管理器件,设计用于需要突发电流负载的低电压、低功耗应用时可最大限度地提高不可充电原电池的可用容量.

NBM7100A/B 包含两级高效 DC-DC 转换和智能学习算法。第一级DC-DC转换以低恒流将能量从锂电池传输到电容存储元件。充电后,第二个 DC-DC 转换周期利用该存储的能量在 VDH 输出引脚上提供具有高脉冲负载电流能力。电池永远不会直接受到大负载脉冲电流的影响,从而延长电池寿命,实现更可预测的电池寿命

 

(3)雅特力发布首款车规级MCU,AT32A403A通过AEC-Q100车规认证

AT32A403A通过AEC-Q100 Grade2车规级可靠性认证,满足功能安全标准车规级MCU的能力,可用于环境温度范围-40°C到105°C的大部分车载应用环境

 

(4)思瑞浦推出多通道高精度ADC—TPC517系列!16位分辨率,最高1MSPS采样率

 


6、军工级系统boot设计

Designing and implementing secure boot for military-grade systems - Military Embedded Systems

这是一篇非常不错的相关知识普及贴,军用级系统需要高级别的安全性来保护敏感信息和操作免遭未经授权的访问、修改。保护此类系统的关键组件之一是安全启动,它确保在系统启动期间只能加载受信任的固件和软件

 


7、LPython:新颖、快速、可重定向的 Python 编译器

https://github.com/lcompilers/lpython
LPython: Novel, Fast, Retargetable Python Compiler -

LPython是一个Python编译器,可以将type annotated 动态类型的Python代码编译为优化的机器代码。LPython提供了几个后端,如LLVM,C,C++,WASM,Julia和x86。LPython 具有快速编译和运行时性能。LPython还提供即时(JIT)编译以及与CPython的无缝互操作性。


 

 测试代码:

[Python]

from lpython import i32
 
def main():
    x: i32
    x = (2+3)*5
    print(x)
 
main()

生成C和LLVM

[C]

$ lpython examples/expr2.py --show-c
#include <inttypes.h>
 
#include <stdlib.h>
#include <stdbool.h>
#include <stdio.h>
#include <string.h>
#include <lfortran_intrinsics.h>
 
void main0();
void __main____global_statements();
 
// Implementations
void main0()
{
    int32_t x;
    x = (2 + 3)*5;
    printf("%d\n", x);
}
 
void __main____global_statements()
{
    main0();
}
 
int main(int argc, char* argv[])
{
    _lpython_set_argv(argc, argv);
    __main____global_statements();
    return 0;

[C]

$ lpython examples/expr2.py --show-llvm
; ModuleID = 'LFortran'
source_filename = "LFortran"
 
@0 = private unnamed_addr constant [2 x i8] c" \00", align 1
@1 = private unnamed_addr constant [2 x i8] c"\0A\00", align 1
@2 = private unnamed_addr constant [5 x i8] c"%d%s\00", align 1
 
define void @__module___main_____main____global_statements() {
.entry:
  call void @__module___main___main0()
  br label %return
 
return:                                           ; preds = %.entry
  ret void
}
 
define void @__module___main___main0() {
.entry:
  %x = alloca i32, align 4
  store i32 25, i32* %x, align 4
  %0 = load i32, i32* %x, align 4
  call void (i8*, ...) @_lfortran_printf(i8* getelementptr inbounds ([5 x i8], [5 x i8]* @2, i32 0, i32 0), i32 %0, i8* getelementptr inbounds ([2 x i8], [2 x i8]* @1, i32 0, i32 0))
  br label %return
 
return:                                           ; preds = %.entry
  ret void
}
 
declare void @_lfortran_printf(i8*, ...)
 
define i32 @main(i32 %0, i8** %1) {
.entry:
  call void @_lpython_set_argv(i32 %0, i8** %1)
  call void @__module___main_____main____global_statements()
  ret i32 0
}
 
declare void @_lpython_set_argv(i32, i8**)

 

8、C语言程序设计笔记,适合想提高C/C++编程能力的

根据开头的说明,此笔记不适合初学者,也不适合专家,适合想熟悉C/C++的人。

笔记一共64页,内容不多。

  C-notes-en.pdf (598.73 KB)

 

 

 

 


9、波形图绘制软件waveme

感谢坛友fantasyhpu的分享。
波形图绘制软件waveme - 开发环境 - 硬汉嵌入式论坛 - Powered by Discuz!

waveme是一款免费的波形图绘制软件,可以输出BMP、PNG、SVG、TIFF、PDF等多种格式。

 


10、H7-TOOL本周进展

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

H7-TOOL的FreeRTOS,RTX5,ThreadX,uCOS-II和uCOS-III一键链表查看功能全部制作完成

1、之前推出了H7-TOOL的RTOS Trace功能,已经支持RTX5,ThreadX,uCOS-III,uCOS-II和FreeRTOS,特色是不需要目标板额外做任何代码,实时检测RTOS任务执行情况,支持在线和脱机玩法。
     【原创】H7-TOOL的RTOS Trace操作说明,不需要目标板额外做任何代码,实时检测RTOS任务执行情况,支持在线和脱机玩法2023-07-14 - H7-TOOL开发工具 - 硬汉嵌入式论坛 - Powered by Discuz!

 

 


2、但展示还不够直观,所以花了些时间研究图形化链表方式展示任务管理,从源码的角度来看,OS内核源码就是通过各种链表组装起来的,为了让大家更直观的看内核实现,开始支持一键查看链表,这种链表会让大家心里更有底。

FreeRTOS:

 


uCOS-II:

 
uCOS-III:

 
ThreadX:

 
RTX5:

 


http://www.niftyadmin.cn/n/4944166.html

相关文章

【Git】(四)子模块

1、增加子模块 进入准备添加子模块所在的目录&#xff0c;例如library。 git submodule add -b 1.0.0.0 gitgitee.com:sunriver2000/SubModule.git参数-b用于指定子模块分支。 2、更新子模块 git submodule update --progress --init --recursive --force --remote -- "…

[论文笔记]Self-Attention with Relative Position Representations

引言 这是论文Self-Attention with Relative Position Representations的阅读笔记。这是一篇18年的论文。 仅依赖于注意力机制的Transformer没有显示地建模相对或绝对信息,而是需要把绝对位置表示加到输入中。在这篇文章中,作者提出了一种相对方法扩展了自注意机制,以有效…

深入学习SpringCloud Alibaba微服务架构,揭秘Nacos、Sentinel、Seata等核心技术,助力构建高效系统!

课程链接&#xff1a; 链接: https://pan.baidu.com/s/1hRN0R8VFcwjyCTWCEsz-8Q?pwdj6ej 提取码: j6ej 复制这段内容后打开百度网盘手机App&#xff0c;操作更方便哦 --来自百度网盘超级会员v4的分享 课程介绍&#xff1a; &#x1f4da;【第01阶段】课程简介&#xff1a;全…

2022年电赛C题——小车跟随行驶系统——做题记录以及经验分享

前言 自己打算将做过的电赛真题&#xff0c;主要包含控制组的&#xff0c;近几年出现的小车控制题目&#xff0c;自己做过的真题以及在准备电赛期间刷真题出现的问题以及经验分享给大家 这次带来的是22年电赛C题——小车跟随行驶系统&#xff0c;这道题目指定使用的是TI的单片…

神经网络基础-神经网络补充概念-23-神经网络的梯度下降法

概念 神经网络的梯度下降法是训练神经网络的核心优化算法之一。它通过调整神经网络的权重和偏差&#xff0c;以最小化损失函数&#xff0c;从而使神经网络能够逐渐逼近目标函数的最优值。 步骤 1损失函数&#xff08;Loss Function&#xff09;&#xff1a; 首先&#xff0c…

开发者本地搭建性能监测工具(Windows)

ElasticSearch 8.9.0 开发模式安装 JDK安装 官方提供版本与JDK支持关系&#xff1a;https://www.elastic.co/cn/support/matrix#matrix_jvm 我们安装Elasticsearch 8.9.x&#xff0c;看到支持的最低JDK版本是17。 JDK&#xff08;Windows/Mac含M1/M2 Arm原生JDK&#xff09;…

LA@n维向量@解析几何向量和线性代数向量

文章目录 概念n维向量向量类型实向量和复向量行向量和列向量行列向量的转换特殊向量向量运算 矩阵的向量分块&#x1f47a; 解析几何向量和线性代数向量&#x1f47a;向量空间 n n n维向量空间 n n n维空间的 n − 1 n-1 n−1维超平面 概念 n维向量 由 n n n个有次序的数 a …

flask接口请求频率限制

pip install Flask-Limiter Flask-Limiter官方文档 基本使用 默认是用IP作为key进行计数的&#xff0c;你也可以自定义key&#xff0c;具体看官网 from flask import Flask from flask_limiter import Limiter from flask_limiter.util import get_remote_addressapp Flas…