#include "Ticker.h"
#include <CD74HC4067.h>
#define E 21
#define S0 18
#define S1 19
#define S2 22
#define S3 23
#define COM 27
uint16_t wLedVal = 0x0000;
Ticker ticker_changeLed;
// const uint8_t controlPins[] = { S0, S1, S2, S3 };
CD74HC4067 my_mux(S0, S1, S2, S3);
// void changeLed(void) {
// if (wLedVal == 0xFFFF) {
// wLedVal = 0x0000;
// } else {
// wLedVal = 0xFFFF;
// }
// }
// float readMux(uint8_t channel)
// {
// digitalWrite(E, HIGH); // Disable chip before changing channel.
// delay(1);
// for(int8_t i = 3; i >= 0; i--)
// {
// int8_t b = (channel >> i) & 1;
// digitalWrite(controlPins[i], b);
// // Serial.print(b);
// }
// digitalWrite(E, LOW); // Enable chip after changing channel.
// delay(1);
// // Serial.print(": ");
// return analogRead(COM);
// }
// void setChannel(uint8_t channel)
// {
// digitalWrite(E, HIGH); // Disable chip before changing channel.
// delay(1);
// for(int8_t i = 3; i >= 0; i--)
// {
// int8_t b = (channel >> i) & 1;
// digitalWrite(controlPins[i], b);
// // Serial.print(b);
// }
// digitalWrite(E, LOW); // Enable chip after changing channel.
// delay(1);
// }
// void showLed(void)
// {
// for (uint8_t i = 0; i<16; i++) {
// digitalWrite(COM, (wLedVal >> i) & 1);
// setChannel(i);
// }
// }
void setup()
{
Serial.begin(115200);
Serial.println("Booting...");
// pinMode(S0, OUTPUT);
// pinMode(S1, OUTPUT);
// pinMode(S2, OUTPUT);
// pinMode(S3, OUTPUT);
pinMode(COM, OUTPUT);
// ticker_changeLed.attach(1, &changeLed);
}
void loop()
{
digitalWrite(COM, HIGH);
for (int i = 0; i < 16; i++) {
my_mux.channel(i);
delay(1000);
}
digitalWrite(COM, LOW);
for (int i = 0; i < 16; i++) {
my_mux.channel(i);
delay(1000);
}
// showLed();
// pixels.clear();
// for(uint8_t i = 0; i < 16; i++)
// {
// writeMux(i, true);
// // float f = readMux(i);
// // pixels.setPixelColor(i, pixels.Color(0, f / 4095.0 * 255.0, 0));
// Serial.print("Channel ");
// Serial.println(i);
// // Serial.print(" = ");
// // Serial.println(f);
// delay(1000);
// }
// for(uint8_t i = 0; i < 16; i++)
// {
// writeMux(i, false);
// // float f = readMux(i);
// // pixels.setPixelColor(i, pixels.Color(0, f / 4095.0 * 255.0, 0));
// Serial.print("Channel ");
// Serial.println(i);
// // Serial.print(" = ");
// // Serial.println(f);
// delay(1000);
// }
// pixels.show();
}
esp:VIN
esp:GND.2
esp:D13
esp:D12
esp:D14
esp:D27
esp:D26
esp:D25
esp:D33
esp:D32
esp:D35
esp:D34
esp:VN
esp:VP
esp:EN
esp:3V3
esp:GND.1
esp:D15
esp:D2
esp:D4
esp:RX2
esp:TX2
esp:D5
esp:D18
esp:D19
esp:D21
esp:RX0
esp:TX0
esp:D22
esp:D23
led1:A
led1:C
r1:1
r1:2
led2:A
led2:C
r2:1
r2:2
led3:A
led3:C
r3:1
r3:2
led4:A
led4:C
r4:1
r4:2
led5:A
led5:C
r5:1
r5:2
led6:A
led6:C
r6:1
r6:2
led7:A
led7:C
r7:1
r7:2
led8:A
led8:C
r8:1
r8:2
led9:A
led9:C
r9:1
r9:2
led10:A
led10:C
r10:1
r10:2
led11:A
led11:C
r11:1
r11:2
led12:A
led12:C
r12:1
r12:2
led13:A
led13:C
r13:1
r13:2
led14:A
led14:C
r14:1
r14:2
led15:A
led15:C
r15:1
r15:2
led16:A
led16:C
r16:1
r16:2
led17:A
led17:C
r17:1
r17:2
mux1:I15
mux1:I14
mux1:I13
mux1:I12
mux1:I11
mux1:I10
mux1:I9
mux1:I8
mux1:I7
mux1:I6
mux1:I5
mux1:I4
mux1:I3
mux1:I2
mux1:I1
mux1:I0
mux1:COM
mux1:S3
mux1:S2
mux1:S1
mux1:S0
mux1:EN
mux1:VCC
mux1:GND
r18:1
r18:2
led18:A
led18:C