From 1d68463c0b6870312bd78151b894d4f93dbb6797 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A8=9A=E6=99=96?= <593245898@qq.com> Date: Sun, 17 Jan 2021 00:46:46 +0800 Subject: [PATCH] [Fw] Add WS2812B RGB-Led driver. --- .gitignore | 2 + 2.Firmware/HoloCubic_fw/HoloCubic_fw.ino | 13 +- 2.Firmware/HoloCubic_fw/HoloCubic_fw.sln | 25 ++++ 2.Firmware/HoloCubic_fw/HoloCubic_fw.vcxproj | 130 ++++++++++++++++++ .../HoloCubic_fw/HoloCubic_fw.vcxproj.filters | 45 ++++++ .../HoloCubic_fw/HoloCubic_fw.vcxproj.user | 4 + 2.Firmware/HoloCubic_fw/display.cpp | 2 +- 2.Firmware/HoloCubic_fw/display.h | 2 +- 2.Firmware/HoloCubic_fw/rgb_led.cpp | 24 ++++ 2.Firmware/HoloCubic_fw/rgb_led.h | 17 +++ 10 files changed, 256 insertions(+), 8 deletions(-) create mode 100644 2.Firmware/HoloCubic_fw/HoloCubic_fw.sln create mode 100644 2.Firmware/HoloCubic_fw/HoloCubic_fw.vcxproj create mode 100644 2.Firmware/HoloCubic_fw/HoloCubic_fw.vcxproj.filters create mode 100644 2.Firmware/HoloCubic_fw/HoloCubic_fw.vcxproj.user create mode 100644 2.Firmware/HoloCubic_fw/rgb_led.cpp create mode 100644 2.Firmware/HoloCubic_fw/rgb_led.h diff --git a/.gitignore b/.gitignore index 0d47aad..da68f5b 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,5 @@ 1.Hardware/HoloCubic-Assembled/MainBoard/MainBoard.PrjPCBStructure 1.Hardware/HoloCubic-Assembled/MainBoard/Project Outputs for MainBoard 2.Firmware/HoloCubic_fw/.vs +2.Firmware/HoloCubic_fw/__vm +2.Firmware/HoloCubic_fw/Release diff --git a/2.Firmware/HoloCubic_fw/HoloCubic_fw.ino b/2.Firmware/HoloCubic_fw/HoloCubic_fw.ino index 252ec70..e79594b 100644 --- a/2.Firmware/HoloCubic_fw/HoloCubic_fw.ino +++ b/2.Firmware/HoloCubic_fw/HoloCubic_fw.ino @@ -1,11 +1,11 @@ #include "display.h" #include "imu.h" +#include "rgb_led.h" #include Display screen; - -// MPU6050 accelerator and gyroscope IMU mpu; +Pixel rgb; void setup() { @@ -16,18 +16,19 @@ void setup() mpu.init(); + rgb.init(); + rgb.setBrightness(0.3).setRGB(0, 122, 204); lv_demo_benchmark(); } - +int i = 0; void loop() { // run this as often as possible ¡ý - screen.runtime(); + screen.routine(); mpu.update(); - - delay(5); + delay(10); } diff --git a/2.Firmware/HoloCubic_fw/HoloCubic_fw.sln b/2.Firmware/HoloCubic_fw/HoloCubic_fw.sln new file mode 100644 index 0000000..7d4b9a6 --- /dev/null +++ b/2.Firmware/HoloCubic_fw/HoloCubic_fw.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.30225.117 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "HoloCubic_fw", "HoloCubic_fw.vcxproj", "{25A27E44-D676-445B-87FB-AD9830B60FEA}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x86 = Debug|x86 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {25A27E44-D676-445B-87FB-AD9830B60FEA}.Debug|x86.ActiveCfg = Debug|Win32 + {25A27E44-D676-445B-87FB-AD9830B60FEA}.Debug|x86.Build.0 = Debug|Win32 + {25A27E44-D676-445B-87FB-AD9830B60FEA}.Release|x86.ActiveCfg = Release|Win32 + {25A27E44-D676-445B-87FB-AD9830B60FEA}.Release|x86.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {792E64C3-4250-484E-87AA-21824A44E240} + EndGlobalSection +EndGlobal diff --git a/2.Firmware/HoloCubic_fw/HoloCubic_fw.vcxproj b/2.Firmware/HoloCubic_fw/HoloCubic_fw.vcxproj new file mode 100644 index 0000000..ade6689 --- /dev/null +++ b/2.Firmware/HoloCubic_fw/HoloCubic_fw.vcxproj @@ -0,0 +1,130 @@ + + + + + Release + Win32 + + + Debug + Win32 + + + + {25A27E44-D676-445B-87FB-AD9830B60FEA} + + + HoloCubic_fw + + + + Application + true + MultiByte + + + + + Application + false + true + MultiByte + + + + + Application + true + MultiByte + + + + + Application + false + true + MultiByte + + + + + + + + + + + + + + + + + + + + + + + + + Level3 + MaxSpeed + true + true + true + $(ProjectDir)..\HoloCubic_fw;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\libraries\lvgl\src;S:\DataCenter\WorkSpace\Arduino\libraries\MPU6050\src;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\libraries\Wire\src;S:\DataCenter\WorkSpace\Arduino\libraries\FastLED;S:\DataCenter\WorkSpace\Arduino\libraries\TFT_eSPI;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\libraries\SPI\src;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\libraries\FS\src;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\libraries\SPIFFS\src;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\cores\esp32;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\cores\esp32\apps;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\cores\esp32\libb64;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\variants\pico32;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\config;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\app_trace;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\app_update;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\asio;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\bootloader_support;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\bt;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\coap;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\console;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\driver;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp-tls;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp32;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp_adc_cal;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp_event;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp_http_client;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp_http_server;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp_https_ota;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp_ringbuf;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\ethernet;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\expat;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\fatfs;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\freemodbus;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\freertos;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\heap;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\idf_test;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\jsmn;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\json;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\libsodium;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\log;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\lwip;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\mbedtls;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\mdns;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\micro-ecc;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\mqtt;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\newlib;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\nghttp;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\nvs_flash;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\openssl;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\protobuf-c;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\protocomm;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\pthread;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\sdmmc;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\smartconfig_ack;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\soc;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\spi_flash;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\spiffs;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\tcp_transport;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\tcpip_adapter;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\ulp;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\vfs;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\wear_levelling;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\wifi_provisioning;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\wpa_supplicant;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\xtensa-debug-module;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp-face;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp32-camera;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\fb_gfx;$(ProjectDir)..\..\..\PENGZH~1\Desktop\HOLOCU~1;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\lib\gcc\xtensa-esp32-elf\5.2.0\include;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\xtensa-esp32-elf;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\include\c++\5.2.0;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\include;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp8266\tools\xtensa-lx106-elf-gcc\2.5.0-4-b40a506\xtensa-lx106-elf\include\c++\4.8.2;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp8266\tools\xtensa-lx106-elf-gcc\2.5.0-4-b40a506\xtensa-lx106-elf\include\c++\4.8.2\xtensa-lx106-elf;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp8266\tools\xtensa-lx106-elf-gcc\2.5.0-4-b40a506\xtensa-lx106-elf\include;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp8266\tools\xtensa-lx106-elf-gcc\2.5.0-4-b40a506\lib\gcc\xtensa-lx106-elf\4.8.2\include;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include;%(AdditionalIncludeDirectories) + $(ProjectDir)__vm\.HoloCubic_fw.vsarduino.h;%(ForcedIncludeFiles) + __ESP32_esp32__;__ESP32_ESP32__;ESP_PLATFORM;HAVE_CONFIG_H;GCC_NOT_5_2_0=0;WITH_POSIX;F_CPU=240000000L;ARDUINO=10807;ARDUINO_ESP32_PICO;ARDUINO_ARCH_ESP32;ESP32;CORE_DEBUG_LEVEL=0;__cplusplus=201103L;_VMICRO_INTELLISENSE;%(PreprocessorDefinitions) + + + true + true + true + + + + + Level3 + Disabled + true + $(ProjectDir)..\HoloCubic_fw;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\libraries\lvgl\src;S:\DataCenter\WorkSpace\Arduino\libraries\TFT_eSPI;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\libraries\SPI\src;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\libraries\FS\src;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\libraries\SPIFFS\src;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\cores\esp32;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\cores\esp32\apps;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\cores\esp32\libb64;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\variants\pico32;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\config;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\app_trace;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\app_update;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\asio;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\bootloader_support;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\bt;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\coap;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\console;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\driver;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp-tls;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp32;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp_adc_cal;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp_event;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp_http_client;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp_http_server;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp_https_ota;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp_ringbuf;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\ethernet;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\expat;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\fatfs;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\freemodbus;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\freertos;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\heap;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\idf_test;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\jsmn;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\json;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\libsodium;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\log;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\lwip;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\mbedtls;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\mdns;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\micro-ecc;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\mqtt;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\newlib;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\nghttp;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\nvs_flash;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\openssl;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\protobuf-c;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\protocomm;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\pthread;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\sdmmc;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\smartconfig_ack;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\soc;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\spi_flash;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\spiffs;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\tcp_transport;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\tcpip_adapter;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\ulp;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\vfs;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\wear_levelling;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\wifi_provisioning;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\wpa_supplicant;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\xtensa-debug-module;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp-face;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\esp32-camera;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include\fb_gfx;$(ProjectDir)..\..\..\PENGZH~1\Desktop\HOLOCU~1;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\lib\gcc\xtensa-esp32-elf\5.2.0\include;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0\xtensa-esp32-elf;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\xtensa-esp32-elf\include\c++\5.2.0;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\include\c++\5.2.0;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\tools\xtensa-esp32-elf-gcc\1.22.0-80-g6c4433a-5.2.0\include;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp8266\tools\xtensa-lx106-elf-gcc\2.5.0-4-b40a506\xtensa-lx106-elf\include\c++\4.8.2;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp8266\tools\xtensa-lx106-elf-gcc\2.5.0-4-b40a506\xtensa-lx106-elf\include\c++\4.8.2\xtensa-lx106-elf;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp8266\tools\xtensa-lx106-elf-gcc\2.5.0-4-b40a506\xtensa-lx106-elf\include;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp8266\tools\xtensa-lx106-elf-gcc\2.5.0-4-b40a506\lib\gcc\xtensa-lx106-elf\4.8.2\include;D:\Green\Arduino\arduino-1.8.7\portable\packages\esp32\hardware\esp32\1.0.4\tools\sdk\include;%(AdditionalIncludeDirectories) + $(ProjectDir)__vm\.HoloCubic_fw.vsarduino.h;%(ForcedIncludeFiles) + true + __ESP32_esp32__;__ESP32_ESP32__;_VMDEBUG=1;ESP_PLATFORM;HAVE_CONFIG_H;GCC_NOT_5_2_0=0;WITH_POSIX;F_CPU=240000000L;ARDUINO=10807;ARDUINO_ESP32_PICO;ARDUINO_ARCH_ESP32;ESP32;CORE_DEBUG_LEVEL=0;__cplusplus=201103L;_VMICRO_INTELLISENSE;%(PreprocessorDefinitions) + + + true + + + + + + + + CppCode + + + + + + + + + + + + + + + VisualMicroDebugger + + + + + + + + + + \ No newline at end of file diff --git a/2.Firmware/HoloCubic_fw/HoloCubic_fw.vcxproj.filters b/2.Firmware/HoloCubic_fw/HoloCubic_fw.vcxproj.filters new file mode 100644 index 0000000..0a410db --- /dev/null +++ b/2.Firmware/HoloCubic_fw/HoloCubic_fw.vcxproj.filters @@ -0,0 +1,45 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;hm;inl;inc;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + Resource Files + + + Resource Files + + + Resource Files + + + \ No newline at end of file diff --git a/2.Firmware/HoloCubic_fw/HoloCubic_fw.vcxproj.user b/2.Firmware/HoloCubic_fw/HoloCubic_fw.vcxproj.user new file mode 100644 index 0000000..88a5509 --- /dev/null +++ b/2.Firmware/HoloCubic_fw/HoloCubic_fw.vcxproj.user @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/2.Firmware/HoloCubic_fw/display.cpp b/2.Firmware/HoloCubic_fw/display.cpp index d234540..00b7562 100644 --- a/2.Firmware/HoloCubic_fw/display.cpp +++ b/2.Firmware/HoloCubic_fw/display.cpp @@ -54,7 +54,7 @@ void Display::init() lv_disp_drv_register(&disp_drv); } -void Display::runtime() +void Display::routine() { lv_task_handler(); } diff --git a/2.Firmware/HoloCubic_fw/display.h b/2.Firmware/HoloCubic_fw/display.h index 825ff8d..5a7119a 100644 --- a/2.Firmware/HoloCubic_fw/display.h +++ b/2.Firmware/HoloCubic_fw/display.h @@ -11,6 +11,6 @@ private: public: void init(); - void runtime(); + void routine(); void setBackLight(float); }; \ No newline at end of file diff --git a/2.Firmware/HoloCubic_fw/rgb_led.cpp b/2.Firmware/HoloCubic_fw/rgb_led.cpp new file mode 100644 index 0000000..5128c92 --- /dev/null +++ b/2.Firmware/HoloCubic_fw/rgb_led.cpp @@ -0,0 +1,24 @@ +#include "rgb_led.h" + + +void Pixel::init() +{ + FastLED.addLeds(color_buffers, RGB_LED_NUM); + FastLED.setBrightness(200); +} + +Pixel& Pixel::setRGB(int r, int g, int b) +{ + color_buffers[0] = CRGB(r, g, b); + FastLED.show(); + + return *this; +} + +Pixel& Pixel::setBrightness(float duty) +{ + duty = constrain(duty, 0, 1); + FastLED.setBrightness((uint8_t)(255 * duty)); + + return *this; +} diff --git a/2.Firmware/HoloCubic_fw/rgb_led.h b/2.Firmware/HoloCubic_fw/rgb_led.h new file mode 100644 index 0000000..9cd9873 --- /dev/null +++ b/2.Firmware/HoloCubic_fw/rgb_led.h @@ -0,0 +1,17 @@ +#include + +#define RGB_LED_NUM 1 +#define RGB_LED_PIN 27 + + +class Pixel +{ +private: + CRGB color_buffers[RGB_LED_NUM]; + +public: + void init(); + + Pixel& setRGB(int r, int g, int b); + Pixel& setBrightness(float duty); +}; \ No newline at end of file