HoloCubic 透明棱镜小电视

HoloCubic 透明棱镜小电视

HoloCubic 是一个带网络功能的伪全息透明显示桌面站,基于ESP32PICO-D4打造。
electronics 创客 esp32 分光棱镜 电视

正在准备播放器,请稍候...

关于本项目

总的来说功能比较多,显示方式也十分炫酷,大家可以基于我的方案继续扩展实现更多功能。本项目的硬件方案是基于ESP32PICO-D4的,一个很实用的SiP芯片,也因此整板面积能做到一个硬币大小;软件方面主要是基于lvgl-GUI库,移植了ST7789 1.3寸240x240分辨率屏幕的显示驱动,同时将MPU6050作为输入设备,通过感应的方式模拟编码器键值。

1. 硬件打样说明

**暂时没发现有啥需要特别注意的。

**PCB可以直接拿去打样,两层板很便宜,器件BOM的话也都是比较常用的,整板成本在30以内。

2. 固件编译说明

玩过Arduino的基本没有上手难度了,把Firmware/Libraries里面的库安装到Arduino库目录(如果你用的是Arduino IDE的话),然后这里需要修改一个官方库文件才能正常使用:

首先肯定得安装ESP32的Arduino支持包(百度有海量教程),然后在安装的支持包的esp32\hardware\esp32\1.0.4\libraries\SPI\src\SPI.cpp文件中,修改以下代码中的MISO为26:

if(sck == -1 && miso == -1 && mosi == -1 && ss == -1) {
    _sck = (_spi_num == VSPI) ? SCK : 14;
    _miso = (_spi_num == VSPI) ? MISO : 12; // 需要改为26
    _mosi = (_spi_num == VSPI) ? MOSI : 13;
    _ss = (_spi_num == VSPI) ? SS : 15;

这是因为,硬件上连接屏幕和SD卡分别是用两个硬件SPI,其中HSPI的默认MISO引脚是12,而12在ESP32中是用于上电时设置flash电平的,上电之前上拉会导致芯片无法启动,因此我们将默认的引脚替换为26。

也可以通过设置芯片熔丝的方式解决这个问题,不过那样的操作时一次性的,不建议这么玩。

另外:

由于我赶视频制作,代码都是临时写的非常杂乱有很多dirty code,因此仓库中的是所有驱动调通之后的模板代码,可以自己基于这个框架自由开发。

我后面有空了整理好APP应用代码也会更新出来。

3. 关于分光棱镜

我用的时25.4mm x 25.4mm x 25.4mm的棱镜,淘宝应该可以搜到,单个价格80元左右。

4. 文件说明

Hardware

  • Naive Version:视频中出现的版本,因为周末制作+赶视频时间匆忙所以结构设计得比较简单,以下两个外壳结构都是用这个电路版本↓

    HoloCubic 透明棱镜小电视

    HoloCubic 透明棱镜小电视

  • Ironman Version:新设计的钢铁侠风格结构件的配套电路,原理图是一样的,下面的结构用这个版本电路(该版本为和朋友合作设计的,后面可能会授权他联名量产)

    HoloCubic 透明棱镜小电视

Software

  • Visual Studio的工程,可以在电脑上模拟LVGL的界面效果,改好之后代码粘贴到Arduino固件那边就可以完成界面移植。这样省的每次修改都要重新交叉编译Arduino的固件,提升开发效率。

链拉: https://gitee.com/peng_zhihui/HoloCubic


评论:
相关文章
物联网项目开发实战-第3章-自动浇花项目迭代3

本节我们在迭代二的基础上使用四位数码管和OLED显示屏显示相关交互信息。


物联网项目开发实战-第3章-自动浇花项目迭代2

本节我们在迭代一的基础上增加采集土壤湿度数据,并根据湿度数据来决定是否自动进行浇水动作。


物联网项目开发实战-第3章-自动浇花项目迭代1

本节我们实现一个基本能工作的手动浇水装置,即通过按下按键来闭合继发器让小水泵进行浇水。


物联网项目开发实战-第2章-开发环境

本小节通过点亮LED和串口输出两个程序,来初步掌握ArduinoIDE、了解GPIO和串口使用、同时把开发环境与开发板的连接,上传程序的各环节跑通,


小鹏浇花套件单机版程序V1.0.0

本程序是小鹏物联网智能浇花套件的单机版程序(不连接物联网),供同学们参考。


ESP32 的中断机制和处理

本文介绍ESP32中的中断机制,以及如何通过GPIO中断实现按钮控制。重点讲解了如何设置中断服务例程、处理中断抖动问题,并提供了消除中断抖动的示例代码。


在ESP32上实现WEB交互界面

本文主要介绍在未联网(AP热点)情况下实现WEB交互界面的CSS和javascript库。


Arduino ESP32获取芯片、RAM信息

本文介绍如何使用Arduino-ESP32库中的API函数获取ESP32的芯片、RAM信息等,并提供了一个示例程序代码。


ESP32 FreeRTOS 双核使用

ESP32系列(包括ESP32-S3)搭载Xtensa双核处理器,默认情况下Arduino框架仅使用单核运行用户代码,通过多核编程,可以充分利用硬件资源来提升系统响应和性能。


ESP32 GPIO 矩阵和引脚多路复用

ESP32 芯片有34个物理GPIO管脚。每个GPIO管脚都可用作一个通用IO,或连接一个内部的外设信号。IO_MUX ¹、RTC IO MUX 和GPIO交换矩阵用于将信号从外设传输至GPIO管脚。

相关创作
这是由一个支持WiFi的ESP32单片机和一个7.5英寸电子墨水屏组成天气显示器。
热度:469
项目是基于 ESP32 处理器的自主 GPS 跟踪器,可以支持常规SIM800扩展板来管理2G GSM通信,并且与大多数3.3V的GPS模块兼容。
热度:354
基于ESP32-S3,板载1.69寸LCD总成接口、蜂鸣器、SD卡槽、AXP173电源管理,双排母引出大部分引脚供底板拓展功能。
热度:138
本项目是以ESP32为核心,打造一个多功能集合的综合性极强的小模块。
热度:113
OMOTE是一个基于ESP32-PICO-D4的开源通用遥控器。它的电容式2.8英寸触摸屏为切换设备和设置提供了直观而快捷的用户界面。
热度:93
基于ESP32的电子墨水屏日历,支持通过 OpenWeatherMap 实现天气显示等功能。
热度:89
LILYGO TTGO T-Watch-2020编程开发可穿戴设备 ESP32可编程手表
热度:70
用树莓派做了个产品级磁带随身听,好看又好听,开源了!
热度:70
Watchy是带有开源硬件和软件的电子墨水手表。它采用准系统设计,利用PCB作为表体,可以按原样佩戴,也可以使用不同的3D打印表壳和表带进一步定制。
热度:60
小鹏STEM教研服务

专属教研服务系统,助您构建STEM课程体系,打造一站式教学环境。