作者:Spring123
一、开发板简介
准备平头哥RVB2601开发板来制作一款疫情播报系统应用,先来一张开发板的介绍
二、应用开发初步构想
基于官方网络音乐播放器例程 ch2601_webplayer_demo,由于官方LVGL的功能与音乐播放并存之后对开发板的存储较大,已经超过硬件本身已有的容量,这个得到官方技术确认,那只能另找捷径,移植LCD驱动,再移植U2g8图形库,结合在一起来解决硬件的一些局限。当然还要加载一些必备的组件,例如 cjson,httpclient,webclient
最终实现通过网络读取json数据,进行分解,针对数据字符,播放相应的mp3文件,并在OLED屏幕上显示实际对应数据。
三、移植及增加组件
1、U8g2的移植
正好有大佬写了一篇移植U8g2图形库,测试一下可以通不,如果不考虑瘦身精简的话可以,从u8g2的开源地址 u8g2/csrc at master · olikraus/u8g2 · GitHub 这个文件夹可以直接引入使用。
2、lcd驱动移植
移植官方TFT LCD屏幕的开发演示例程 ch2601_gui_demo中的LCD驱动两个文件
3、加载必备的组件
主要是cjson,httpclient,webclient
4、确保package.yaml项目配置
package.yaml文件正确,要能正常编译,有一个特别注意点,手动改改,CDK会检测到改动,提示重新加载项目,点是就可以了
三、代码相关
1、返回json数据文件
准备一个能返回json数据格式的文件,这里准备了一个index.php文件,上传到在阿里云购买的网站空间里
<?
header("Content-Type: application/json;charset=utf-8");
echo json_encode(array('a'=>'a','country'=>'Japan','number'=>'135');
?>
2、示例声音mp3文件
准备三个声音文件,一个是启动声音,两个是与网站json字符匹配的声音文件,根据精细度,还可以再拆分成字母音和数字音,这里是示例没有具体完全展开。上传到在阿里云购买的网站空间