ELL-8051-LIB - 面向8051的高效低封装函数库+KLite - 简洁易用的嵌入式操作系统内核

news/2024/9/28 21:19:27

1、Arm-2D - 基于Cortex-M的2D图形加速库

ARM官方出品的2D图形加速库,在Cortex-M55系统频率 8MHz 下就可以实现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的高效低封装函数库

8051 ELL函数库,是网友泽文i针对STC8系列丰富的芯片资源,基于keil开发的软件包。函数库采用了LL库的编程思想,充分考虑8051的特性,结合硬件条件,提供大量标准的API函数,供开发者访问底层硬件细节。并且函数库的大小可裁剪,在代码密度和执行效率上做了很好的平衡。

项目主页: https://gitee.com/zeweni/ELL-8051-LIB

3、KLite - 简洁易用的嵌入式操作系统内核

KLite是由个人编写的嵌入式操作系统内核,它是一款入门级的小型抢占式操作系统内核,以简洁易用为设计目标,旨在降低学习嵌入式操作系统编程和入门的难度。

项目主页: https://gitee.com/kerndev/klite

KLite 以其简洁的API风格,简洁的调用方式,简单的移植方法,可以算得上是目前最简单易用的嵌入式操作系统内核。

-- 支持优先级抢占  
-- 支持相同优先级的线程  
-- 支持线程同步互斥  
-- 支持动态内存管理
-- 支持多编译器GCC, IAR, MDK

KLite 目前已经为ARM Cortex-M0/M3/M4做好了底层适配,如果你的CPU平台是基于以下平台:STM32,GD32,NRF51,NRF52,Freescale K40等系列单片机,那么可以直接使用预编译的库文件进行开发,只需要修改template.c里面几个简单的函数即可开始编程。

4、LW_OOPC - 一种轻量级的面向对象的C语言编程框架

LW_OOPC 是Light-Weight Object-Oriented Programming in(with) C的缩写, 这个框架是由台湾的高焕堂先生以及他的MISOO团队首创, 之后由金永华继续改进优化。

网友 Akagi201 在金永华对于高焕堂的lw_oopc的源码的基础上进行了一些简单的修改和调试,使得lw_oopc能够用在实际的嵌入式项目中, 作为一个很好的框架传播开来。

项目主页: https://github.com/Akagi201/lw_oopc

LW_OOPC 非常的轻量级, 但却很好的支持了很多面向对象的特性, 比如继承, 多态,可以优美的实现面向接口编程。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.ryyt.cn/news/30189.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

利用pearcmd实现裸文件包含

docker 环境的靶机下,有没有什么更加普适性的方法来实现文件包含+命令执行?利用pearcmd实现裸文件包含 在 ctf 中,常常有这样一类题: 题目很简单,一般围绕一个 include 函数展开。 例: ctfshow 元旦水友赛 easy_include这类题目没有提供文件上传点,因此不能使用常规方法…

怎么把excel里已经变成科学记数法的数字恢复

从数据库导出的数据经常有id字段,包含一长串的数字,导出为excel或者csv格式后打开,id字段经常被转换成科学技术法了,不方便查看。 如果想把它转变为通常的显示方法,在单元格上点击鼠标右键,点击“设置单元格格式”。 在打开的窗口中,切换到“数字”选项卡,点击“自定义…

架构每日一学 4:成为首席架构师,你必须学会顺应人性

本文首发于公众平台:腐烂的橘子架构师生存法则之二:架构活动需要顺应人性 程序员入行的第一天起就进入了一个机器的世界。在别人的眼中,程序员平时很少说话,更多的时间在和电脑打交道。 程序员工作时间久了大脑会被格式化,就像一个一个方格。它有一定好处,就是你在写代码…

C# 实现Ping远程主机功能

C#实现Ping远程主机功能。1、引用nuget包 Wesky.Net.OpenTools OpenTools是一个用于提高开发效率的开源工具库。该项目为个人开源项目,采用MIT开源协议,永不更改协议。开源项目地址: Gitee:https://gitee.com/dreamer_j/open-tools.gitGithub:https://github.com/LittleLitt…

采用flex布局,父组件width为百分比,解决子组件canvas画布width自适应问题

创建EleResize.js文件(拷贝以下代码即可)var EleResize = {_handleResize: function (e) {var ele = e.target || e.srcElementvar trigger = ele.__resizeTrigger__if (trigger) {var handlers = trigger.__z_resizeListenersif (handlers) {var size = handlers.lengthfor …

VMware SD-WAN 6.0 发布(含下载) - 领先的 SD-WAN 解决方案

VMware SD-WAN 6.0 发布(含下载) - 领先的 SD-WAN 解决方案VMware SD-WAN 6.0 发布(含下载) - 领先的 SD-WAN 解决方案 VMware VeloCloud SD-WAN, 全球 SD-WAN 领导者 请访问原文链接:https://sysin.org/blog/vmware-sd-wan-6/,查看最新版。原创作品,转载请保留出处。 作…

Copilot - OpenAI与GitHub联合出品的自动代码生成AI+VirtualLCD - 可用于 GUI 移植的 LCD 模拟器

1、AntOS - 适用 8051 的超轻量级实时操作系统 AntOS 是一款超轻量级实时操作系统,抢占式调度极简内核,专门为小型家电及轻量型物联网终端设计,适合在8051为内核的MCU上运行。项目主页: https://gitee.com/zeweni/ant-osAntOS 提供层级服务,可以进行任意裁剪。内核层包含两…

nRF51_Platform - 基于nRF51平台(蓝牙4.0)的轻量级SDK+AliOS Things - 阿里出品轻量级物联网嵌入式操作系统

1、AliOS Things - 阿里出品轻量级物联网嵌入式操作系统 AliOS Things 发布于2017年杭州云栖大会, 是 AliOS 家族旗下的、面向IoT领域的、高可伸缩的物联网操作系统。AliOS Things 致力于搭建云端一体化IoT基础设施,具备极致性能、极简开发、云端一体。项目主页: https://gi…