《安富莱嵌入式周报》第303期:2023.02.06--2023.02.13
往期周报汇总地址:http://www.armbbs.cn/forum.php?mod=forumdisplay&fid=12&filter=typeid&typeid=104(文中附件可通过此链接进入相应周报进行下载)

更新一期视频教程:
DSP视频教程第11期:插补算法,曲线拟合丝滑顺畅,统计函数和基础函数加速实现,汇集SIMD,饱和和MAC乘累加应用实战(2023-02-12)
https://www.armbbs.cn/forum.php?mod=viewthread&tid=117842
视频版:


1、微软推出嵌入式安全物联网RTOS CHERIoT
知识补充:
CHERI的全称是Capability Hardware Enhanced RISC Instructions,硬件增强RISC指令,由英国剑桥大学与美国SRI International的合作研究项目
https://www.cl.cam.ac.uk/research/security/ctsrd/cheri/

CHERIoT RTOS
小型嵌入式内核几乎没有空间用于安全功能,且基本都用不安全语言编写的代码,并且越来越多地暴露在敌对的互联网中。CHERIoT(用于物联网的RISC-V功能硬件扩展)建立在CHERI和RISC-V之上,提供ISA和软件模型,让依赖于对象粒度空间的软件在内存释放后具有确定性和安全性,直接暴露给 C/C++ 语言模型的轻量级划分。这可以在全新的RTOS上运行现有的嵌入式软件组件,该RTOS可扩展到大量隔离(安全通信)空间,即使在SRAM低于256 KB的系统上也是如此。
源码,这目前是一个开源的研究项目,以实现更广泛的合作
https://github.com/Microsoft/cheriot-rtos
cheri-ibex是32位RISC-V微控制器,除了RV32IMCB之外,它还实现了CheriIoT ISA扩展。与原始的 ibex 核心相同,该设计可以配置 2 级或 3 级管道。它已通过初步仿真和FPGA验证,目前正在微软进行进一步验证和PPA分析
https://github.com/Microsoft/cheriot-ibex
CHERIoT Sail指令集模型
https://github.com/Microsoft/cheriot-sail

去年年初的时候,由Arm,微软,剑桥大学和其他公司领导的研究项目Morello原型架构上线。Morello是CHERI扩展的第一个高性能实现
https://msrc.microsoft.com/blog/2022/01/an_armful_of_cheris/

2、超强的产品级开源电机控制器项目,硬件,软件和上位机全开源
https://vesc-project.com/
VESC已经解决了广泛的工程挑战,从需要数十瓦的微型多旋翼飞行器到消耗数百千瓦的电动客机。 如今,VESC电机控制器广泛用于各种不同的设备,包括机器人,多旋翼飞行器,飞机,相机稳定器,电动自行车,电动滑板,RC设备和许多工业应用
VESC并不是普通的开源电机项目,面向解决尖端电力系统的先进软件和硬件实施,可以直接用来开发产品的。VESC生态系统设置简单易用,并包含大量自动检测和配置向导。
所有的这些都是作者 Benjamin业余时间设计的,所以也接受大家捐款。
硬件效果和开源地址:
https://vesc-project.com/node/311
https://github.com/vedderb/bldc-hardware

软件开源,包含DC/BLDC/FOC控制,RTOS采用ChibiOS
https://github.com/vedderb/bldc/
BMS锂电池管理开源,RTOS采用ChibiOS
https://github.com/vedderb/vesc_bms_fw

上位机开源,快平台 Linux, Windows, MacOS, Android 和 iOS
https://github.com/vedderb/vesc_tool


还支持直接编程脚本测试验证


3、Nordic的wifi6双频芯片nRF7002套件发布,支持SPI和QSPI通信
https://www.nordicsemi.com/Products/Development-hardware/nRF7002-DK
上上周就发布了,忘了给大家分享消息了,这次补上,支持SPI/QSPI通信还是比较方便的

4、Microchip分享的一篇单片机精确测量电流博文
https://www.microchip.com/en-us/about/media-center/blog/2023/accurately-measuring-current-with-microcontrollers
这篇博文介绍了这些错误源以及如何减少和消除它们。

5、大量的位图字体下载
现在电脑基本都使用矢量字体了,早期的旧式计算机用的是位图字体
这里作者搜集了大量旧式电脑上的位图字体
https://github.com/robhagemans/hoard-of-bitfonts
位图查看器:
http://robhagemans.github.io/monobit/
位图转二进制软件
https://github.com/robhagemans/monobit



