结课啦!基于柿饼UI实现的汽车仪表盘、网络流媒体播放器等作品,究竟如何?...

本文主要是介绍结课啦!基于柿饼UI实现的汽车仪表盘、网络流媒体播放器等作品,究竟如何?...,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

关于柿饼UI:柿饼UI是一款专注于嵌入式领域,由C/C++语言构建,为用户提供类安卓效果的GUI解决方案。为用户提供了设计器+JavaScript语言的开发模式,用户只需拖拽UI控件,写一些简单的JS控制逻辑,就可以实现绚丽、复杂的UI效果。相对于传统纯C语言开发模式的GUI,柿饼UI可以极大的提高开发效率,降低代码调试难度,加快产品迭代速度。

11月末,柿饼UI团队上线了柿饼UI入门课程,获得了社区一致的好评!通过1个月的学习,小伙伴们收获颇丰还提交了许多优秀的作品,以下作品在众多作业中冲出重围,获得了老师团一致的认可。下面就让我们来看看,他们这段时间的学习感悟和作品吧~

01 一等奖

大家好,我是傅应益,来自天府之国-成都,电子爱好者。目前就职于某医疗器械公司,主要从事血液成分分离、净化、采集,TPE、UBIO等相关医疗器械开发工作。

作品介绍

作品名称:

酷炫汽车仪表盘实现

硬件平台:

柿饼派屏幕分辨率:1024×600

主要功能:

1.汽车仪表

通过摸拟汽车的操作,实现汽车速度、电量的仪表指示和数据显示。

可摸拟汽车行驶过程中的转向灯显示、阻力、耗油、水温上升和油量检测功能。

2.网络联接

实现无线网络的搜索、密码输入、状态显示、网络联接等功能。

3.音乐播放

实现本地音乐的播放,拥有上一曲、播放/暂停、下一曲、音量调节、总时长显示、实时时长显示、进度条拖放、播放模式设置(顺序播放、单曲循环、随机播放)等功能。

4.天气获取及语音播报

当用户选取城市信息后,通过HTTP协议向互联网上的天气服务器GET请求获取天气消息,然后对服务器返回的json信息解析展示到面板上。若有语音播报需求,则将自定义的语音文本通过HTTP请求百度tts接口,配合audio达到语音播报天气的目的。

总结

这次柿饼UI的学习使我对柿饼的了解深入很多.由于时间关系,还有很多地方没有做好。未来考虑把柿饼派打造成为一个控制中心,通过网络协议实现各种外设的控制。

02 二等奖

我是赖冠宏,来自厦门,是一名能干(饭)的嵌入式软件工程师。也是一个maker,喜欢diy,接触各种新技术。本次作品是炫酷汽车仪表盘   ,硬件平台是大柿饼派。

作品介绍

UI部分:灵感来源是机器人脸,使用Imagebox、Label、Clock、ProgressBar、WheelString、Button、Switch等控件来实现界面功能,并配合panel和timer等来实现页面的切换

网络部分:使用HTTP来获取天气、温度、时间等数据时时更新。

音乐播放:实现了本地音乐播放。将音乐和对应图片使用相同的名称分别放SD卡不同的文件夹,使用FileManager API启动时将不同文件夹信息读出存到Array,以达到播放音乐时音乐、图片、名称都对应的效果。再通过AudioPlayer的api实现全功能的音乐播放。

遗憾:总体来说柿饼UI实现自己的想法真的很方便,短时间内就可以做出很多功能。由于个人时间不足,很多想法还没完善。作品最终想做成一个类似智能语音助手的仪表盘,继续加油。

03 二等奖

张丙儒,来自辽宁,电子爱好者,大三物联网专业学生在读,喜欢玩单片机,diy一些有创意的作品,乐于分享。

作品介绍

作品名称:

网络流媒体播放器

硬件平台:

柿饼派+小熊派

主要功能:

1.网络部分:通过HTTP,MQTT网络协议从API接口获取数据、从串口接收到的数据发布消息到指定topic。

2.音频播放:

- 音频:实现了类似网易云的网络音频流播放器,通过HTTP的GET请求获取专辑信息,通过对json的解析配合audio达到播放音乐的功能。

