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


评论:
相关文章
ESP32 使用DAC模拟输出完成两路呼吸灯

ESP32的DAC函数可以实现真正的模拟输出。


在 ESP32 上使用 LEDC (PWM)

ESP32 没有Arduino输出 PWM 的 analogWrite(pin, value) 方法,取而代之的 ESP32 有一个 LEDC 来实现PWM功能。


Micropython基于ESP32的多线程开发

本文学习如何使用ESP32开发板来进行多线程的开发。


ESP8266 Arduino WIFI

ESP8266有三种工作模式,分别为:AP,STA,AP混合STA


ESP32 SPI

ESP32有四个SPI外设,分别为SPI0、SPI1、HSPI和VSPI。


ESP32 I2C

ESP32有2个硬件I2C总线接口,接口可以配置为主机或从机模式。


ESP32-CAM 故障排除指南:修复的最常见问题

在使用ESP32-CAM发布了一些项目后,一些读者在尝试使用 ESP32-CAM 时报告了问题。本指南汇总了使用 ESP32-CAM 时最常见的错误以及如何修复它们。


SSD1306 OLED屏的使用

本文介绍SSD1306 OLED屏在ESP32中的使用,程序为MicroPython开发。


ESP32+TFT零基础保姆级教学,一步步从接线到编程实践

本文详细介绍如何在Arduino环境中使用ESP32板,通过TFT_ESPI库,轻松地点亮TFT屏幕。


ESP32 采用u8g2库驱动OLED屏

本文介绍ESP32采用Arduino框架u8g2库驱动OLED屏显示中文。

相关创作
太阳能电子纸天气显示器具有小巧、节能环保、易于制作安装等优势。通过利用太阳能充电和低功耗设计,使得这款天气站不仅适合家庭使用,也非常适合用于商业、学校等场所。
热度:16
基于ESP32的电子墨水屏日历,支持通过 OpenWeatherMap 实现天气显示等功能。
热度:89
最新资源
小鹏STEM教研服务

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