痞子衡嵌入式半月刊:第 29 期
這里分享嵌入式領(lǐng)域有用有趣的項目/工具以及一些熱點新聞,農(nóng)歷年分二十四節(jié)氣,希望在每個交節(jié)之日準時發(fā)布一期。
本期刊是開源項目(GitHub: JayHeng/pzh-mcu-bi-weekly),歡迎提交 issue,投稿或推薦你知道的嵌入式那些事兒。
上期回顧 :《痞子衡嵌入式半月刊:第 28 期》
嘮兩句
清明是上周日的事,歷史上的今天:1910年4月11日津浦鐵路(京滬鐵路前身)首次開通旅客列車。
本期共收錄 2條資訊、4個項目,希望對你有幫助!
資訊類
1、ARM推出了全新的Armv9架構(gòu)
近日,ARM推出了全新的Armv9架構(gòu),這是自Armv8十年前推出后,該架構(gòu)首次重大變革。Armv9架構(gòu)將會給接下來兩代芯片帶來30%的性能提升。
資訊主頁: https://www.arm.com/company/news/2021/03/arms-answer-to-the-future-of-ai-armv9-architecture
Armv9在兼容Armv8的基礎(chǔ)上,提升了安全性、增強了矢量計算、機器學(xué)習(xí)及數(shù)字信號處理,同時繼續(xù)提升處理器性能。
Armv9架構(gòu)的處理器平衡了通用計算設(shè)備與處理數(shù)字信號和機器學(xué)習(xí)等任務(wù)的專用處理器的經(jīng)濟性、設(shè)計自由性和可訪問性優(yōu)勢三方面。
2、樂鑫發(fā)布新款RISC-V SoC ESP32-C6
近日,樂鑫科技宣布推出 ESP32-C 系列中的又一款新品 ESP32-C6。ESP32-C6 是樂鑫首款集成 Wi-Fi 6 + Bluetooth 5 (LE) 的 32 位 RISC-V SoC,具有極低功耗和高性價比,能夠大幅提升物聯(lián)網(wǎng)設(shè)備的 Wi-Fi 傳輸效率,提供安全可靠的連接性能。
ESP32-C6 的 CPU、內(nèi)存和安全性能與 ESP32-C3 相似,它搭載 RISC-V 32 位單核處理器,時鐘頻率高達 160 MHz,內(nèi)置 400 KB SRAM,384 KB ROM,并支持多個外部 SPI、Dual SPI、Quad SPI、QPI flash。
資訊主頁: https://www.espressif.com/zh-hans/node/5088
項目類
1、Arm-2D - 基于Cortex-M的2D圖形加速庫
ARM官方出品的2D圖形加速庫,在Cortex-M55系統(tǒng)頻率 8MHz 下就可以實現(xiàn)30fps的渲染(6圖層。320x240,rgb565)。
項目主頁: https://github.com/ARM-software/EndpointAI/tree/master/Kernels/Research/Arm-2D
Arm-2D 庫特性包括但不限于:
* Alpha-Blending
- With or without Colour-Masking
* Image Copy / Texture Paving
- With or without Colour-Masking
- Four mirroring mode: None, X-mirroring, Y-mirroring and XY-mirroring
* Colour format conversions
- RGB565 and RGB888
- Generic RGB16 and RGB32
* Region/Window Clipping
* Generic Partial Frame-buffer (PFB) Support
- Transparent for upper layer software/GUI services
- Easy to implement
- No limitation on target screen resolution
- No limitation on PFB size and shape (it could be line or cube with any size)
* Unified and User Friendly Programmers' Mode
- APIs could be used in Synchronous manner ( Classic Blocking code ) and/or Asynchronous manner ( Event-Driven )
- Support both bare-metal and RTOS
- Ultra small memory footprint
2、ELL-8051-LIB - 面向8051的高效低封裝函數(shù)庫
8051 ELL函數(shù)庫,是網(wǎng)友澤文i針對STC8系列豐富的芯片資源,基于keil開發(fā)的軟件包。函數(shù)庫采用了LL庫的編程思想,充分考慮8051的特性,結(jié)合硬件條件,提供大量標準的API函數(shù),供開發(fā)者訪問底層硬件細節(jié)。并且函數(shù)庫的大小可裁剪,在代碼密度和執(zhí)行效率上做了很好的平衡。
項目主頁: https://gitee.com/zeweni/ELL-8051-LIB
3、KLite - 簡潔易用的嵌入式操作系統(tǒng)內(nèi)核
KLite是由個人編寫的嵌入式操作系統(tǒng)內(nèi)核,它是一款入門級的小型搶占式操作系統(tǒng)內(nèi)核,以簡潔易用為設(shè)計目標,旨在降低學(xué)習(xí)嵌入式操作系統(tǒng)編程和入門的難度。
項目主頁: https://gitee.com/kerndev/klite
KLite 以其簡潔的API風(fēng)格,簡潔的調(diào)用方式,簡單的移植方法,可以算得上是目前最簡單易用的嵌入式操作系統(tǒng)內(nèi)核。
-- 支持優(yōu)先級搶占
-- 支持相同優(yōu)先級的線程
-- 支持線程同步互斥
-- 支持動態(tài)內(nèi)存管理
-- 支持多編譯器GCC, IAR, MDK
KLite 目前已經(jīng)為ARM Cortex-M0/M3/M4做好了底層適配,如果你的CPU平臺是基于以下平臺:STM32,GD32,NRF51,NRF52,Freescale K40等系列單片機,那么可以直接使用預(yù)編譯的庫文件進行開發(fā),只需要修改template.c里面幾個簡單的函數(shù)即可開始編程。
4、LW_OOPC - 一種輕量級的面向?qū)ο蟮腃語言編程框架
LW_OOPC 是Light-Weight Object-Oriented Programming in(with) C的縮寫, 這個框架是由中國臺灣的高煥堂先生以及他的MISOO團隊首創(chuàng), 之后由金永華繼續(xù)改進優(yōu)化。
網(wǎng)友 Akagi201 在金永華對于高煥堂的lw_oopc的源碼的基礎(chǔ)上進行了一些簡單的修改和調(diào)試,使得lw_oopc能夠用在實際的嵌入式項目中, 作為一個很好的框架傳播開來。
項目主頁: https://github.com/Akagi201/lw_oopc
LW_OOPC 非常的輕量級, 但卻很好的支持了很多面向?qū)ο蟮奶匦? 比如繼承, 多態(tài),可以優(yōu)美的實現(xiàn)面向接口編程。