123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115 |
- #include <MD_MAX72xx.h>
- #include <SPI.h>
- #include <SD.h>
- #include <FS.h>
- #include <ESP32Servo.h> //Require ESP32Servo
- #include <WiFi.h>
- #include <ESPAsyncWebServer.h>
- #include <DNSServer.h>
- #define STP_DATA_PIN 4
- #define STP_CLOCK_PIN 16
- #define STP_LATCH_PIN 17
- #define SERVO_SWITCH 27
- #define SERVO_COVER 14
- #define DP_CLK_PIN 32
- #define DP_DATA_PIN 33
- #define DP_CS_PIN 25
- #define SD_CS_PIN 5
- #define TOGGLE_SWITCH 13
- #define HARDWARE_TYPE MD_MAX72XX::DR1CR0RR0_HW
- #define MAX_DEVICES 8
- #define AP_SSID "(´・ω・`)"
- #define ENABLE_WIFI_DEBUG false
- #define DEBUG_SSID ""
- #define DEBUG_PWD ""
- AsyncWebServer server(80);
- DNSServer dnsServer;
- #define SERVO_ALIGNMENT_OFFSET 4
- Servo servoSwitchPusher;
- Servo servoCoverPusher;
- MD_MAX72XX mx = MD_MAX72XX(HARDWARE_TYPE, DP_DATA_PIN, DP_CLK_PIN, DP_CS_PIN, MAX_DEVICES);
- char animation = 'a';
- int movingDirection = 0;
- bool movingActive = false;
- void setup() {
- delay(1000);
- Serial.begin(115200);
-
- ESP32PWM::allocateTimer(0);
- ESP32PWM::allocateTimer(1);
- ESP32PWM::allocateTimer(2);
- ESP32PWM::allocateTimer(3);
-
- pinMode(STP_DATA_PIN, OUTPUT);
- pinMode(STP_CLOCK_PIN, OUTPUT);
- pinMode(STP_LATCH_PIN, OUTPUT);
- standbySteppers();
-
- servoSwitchPusher.setPeriodHertz(50);
- servoCoverPusher.setPeriodHertz(50);
- servoSwitchPusher.attach(SERVO_SWITCH);
- servoCoverPusher.attach(SERVO_COVER);
- servoCoverPusher.write(0);
- servoSwitchPusher.write(0);
-
- mx.begin();
- setDisplayBrightness(0x4);
- renderFrame();
-
-
- if (!SD.begin(SD_CS_PIN, SPI, 4000000U, "/sd", 10U, false)) {
- Serial.println("[Error] Unable to mount SD card. Retrying in 10 seconds");
- loadSDErrorToFrameBuffer();
- renderFrame();
-
- delay(5000);
- ESP.restart();
- }
-
- createSemaphore();
- startCoreTasks();
- }
- void loop() {
-
-
- }
|