6、现代Cmake详细入门介绍文档
https://cliutils.gitlab.io/modern-cmake/
可以在线查看,也可以下载PDF板

7、树莓派单片机
(1)树莓派单片机SDK升级至V1.5.0,大更新,全面支持Pico W的蓝牙和WIFI通信
https://github.com/raspberrypi/pico-sdk


(2) 超强树莓派单片机的24通道,100Msps的逻辑分析仪开源升级至V3.5.0.1,
支持了Pico W的WiFi通信方式,采样深度提升到128KB。全面支持了跨平台
https://www.armbbs.cn/forum.php?mod=viewthread&tid=113621
https://github.com/gusmanb/logicanalyzer/releases

8、ST发布的电源管理指南
https://www.st.com/resource/en/brochure/power-management-guide.pdf
目录:



结合给大家分享的数字电源指南一起看,有大量的参考开发板设计
https://www.armbbs.cn/forum.php?mod=viewthread&tid=112616




9、MicroEJ动态APP管理开始支持C,Javascript和Java
MicroEJ在整活方面,确实会折腾,从最早的C+Java混合开放,炫酷GUI让单片机像Android机一样从远程商店下载各种应用,再到Android Studio生成单片机GUI APP
这次又带来新玩法,动态APP支持多种编程语言玩法
https://developer.microej.com/managed-code/

10、蓝牙标准V5.4发布
https://www.bluetooth.com/bluetooth-resources/bluetooth-core-specification-version-5-4-technical-overview/
2301_5.4_Tech_Overview_FINAL.pdf (757.18KB)
新规范引入了两项新功能,它们共同支持无线接入点 AP和数千个超低功耗终端节点之间的安全双向通信

11、罗姆推出智能低边开关取代机械继电器和 MOSFET
https://www.rohm.de/news-detail?news-title=rohms-kompakte-intelligente-low-side-schalter-geringere-verlustleistung-und-sicherer-betrieb-durch-propriet%25C3%25A4re-tdacc%25E2%2584%25A2-schaltungs-und-baut&defaultGroupId=false
产品:

与继电器相比:

与Mosfet相比

高边和底边开关比较

12、开源字体库FreeType V2.13发布
https://freetype.org/
emWin的矢量字体库就是用的这个开源库

13、emWin的新版VNC远程软件升级至V1.2,测试了下,比之前稳定
https://www.segger.com/downloads/emwin/

测试了下之前给V6开发板做的二代示波器:
https://www.armbbs.cn/forum.php?mod=viewthread&tid=89526




14、玩转与或非操作
https://terathon.com/binary_fund.pdf
作者Eric Lengyel
里面的位操作和屏蔽操作很不错

15、H7-TOOL本周进展
H7-TOOL详细介绍:https://www.armbbs.cn/forum.php?mod=viewthread&tid=89934
(1)添加新的脱机烧录芯片支持,全力准备2.20版固件发布
(2)H7-TOOL的LUA小程序长时间运行稳定性研究
随着H7-TOOL的LUA API不断扩充加大,有必要测试下长时间运行的稳定性了。
有时候大家想使用LUA长时间测试一些数据,这个时候稳定性就非常重要了,所以专门做个系统性的研究。
初步测试了如下代码13个小时,稳定运行

(3)H7-TOOL硬件异常黑盒子功能,使用addr2line小软件可以方便锁定出错的源文件位置
【H7-TOOL的黑设置功能使用方法】
基于H7-TOOL的硬件异常黑盒子功能V1.0版本操作说明,持续更新(2022-08-17)
https://www.armbbs.cn/forum.php?mod=viewthread&tid=114792
【根据出错地址锁定源文件位置】
前面分享的方法还需要大家在IDE调试状态锁定具体位置,不够方便。
通过addr2line小软件,可以方便的锁定位置,比如通过H7-TOOL硬件异常黑盒子功能锁定了出错位置0x0800 1000, 通过下面的命令方便的就锁定了出错源文件的位置

后面想把这个黑盒子功能整合到RTOS Trace里面,这样检测状态出错了,就可以直接锁定出错位置一条龙,上位机直接运行下批处理就可以打印结果。
(4)H7-TOOL通过LUA监测CAN/CANFD全寄存器状态,特别是错误监测整理汇总帖
最近开始准备CAN/CANFD/CANopen专题视频教程第2期,已经发布了第1期
H7-TOOL已经支持了经典CAN和CANFD助手,但是还不够:

我想通过SWD接口全面监测CANFD/CAN的寄存器状态,更好的方式展示出来,方便查看执行异常和错误分析,初步效果,本周继续升级下
