一起玩转LiteOS组件:Pixman
摘要:本文将以Pixman Demo为例,详细说明Pixman的功能。
本文分享自华为云社区《LiteOS组件尝鲜—玩转Pixman》,作者:Lionlace。
基本介绍
Pixman是由三星工程师开发的像素操作库,广泛应用于矢量图形Cario和X服务器等。它能够提供低级像素处理能力,同时具备图像合成、图形变化以及光栅化等功能。本文将以Pixman Demo为例,详细说明Pixman的功能。
该Demo实现功能的步骤:新建一个宽高为20*20的像素图片,将目标图片划分为4个10*10的区域。第一个区域填充蓝色,第二个区域填充蓝粉渐变色,第三个区域填充径向渐变色,第四个区域填充圆形渐变色,最后输出图形到pixman.png即可。下面将介绍详细步骤。
Demo实现的环境要求
Demo需要FATFS文件系统和LIBPNG支持,可在已支持该文件系统的开发板上运行,目前已适配STM32F769IDISCOVERY开发板。
使能Pixman Demo
拷贝并重命名配置文件
在LiteOS源码根目录下根据实际使用的开发板,拷贝tools/build/config/目录下的默认配置文件${platform}.config到根目录,并重命名为.config。以Linux系统和STM32F769IDISCOVERY开发板为例,在LiteOS源码目录下,执行如下命令完成配置文件的拷贝和重命名:
cp tools/build/config/STM32F769IDISCOVERY.config .config
使能Pixman Demo
在LiteOS源码根目录下运行make menuconfig命令,按如下菜单路径使能Pixman Demo:
Demos --->Media Demo --->[*] Enable Pixman Demo (NEW)
使能Pixman Demo后,会自动使能其依赖的Pixman组件、Libpng组件及FATFS文件系统并设置SD卡模式。本Demo中的文件就保存在SD卡中。保存退出menuconfig后,LiteOS会从github上自动下载Pixman源代码,并从gitee的LiteOS组件仓库LiteOS_Components下载对应的patch包,并打入patch。
关于组件下载的详细流程请参考:https://gitee.com/LiteOS/LiteOS_Components#%E5%9C%A8%E7%BA%BF%E7%BB%84%E4%BB%B6%E4%B8%8B%E8%BD%BD%E6%B5%81%E7%A8%8B
注:下载需要Linux主机可以访问互联网,并安装git工具。如果使用LiteOS Studio使能该Demo,需要在组件配置中手动设置FATFS文件系统为SD卡模式。
编译运行Pixman Demo
操作步骤如下:
- 将SD卡插入开发板的卡槽内;
- 参照上述步骤使能Pixman Demo;
- 在LiteOS源码目录下执行make clean ; make -j命令编译LiteOS工程,编译成功后将在out/${platform}/lib目录下生成Pixman的库文件libpixman.a,Libpng的库文件libpng.a和本Demo的库文件libpixman_demo.a,系统镜像文件为Huawei_LiteOS.bin。以STM32F769IDISCOVERY开发板为例,其目录就是out/STM32F769IDISCOVERY;
- 烧录系统镜像文件到开发板,复位后可以看到串口输出Demo运行结果如下所示。
********Hello Huawei LiteOS********
LiteOS Kernel Version : 5.0.0
build data : May 14 2021 16:05:30
**********************************
osAppInit
cpu 0 entering scheduler
app init!
Hello, welcome to liteos demo!
File system mount success.
Pixman demo task start to run.
Pixman demo task finished.
Huawei LiteOS #
- 查看SD卡根目录,可以看到生成的图片文件为pixman.png。
至此,该Demo实现功能就完成了。
结语
未来我们还会持续新增更多组件、开发板、架构、特性等。
感谢您的阅读,有任何问题、建议,都可以留言给我们,让我们一起进步:https://gitee.com/LiteOS/LiteOS/issues。
为了更容易找到“LiteOS”代码仓,建议访问https://gitee.com/LiteOS/LiteOS,关注“ Watch”、点赞“Star”、并“Fork”到自己账号下,如图所示。
更多学习内容,请关注IoT物联网社区
点击关注,第一时间了解华为云新鲜技术~
一起玩转LiteOS组件:Pixman相关推荐
- 玩转LiteOS组件:玩转Librws
本文分享自华为云社区<LiteOS组件尝鲜-玩转Librws>,作者: W922 . 本期小编为大家带来LiteOS开源版本Librws 组件的使用说明,请跟随小编的步伐一起进入探索之旅 ...
- 快来一起玩转LiteOS组件:Curl
本文分享自华为云社区<LiteOS组件尝鲜-玩转Curl>,作者:W922. 基本介绍 Curl是一个文件传输工具,常用于数据上传和下载,本demo基于Cloud_STM32F429IGT ...
- 一起玩转玩转LiteOS组件:Opus
摘要:Opus编码器是一个开源的有损声音编码格式,适用于网络实时声音传输,标准格式为RFC 6716,相对于其他编码格式来说,保真性更好. 本文分享自华为云社区<LiteOS组件尝鲜-玩转Opu ...
- 快来一起玩转LiteOS组件:RHas
摘要:RHash是一个C语言编写的哈希函数库,用于计算和验证磁力链接和各种消息摘要的控制台实用程序. 本文分享自华为云社区<LiteOS组件尝鲜-玩转RHas>,作者:Lionlace . ...
- 手把手带你玩转LiteOS Ping组件
摘要:本期小编为大家带来LiteOS开源版本Ping组件的使用说明,请跟随小编的步伐一起进入探索之旅吧! 本文分享自华为云社区<LiteOS组件尝鲜-玩转Ping>,作者:Lionlace ...
- 带你尝鲜LiteOS 组件EasyFlash
摘要:EasyFlash是一个开源的轻量级嵌入式闪存库. 本文分享自华为云社区<LiteOS组件尝鲜-玩转EasyFlash>,作者:Lionlace . 基本介绍 EasyFlash是一 ...
- 一分钟带你了解Huawei LiteOS组件开发指南
摘要:本文将基于Huawei LiteOS系统,从组件定义开始带你走进组件开发指南. 本文分享自华为云社区<一分钟带你了解Huawei LiteOS之组件开发指南>,作者: Lionlac ...
- vue - 组件的创建
组件的创建 vue的核心基础就是组件的使用,玩好了组件才能将前面学的基础更好的运用起来.组件的使用更使我们的项目解耦合.更加符合vue的设计思想MVVM. 那接下来就跟我看一下如何在一个Vue实例中使 ...
- 闲鱼玩法平台系列文章——双11实操篇
背景 营销玩法是电商行业进行商品促销和用户增长的重要手段,上一篇中介绍了闲鱼的玩法平台--多啦A梦,本篇将介绍在该系统上承接的玩法.闲鱼作为闲置循环工厂也参与了大促,为了让更多闲置在闲鱼游起来,在商品 ...
最新文章
- 机器视觉_Java机器学习,第2部分
- Markdown编辑表格时如何输入竖线('|', pipe,vertical bar)
- 回顾 | Alibaba Cloud Native Day 杭州场圆满结束(附 PPT 下载)
- gsm,gprs,cmwap,cmnet,3g,TD-SCDMA,CDMA2000,WCDMA
- 传统公司部署OpenStack(t版)简易介绍(二)——Keystone组件部署
- python用法查询笔记_Python学习笔记 - 2 - PyCharm的基本使用
- BZOJ1179 Atm //缩点+spfa
- 时代聚焦AI安全——可解释性
- 【渝粤教育】国家开放大学2019年春季 1161开放英语3 参考试题
- stc8g1k08程序范例_通过WiFi对STC单片机程序下载和调试
- MySQL为什么用 B+ 树,不用 B 树?
- 大文件分片上传前端框架_无插件实现大文件分片上传,断点续传
- Okio 1.9简单入门
- Obective-C之宏定义
- 【Strurts框架】第一节Action-通配符
- PHP如果查询结果为空,php – 如果子查询的结果为NULL,则整个查询失败
- 课程设计思路-学习笔记
- AOP-Chap27-Balanced BSTs
- Atmega16驱动三轴加速度传感器MMA7455
- 「缠师课后回复精选」第14课: 喝茅台的高潮程序!
热门文章
- eff java_Perl 6,EFF的阅读和观看列表以及更多开源新闻
- HTML5 Canvas中绘制文本
- CSS两栏布局之左栏布局
- 广东计算机学会 信息学省初赛,报名丨2019第36届全国信息学奥林匹克竞赛于广州二中举办!...
- ROS Rviz 显示地图 Python
- 先验、后验、似然、置信的理解
- 安装并配置oracle11g,ORACLE11g 安装于基本配置说明
- c语言文件归并问题_通知:土地有变!土地归并:每亩补9万?明年起:合村并镇!能否启动?1个好消息!...
- 自学编程的人,都是怎么找到自己的第一份工作的?
- PAT-乙级-1034 有理数四则运算