当前位置: 首页 > news >正文

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

周报汇总地址:嵌入式周报 - 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 i32def main():x: i32x = (2+3)*5print(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 1define void @__module___main_____main____global_statements() {
.entry:call void @__module___main___main0()br label %returnreturn:                                           ; preds = %.entryret void
}define void @__module___main___main0() {
.entry:%x = alloca i32, align 4store i32 25, i32* %x, align 4%0 = load i32, i32* %x, align 4call 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 %returnreturn:                                           ; preds = %.entryret 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:

 

相关文章:

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

周报汇总地址&#xff1a;嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - Powered by Discuz! 视频版&#xff1a; https://www.bilibili.com/video/BV1Cr4y1d7Mp/ 《安富莱嵌入式周报》第320期&#xff1a;键盘敲击…...

DRF 缓存

应用环境 django4.2.3 &#xff0c;python3.10 由于对于服务而言&#xff0c;有些数据查询起来比较费时&#xff0c;所以&#xff0c;对于有些数据&#xff0c;我们需要将其缓存。 最近做了一个服务&#xff0c;用的时 DRF 的架构&#xff0c;刚好涉及缓存&#xff0c;特此记…...

Collada .dae文件格式简明教程【3D】

当你从互联网下载 3D 模型时&#xff0c;可能会在格式列表中看到 .dae 格式。 它是什么&#xff1f; 推荐&#xff1a;用 NSDT编辑器 快速搭建可编程3D场景。 1、Collada DAE概述 COLLADA是COLLAborative Design Activity&#xff08;中文&#xff1a;协作设计活动&#xff09…...

在K8s上处理nginx

基本说明 创建一个名为ssl的TLS类型的Secret对象&#xff0c;用于存储证书和密钥信息。 kubectl create secret tls ssl --certserver.crt --keyserver.key配置Nginx的events块&#xff0c;设置worker连接数为1024。 events {worker_connections 1024; }配置Nginx的http块&a…...

嵌入式:ARM Day4

一、自己编写代码实现三盏灯点亮 源码&#xff1a; .text .global _start _start: 进行一次初始化bl RCC_INITbl LED1_INITbl LED2_INITbl LED3_INITb looploop: 循环开关灯bl LED1_ONbl delay_1sbl LED1_OFFbl delay_1sbl LED2_ONbl delay_1sbl LED2_OFFbl delay_1sbl…...

SpringBoot案例-员工管理-分页条件查询

根据页面原型&#xff0c;明确需求 页面原型 需求 查看接口文档 接口文档的链接如下&#xff1a; 【腾讯文档】SpringBoot案例所需文档 https://docs.qq.com/doc/DUkRiTWVaUmFVck9N 思路分析 分页条件查询就时将条件查询的结果进行分页展示&#xff0c;由于有的条件可能设…...

python控制obs实现无缝切换场景!obs-websocket-py

前言 最近一直在研究孪生数字人wav2lip。目前成果可直接输入高清嘴型&#xff0c;2070显卡1分钟音频2.6分钟输出。在直播逻辑上可以做到1比1.3这样&#xff0c;所以现在开始研究直播。在逻辑上涉及到了无缝切换&#xff0c;看到csdn上有一篇文章还要vip解锁。。。那自己研究吧…...

Vue3实现图片懒加载及自定义懒加载指令

Vue3实现图片懒加载及自定义懒加载指令 前言1.使用vue3-lazyload插件2.自定义v-lazy懒加载指令2.1 使用VueUse2.2 使用IntersectionObserver 前言 图片懒加载是一种常见性能优化的方式&#xff0c;它只去加载可视区域图片&#xff0c;而不是在网页加载完毕后就立即加载所有图片…...

LeetCode150道面试经典题-- 环形链表(简单)

1.题目 给你一个链表的头节点 head &#xff0c;判断链表中是否有环。 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 为了表示给定链表中的环&#xff0c;评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置&…...

音视频学习-音视频基础

文章目录 一、 音视频录制原理二、音视频播放原理三、图像基础概念1.像素2.分辨率3.位深4.帧率5.码率6.Stride跨距 四、RGB、YUV1.RGB2.YUV1. 4:4:4格式2. 4:2:2格式3. 4:2:0格式4. 4:2:0数据格式对比 3.RGB和YUV的转换4.YUV Stride对齐问题 五、视频的主要概念1.基本概念2.I P…...

asp.net core webapi如何执行周期性任务

使用Api执行周期性任务 第一种&#xff0c;无图形化界面1.新建类&#xff0c;继承IJob&#xff0c;在实现的方法种书写需要周期性执行的事件。2.编写方法类&#xff0c;定义事件执行方式3.在启动方法中&#xff0c;进行设置&#xff0c;.net 6中在program.cs的Main方法中&#…...

快速搭建图书商城小程序的简易流程与优势

很多人喜欢阅读电子书&#xff0c;又有很多人依旧喜欢实体书&#xff0c;而实体书店拥有一个图书商城小程序便成为了满足用户需求的理想选择。如果您也想进入这一充满潜力的领域&#xff0c;但担心开发难度和复杂流程&#xff0c;别担心&#xff01;您能做到快速搭建一个专业、…...

C++ template 循环

在元编程循环中&#xff0c;我们不需要用while&#xff0c;for来循环&#xff0c;一般情况下都要用递归&#xff0c;例如&#xff1a; #include <iostream> using namespace std; template <int Head, int...Data> constexpr static int num Head num<Data..…...

时序预测 | MATLAB实现基于CNN-BiGRU卷积双向门控循环单元的时间序列预测-递归预测未来(多指标评价)

时序预测 | MATLAB实现基于CNN-BiGRU卷积双向门控循环单元的时间序列预测-递归预测未来(多指标评价) 目录 时序预测 | MATLAB实现基于CNN-BiGRU卷积双向门控循环单元的时间序列预测-递归预测未来(多指标评价)预测结果基本介绍程序设计参考资料 预测结果 基本介绍 MATLAB实现基于…...

mysql 数据备份和恢复

操作系统&#xff1a;22.04.1-Ubuntu mysql 版本&#xff1a;8.033 binlog 介绍 binlog 是mysql 二进制日志 binary log的简称&#xff0c;可以简单理解为数据的修改记录。 需要开启binlog,才会产生文件&#xff0c;mysql 8.0 默认开启,开启后可以在 /var/lib/mysql &#xff…...

Lucene教程_编程入门自学教程_菜鸟教程-免费教程分享

教程简介 Lucene是apache软件基金会 jakarta项目组的一个子项目&#xff0c;是一个开放源代码的全文检索引擎工具包&#xff0c;但它不是一个完整的全文检索引擎&#xff0c;而是一个全文检索引擎的架构&#xff0c;提供了完整的查询引擎和索引引擎&#xff0c;部分文本分析引…...

物联网工程应用实训室建设方案

一、物联网工程应用系统概述 1.1物联网工程定义 物联网工程&#xff08;Internet of Things Engineering&#xff09;是一种以信息技术&#xff08;IT&#xff09;来改善实体世界中人们生活方式的新兴学科&#xff0c;它利用互联网技术为我们的日常生活活动提供服务和增益&am…...

【AI绘画】3分钟学会ikun幻术图

目录 前言一、效果展示二、准备工作三、操作步骤3.1平台创建实例3.2 启动SD 四、安装QR Code Monster 模型五、成图 前言 大家热爱的ikun幻术在今天的分享中将呈现。在本文中&#xff0c;我们将揭示一个备受欢迎的图像幻术技术&#xff0c;让您感受到令人惊叹的视觉创造力。 …...

Spring 框架入门介绍及IoC的三种注入方式

目录 一、Spring 简介 1. 简介 2. spring 的核心模块 ⭐ 二、IoC 的概念 2.1 IoC 详解 2.2 IoC的好处 2.3 谈谈你对IoC的理解 三、IoC的三种注入方式 3.1 构造方法注入 3.2 setter方法注入 3.3 接口注入&#xff08;自动分配&#xff09; 3.4 spring上下文与tomcat整…...

Centos升级openssl

依赖包 安装编译 OpenSSL 所需的包&#xff0c;包括 gcc、make、perl 和 zlib-devel。可以通过运行以下命令完成&#xff1a; yum install -y gcc make perl zlib-devel安装包下载 下载 OpenSSL 1.1.1 的源码包&#xff0c;可以从 OpenSSL 官网下载&#xff08;https://www.op…...

第4章:决策树

停止 当前分支样本均为同一类时&#xff0c;变成该类的叶子节点。当前分支类型不同&#xff0c;但是已经没有可以用来分裂的属性时&#xff0c;变成类别样本更多的那个类别的叶子节点。当前分支为空时&#xff0c;变成父节点类别最多的类的叶子节点。 ID3 C4.5 Cart 过拟合 缺…...

小米平板6Max14即将发布:自研G1 电池管理芯片,支持33W反向快充

明天晚上7点&#xff08;8 月 14 日&#xff09;&#xff0c;雷军将进行年度演讲&#xff0c;重点探讨“成长”主题。与此同时&#xff0c;小米将推出一系列全新产品&#xff0c;其中包括备受瞩目的小米MIX Fold 3折叠屏手机和小米平板6 Max 14。近期&#xff0c;小米官方一直在…...

Elasticsearch复合查询之Boosting Query

前言 ES 里面有 5 种复合查询&#xff0c;分别是&#xff1a; Boolean QueryBoosting QueryConstant Score QueryDisjunction Max QueryFunction Score Query Boolean Query在之前已经介绍过了&#xff0c;今天来看一下 Boosting Query 用法&#xff0c;其实也非常简单&…...

Clickhouse基于文件复制写入

背景 目前clickhouse社区对于数据的写入主要基于文件本地表、分布式表方式为主&#xff0c;但缺乏大批量快速写入场景下的数据写入方式&#xff0c;本文提供了一种基于clickhouse local 客户端工具分布式处理hdfs数据表文件&#xff0c;并将clickhouse以文件复制的方式完成写入…...

梅赛德斯-奔驰将成为首家集成ChatGPT的汽车制造商

ChatGPT的受欢迎程度毋庸置疑。OpenAI这个基于人工智能的工具&#xff0c;每天能够吸引无数用户使用&#xff0c;已成为当下很受欢迎的技术热点。因此&#xff0c;有许多公司都在想方设法利用ChatGPT来提高产品吸引力&#xff0c;卖点以及性能。在汽车领域&#xff0c;梅赛德斯…...

QT-播放原始PCM音频流

QT multimedia audioplay.h /************************************************************************* 接口描述&#xff1a;原始音频播放类 拟制&#xff1a; 接口版本&#xff1a;V1.0 时间&#xff1a;20220922 说明&#xff1a; ********************************…...

【杂谈】聊聊我是如何从Java转入Web3的

我先说说我基本的一个情况吧&#xff1a; 我是之前是一位从业了传统web2行业三年的Java开发&#xff0c;在2018年尾才开始去关注区块链的&#xff0c;之前虽然也有混迹在币圈&#xff0c;但是没怎么关注到币圈的内在运行逻辑。 后面因为当时元宇宙和Web3的概念特别火&a…...

ArrayList

目录 1.ArrayList简介 2.ArrayList的构造 2.1ArrayList() 2.2ArrayList(Collection c) 2.3ArrayList(int initialCapacity) 3.ArrayList常见操作 4.ArrayList的遍历的遍历 1.ArrayList简介 在集合框架中&#xff0c; ArrayList 是一个普通的类&#xff0c;实现了 List…...

不重启Docker能添加自签SSL证书镜像仓库吗?

应用背景 在企业应用Docker规划初期配置非安全镜像仓库时&#xff0c;有时会遗漏一些仓库没配置&#xff0c;但此时应用程序已经在Docker平台上部署起来了&#xff0c;体量越大就越不会让人去直接重启Docker。 那么&#xff0c;不重启Docker能添加自签SSL证书镜像仓库吗&…...

Ajax介绍

1.与服务器进行数据交换&#xff1a;通过 Ajax 可以给服务器发送请求&#xff0c;并获取服务器响应的数据。 2.异步交互&#xff1a;可以在 不重新加载整个页面 的情况下&#xff0c;与服务器交换数据并 更新部分网页 的技术&#xff0c;如&#xff1a; 搜索联想、用户名是否可…...