项目简介
本项目开发了一个实用且操作便捷的多屏显示系统,通过Zephyr操作系统深度融合硬件与软件组件,实现多个显示屏的同步显示与高效控制。
项目的主要特性和功能
- 多屏同步显示:利用Zephyr操作系统和硬件驱动,使9个M5Stack Core2显示屏无缝同步,提供一致视觉体验。
- 网络通信:采用TCP协议实现客户端到服务器(显示屏)的数据传输,支持图像展示与屏幕共享。
- 自动连接WiFi:通过蓝牙广播WiFi信息,无需手动输入或固定配置。
- 传感器交互:集成MotionTracking MPU - 6886传感器,可通过摇晃设备快速开关屏幕。
- GUI控制:PC端GUI界面能同步显示9个屏幕状态,方便用户操作。
- 多媒体展示:支持展示图片、动画,还能实现屏幕共享。
安装使用步骤
环境准备
确保已安装Zephyr SDK、LVGL库以及Python开发环境。
代码编译与烧录
- M5Stack Core2(Arduino):选择M5Stack - Core2开发板,烧录
m5_arduino\m5_tcp_server\m5_tcp_server.ino
文件。 - nRF52840 DK(蓝色板):执行
west build Athena - yellow/blue --pristine
和west flash
进行编译和烧录。 - GUI:运行
python3 GUI\pyqt.py
启动PC端的GUI界面。
设备部署
- 初始化:对9个M5Core2进行烧录,并连接到WiFi“lihuantao”。
- 网络连接:
- 按下M5Core2的复位按钮,屏幕显示“waiting for Wi - Fi”,此时GUI中所有M5图标变红。
- 在蓝色板中输入WiFi配置
wifi csse4011demo - csse4011
,蓝色板会广播配置信息。 - M5Core2连接到新的WiFi,并在屏幕上显示SSID、MAC地址和IP。9个显示屏通过NTP服务器进行同步。
- M5Core2向路由器注册IP,GUI通过mDNS协议收集9个IP。在GUI中点击“search”按钮,已连接的M5Core2图标变为绿色,将M5放置到相应位置。
功能使用
- 在GUI中点击“run”,开始屏幕共享。
- 可在9个显示屏上展示单张图片,摇晃设备可开关显示。
- 支持播放动画甚至视频。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】