- 视频:因为视频不支持在线播放,固采用本地视频播放,通过对视频转码存放到SD卡中,配合VideoPlayer控件实现对视频的播放。

3.天气获取:通过HTTP的GET请求获取天气消息,通过对json的解析以及发送HTTP请求百度tts接口,配合audio达到语音播报,天气显示功能。

4.物联网:通过柿饼派内置的paho-mqtt连接emq服务器将小熊派通过串口发送的json串发送至指定的topic。同时物联网平台订阅该topic实现物联网功能。

UI界面展示:

通过ListCtrl,imagebox等等控件打造了一个类似网易云播放器的界面UI。将网络获取到的音频通过列表形式展示在该界面,可谓“麻雀虽小但五脏俱全”。

后续待加入功能:通过RTC配合WIIFI获取网络时间,显示在主界面。通过接口获取更多类似:歌手、歌词,收藏/关注歌曲等信息,并通过下载按钮实现一键下载歌曲等功能。    

04 三等奖

我是杨澄,来自深圳的一名打工人,也是一名从事嵌入式软件开发的工程师。本次作品是网络音频流播放器,基于RT-Thread出品的柿饼派实现。

作品介绍

实现的主要功能如下:

- 连接wifi

使用wifi控件,按照说明文档几行代码就实现了。

主要功能如下:

- 播放本地音乐

使用了audio控件,提前将mp3文件放入sd卡,然后js代码建立索引,将歌曲路径传入audio控件播放即可

- 搜索网易云的音乐

根据输入的文本,然后转换成特定格式然后结合网易云的搜索接口api,使用http请求数据,得到歌曲相关信息(歌曲名,作者,歌曲id等)

- 播放网易云的音乐

使用http的方式向网易云平台申请数据,拿到歌曲id,然后将播放路径传给audio控件播放即可。

- 查看歌词

根据歌曲id,使用http请求歌词数据,得到json数据,提取特定内容数据后发给文本控件(加入滑动控件)显示即可。

- 查看评论区内容

与获取歌词类似,主要是处理返回的json数据。

后期想要增加的功能

- 个性推荐(诸如歌单之类的)

- 增加搜索功能,目前只能按单曲搜索,尝试增加按歌手等更多的方式搜索歌曲。

- 增加标记“喜欢的音乐”的功能

目前工程实现的不足:

界面做的比较low,美工天赋差,后天也没好好培养,后面对界面再对修修补补。

控件方面,对某些控件的使用还不熟。

Js也是现学现卖,感觉用写c的方式去写的,造成代码很混乱,同时也没有对一些数据进行有效性检查,造成功能的不稳定,有些操作会卡到bug造成死机,这个方面只能不断优化了。

总结

柿饼UI开发工具开发GUI的方式真的效率很高,所见即所得,采用js来编写代码的方式也很快实现所要的功能。

05 三等奖

李勇华,通信工程本科在读,嵌入式、物联网、电子爱好者。

作品介绍

作品简介:

酷炫汽车仪表盘,硬件环境:800x480柿饼派

功能如下:

1、模拟汽车仪表盘

 使用按键模拟汽车的前进后退、左右转向以及加油

2、通话记录:

 模拟电话通信记录,区分拨入、拨出

3、WiFi网络列表:

 使用柿饼派硬件wifi模块扫描周围WiFi网络热点显示

4、模拟音乐播放器

 模拟显示歌单

5、模拟天气预报

 模拟显示当前时间、位置的天气情况

不足:

界面不是很一体化,网络和音乐的功能没有完善,需要接入网络完成联网天气预报、对时功能

总结:

柿饼UI采用js开发上层界面,效率非常高,代码量少、非常方便,很快可以实现需要的功能

06 三等奖

我是胡静辉,2012年毕业于浙江大学城市学院电子信息工程专业,毕业以后一直在杭州从事嵌入式软件开发。

作品介绍

作品简介:

本次作品是网络音频流播放器,基于RT-Thread出品的柿饼UI在柿饼派上实现。

实现的功能如下:

1. 播放网络音乐

因为要在线播放音乐,所以必须要联网,必须要说这个WIFI控件太好用了,按照说明文档轻松搞定。然后我自己搭了一个http服务器,把需要的一些音乐和音乐相关的一些东西都放在服务器上,然后使用http获取音乐数据进行在线播放。

