加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

用户界面 – 没有Linux的嵌入式系统的图形库?

发布时间:2020-12-13 19:32:32 所属栏目:Linux 来源:网络整理
导读:似乎任何像 DirectFB或 MiniGui这样的图形库都需要像Linux或uClinux这样的底层操作系统. 对于只有512kb闪存的微控制器编写软件,LCD显示屏和触摸屏可以显示和处理一些图片和GUI部件. 您是否知道任何只需要指向视频内存,也可以处理线条,图像和字体的库? 解决
似乎任何像 DirectFB或 MiniGui这样的图形库都需要像Linux或uClinux这样的底层操作系统.

对于只有512kb闪存的微控制器编写软件,LCD显示屏和触摸屏可以显示和处理一些图片和GUI部件.

您是否知道任何只需要指向视频内存,也可以处理线条,图像和字体的库?

解决方法

当你纳入一些第三方解决方案,你可以自己写的.

对于大多数(如果不是全部)环境,屏幕只是像素的二维数组.有时托盘化有时候不是,但这并不重要,你可以写你想要的.

有大量的免费代码,用于绘制线条和弧线等.

杀手可能是字体,但我想你会发现,第三方应用程序会嚼掉所有的内存,只是做字体,你资源有限,所以你想要预先计算字体,只是复制位.

做一个二维数据的数组,首先在你喜欢的主机上完成所有的工作,如果你想看到你正在绘制的东西,保存.bmp文件是微不足道的,而且将一系列.bmp文件变成一个视频如果你想看一些动作.

如果您使用通用C,并且没有libc调用(写入您自己的memcpy,memset等),则此代码将在主机上运行,??并在目标上运行.

字体将成为您的杀手,您必须预先计算它们,但可以将该信息压缩到尽可能小的范围内,并在运行时提取数据,并将每个字母的位复制到虚拟屏幕中,尽可能快.

或者只是购买许多lcd解决方案之一,为您做所有这一切,你只需发送命令,如画“Hello World!”在某些(x,y)使用蓝色作为前景和白色作为背景.

基本上我认为非os解决方案仍然会使用太多的库,对于你的具体应用来说太大了. 2d数组的字节或像素是微不足道的管理自己.即使您正在为桌面平台编写应用程序,我将以此方式执行此操作,并在最后一刻将完全重新编辑的屏幕更新复制到某个依赖于OS的库(允许从一个操作系统或另一个操作系统获得最大可移植性).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读