littlebot
Published on 2025-04-03 / 0 Visits
0

【源码】基于Zephyr操作系统的多屏显示系统

项目简介

本项目开发了一个实用且操作便捷的多屏显示系统,通过Zephyr操作系统深度融合硬件与软件组件,实现多个显示屏的同步显示与高效控制。

项目的主要特性和功能

  1. 多屏同步显示:利用Zephyr操作系统和硬件驱动,使9个M5Stack Core2显示屏无缝同步,提供一致视觉体验。
  2. 网络通信:采用TCP协议实现客户端到服务器(显示屏)的数据传输,支持图像展示与屏幕共享。
  3. 自动连接WiFi:通过蓝牙广播WiFi信息,无需手动输入或固定配置。
  4. 传感器交互:集成MotionTracking MPU - 6886传感器,可通过摇晃设备快速开关屏幕。
  5. GUI控制:PC端GUI界面能同步显示9个屏幕状态,方便用户操作。
  6. 多媒体展示:支持展示图片、动画,还能实现屏幕共享。

安装使用步骤

环境准备

确保已安装Zephyr SDK、LVGL库以及Python开发环境。

代码编译与烧录

  1. M5Stack Core2(Arduino):选择M5Stack - Core2开发板,烧录m5_arduino\m5_tcp_server\m5_tcp_server.ino文件。
  2. nRF52840 DK(蓝色板):执行west build Athena - yellow/blue --pristinewest flash进行编译和烧录。
  3. GUI:运行python3 GUI\pyqt.py启动PC端的GUI界面。

设备部署

  1. 初始化:对9个M5Core2进行烧录,并连接到WiFi“lihuantao”。
  2. 网络连接:
    • 按下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放置到相应位置。

功能使用

  1. 在GUI中点击“run”,开始屏幕共享。
  2. 可在9个显示屏上展示单张图片,摇晃设备可开关显示。
  3. 支持播放动画甚至视频。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】