2.播放本地视频

把需要播放的视频放在SD卡里,然后用videoPlayer控件进行播放。

3. 网络校对时间

然后还有一个系统时间网络校对功能,联网获取网络时间然后设置系统时间。

恭喜以上获奖选手,不日我们将为您寄出本次的奖品!


你可以添加微信17775982065为好友,注明:公司+姓名,拉进RT-Thread 官方微信交流群!

RT-Thread


让物联网终端的开发变得简单、快速,芯片的价值得到最大化发挥。Apache2.0协议,可免费在商业产品中使用,不需要公布源码,无潜在商业风险。

长按二维码,关注我们

 点击阅读原文进入官网

这篇关于结课啦!基于柿饼UI实现的汽车仪表盘、网络流媒体播放器等作品,究竟如何?...的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/229482

相关文章

C++使用栈实现括号匹配的代码详解

《C++使用栈实现括号匹配的代码详解》在编程中,括号匹配是一个常见问题,尤其是在处理数学表达式、编译器解析等任务时,栈是一种非常适合处理此类问题的数据结构,能够精确地管理括号的匹配问题,本文将通过C+... 目录引言问题描述代码讲解代码解析栈的状态表示测试总结引言在编程中,括号匹配是一个常见问题,尤其是在

Java实现检查多个时间段是否有重合

《Java实现检查多个时间段是否有重合》这篇文章主要为大家详细介绍了如何使用Java实现检查多个时间段是否有重合,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录流程概述步骤详解China编程步骤1:定义时间段类步骤2:添加时间段步骤3:检查时间段是否有重合步骤4:输出结果示例代码结语作

使用C++实现链表元素的反转

《使用C++实现链表元素的反转》反转链表是链表操作中一个经典的问题,也是面试中常见的考题,本文将从思路到实现一步步地讲解如何实现链表的反转,帮助初学者理解这一操作,我们将使用C++代码演示具体实现,同... 目录问题定义思路分析代码实现带头节点的链表代码讲解其他实现方式时间和空间复杂度分析总结问题定义给定

Java覆盖第三方jar包中的某一个类的实现方法

《Java覆盖第三方jar包中的某一个类的实现方法》在我们日常的开发中,经常需要使用第三方的jar包,有时候我们会发现第三方的jar包中的某一个类有问题,或者我们需要定制化修改其中的逻辑,那么应该如何... 目录一、需求描述二、示例描述三、操作步骤四、验证结果五、实现原理一、需求描述需求描述如下:需要在

如何使用Java实现请求deepseek

《如何使用Java实现请求deepseek》这篇文章主要为大家详细介绍了如何使用Java实现请求deepseek功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1.deepseek的api创建2.Java实现请求deepseek2.1 pom文件2.2 json转化文件2.2

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

如何通过Python实现一个消息队列

《如何通过Python实现一个消息队列》这篇文章主要为大家详细介绍了如何通过Python实现一个简单的消息队列,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录如何通过 python 实现消息队列如何把 http 请求放在队列中执行1. 使用 queue.Queue 和 reque

Python如何实现PDF隐私信息检测

《Python如何实现PDF隐私信息检测》随着越来越多的个人信息以电子形式存储和传输,确保这些信息的安全至关重要,本文将介绍如何使用Python检测PDF文件中的隐私信息,需要的可以参考下... 目录项目背景技术栈代码解析功能说明运行结php果在当今,数据隐私保护变得尤为重要。随着越来越多的个人信息以电子形

使用 sql-research-assistant进行 SQL 数据库研究的实战指南(代码实现演示)

《使用sql-research-assistant进行SQL数据库研究的实战指南(代码实现演示)》本文介绍了sql-research-assistant工具,该工具基于LangChain框架,集... 目录技术背景介绍核心原理解析代码实现演示安装和配置项目集成LangSmith 配置(可选)启动服务应用场景

使用Python快速实现链接转word文档

《使用Python快速实现链接转word文档》这篇文章主要为大家详细介绍了如何使用Python快速实现链接转word文档功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 演示代码展示from newspaper import Articlefrom docx import