嵌入式技术论坛
直播中

陈伟

7年用户 1463经验值
私信 关注
[经验]

求一种基于RT-Thread的数码小精灵设计方案

一、概述

产品”电脑设备的不断增长的液晶显示器、智能数字音视频播放器、移动摄像头等各类数码产品,正越来越受到城乡居民的欢迎。特别是“云生活逐渐让人们对数码产品”更多需求,加上互联网技术、5G技术、家居新产品、新型分期消费模式等的出现,让数码产品消费热潮涌动。

本发明基于RT-Thread的“数码小精灵”设计,硬件采用了B7252芯片控制芯片的麻雀开发。BK7252是一款高性能WiFi模块,采用高集成无线芯片,设计为BK7252,集成 4GHz Wi-Fi Wi-FiT1R 技术,支持摄像头图像输出,拥有最佳的先进性、性能和不同、通用性和稳定性,适用于各种应用、产品需求。 模块内部 512KB内嵌 RAM 和 4Mbyte Flash 空间,CPU 主频高达 180Mhz。

本设计在基础上主要具有以下功能,包括天气和疫情数据更新、MP3音乐播放器以及数码相机播放器的播放等功能。该摄像头画面拍摄过程中,同样在具备SD存储和OneNet功能的时候。产品可以为云数码卡车载数码小精灵的显示,取名“”。同时本角色完成的参考中中部分网络资料和网友的想法,在此并表示感谢。

二、RT-Thread使用情况概述

本设计基于麻雀一号开发板SDK进行开发,其RT-Thread为3.1.0版本。

1.jpg

在 RT-Thread 系统上的设备注册列表中,其中的 rtc,sd0,w0,sounduart1 等到了 RT-Thread 的主要组件包括了 FinSH-Thread 的主要组件,包括性能,使用虚拟文件,POSIX 接口。在系统中的组件了涉及到网络工具及NetUtils,WebClient,cJSON,EasyFlash,rt_ota,TJpgDec,Player等。

1.jpg

三、硬件框架

1.jpg

麻雀一号外设资源丰富但资源板的高度丰富,集成WiFi、BLE、摄像头、LCD扬声器、MIC TF、录音卡座、五向号、还有一个1.44寸的显示屏,使用常见的TypeC供电电源和调试,支持电源供电接口。

本设计的人机使用部分主要利用板的五向用于提示和LCD开发功能,从而实现了功能,数据挖掘以及控制功能。

**普通模式下:“ **←》:拦截音乐、“疫情⭕” :天气和数据挖掘、“ →”:拦截

音乐播放模式下:“↑”:重量加 、“ ↓”:重量减、“ ←”:下一曲、“ ⭕” :停止播放

设备采用WIFI连接联网,上自动显示连接网络。进行数据电显示,同时设备有SD进行摄像头连接的存储。另外照片可以通过WIFI上传至OneNet云平台,进行远程网页或手机等智能终端设备进行查看。

四、软件框架说明

软件操作流程如下图--线程操作,同启动相关硬件设备的初始化,如液晶显示,启动系统跟踪,以及挂在SD卡到文件等系统跟踪,以及挂在SD上进行的网络连接。网络连接后输入程序启动命令显示欢迎界面显示程序通过五向启动,LCD 向下启动,以及选择运行功能,是用户可以选择播放的天气数据更新、MP3 播放器显示摄像头后会进行本地 SD 卡数据存储 OneNet 云端存储。

1.jpg

五、软件模块说明

1. 设备采集

联网设备主要使用到了RT-Thread组件中的wlan驱动程序实现,上电设备完成后在主程序中wlan查询,并根据用户配置的SSID和PASSWORD进行WIFI网络的连接。该部分的具体代码如下所示:

1.jpg

2. NTP 网络时间同步

网络时间同步主要思路就是通过调用网络工具中的ntp同步功能来实现,通过创建独立时间同步线程,达到同步网络时间的目的。该部分使用时需要启用RT-Thread中的RTC功能。相关代码如下:

2.jpg

3. 天气疫情数据更新

该部分主要是利用了webclient工具包的功能,通过调用相关的疫情数据API接口获取相关的Json数据,并利用CJson工具包进行返回Json数据的解析。最后通过LCD进行数据显示。代码如下:

1.jpg

2.jpg

1.jpg

4.音乐播放模块

该部分程序主要通过使用播放器的接口功能实现,该部分功能包括播放、停止、歌曲切换以及控制等部分功能。部分的代码图显示:

2.jpg

5. 摄像头功能实现

该部分主要PC将事件获取图像,采集到Jpg的数据经过显示,通过HTTP部分数据进行解码后,在LCD屏幕上进行数据显示,同时在LCD屏幕上通过HTTP文件的格式到SD进行显示到OneNet云平台。

1.jpg

原作者:赵君涛

更多回帖

发帖
×
20
完善资料,
赚取积分