#include <EEPROM.h>
#define BAUDRATE 115200
#define D_MIN 2
#define D_MAX 13
#define A_MIN 14
#define A_MAX 21
#define DEBUG
struct Config
{
uint8_t pin;
uint8_t value;
uint8_t packet[16];
};
Config Map[] = {
{ 3, 0, {0x53, 0x45, 0x54, 0x3A, 0x30, 0x33, 0x3A, 0x30, 0x30, 0x0A}},
{ 3, 1, {0x53, 0x45, 0x54, 0x3A, 0x30, 0x33, 0x3A, 0x30, 0x31, 0x0A}},
{ 4, 0, {0x53, 0x45, 0x54, 0x3A, 0x30, 0x34, 0x3A, 0x30, 0x30, 0x0A}},
{ 4, 1, {0x53, 0x45, 0x54, 0x3A, 0x30, 0x34, 0x3A, 0x30, 0x31, 0x0A}},
{ 5, 0, {0x53, 0x45, 0x54, 0x3A, 0x30, 0x35, 0x3A, 0x30, 0x30, 0x0A}},
{ 5, 1, {0x53, 0x45, 0x54, 0x3A, 0x30, 0x35, 0x3A, 0x30, 0x31, 0x0A}},
{ 6, 0, {0x53, 0x45, 0x54, 0x3A, 0x30, 0x36, 0x3A, 0x30, 0x30, 0x0A}},
{ 6, 1, {0x53, 0x45, 0x54, 0x3A, 0x30, 0x36, 0x3A, 0x30, 0x31, 0x0A}},
{ 7, 0, {0x53, 0x45, 0x54, 0x3A, 0x30, 0x37, 0x3A, 0x30, 0x30, 0x0A}},
{ 7, 1, {0x53, 0x45, 0x54, 0x3A, 0x30, 0x37, 0x3A, 0x30, 0x31, 0x0A}},
{ 8, 0, {0x53, 0x45, 0x54, 0x3A, 0x30, 0x38, 0x3A, 0x30, 0x30, 0x0A}},
{ 8, 1, {0x53, 0x45, 0x54, 0x3A, 0x30, 0x38, 0x3A, 0x30, 0x31, 0x0A}},
{ 9, 0, {0x53, 0x45, 0x54, 0x3A, 0x30, 0x39, 0x3A, 0x30, 0x30, 0x0A}},
{ 9, 1, {0x53, 0x45, 0x54, 0x3A, 0x30, 0x39, 0x3A, 0x30, 0x31, 0x0A}},
{10, 0, {0x53, 0x45, 0x54, 0x3A, 0x31, 0x30, 0x3A, 0x30, 0x30, 0x0A}},
{10, 1, {0x53, 0x45, 0x54, 0x3A, 0x31, 0x30, 0x3A, 0x30, 0x31, 0x0A}},
{11, 0, {0x53, 0x45, 0x54, 0x3A, 0x31, 0x31, 0x3A, 0x30, 0x30, 0x0A}},
{11, 1, {0x53, 0x45, 0x54, 0x3A, 0x31, 0x31, 0x3A, 0x30, 0x31, 0x0A}},
{12, 0, {0x53, 0x45, 0x54, 0x3A, 0x31, 0x32, 0x3A, 0x30, 0x30, 0x0A}},
{12, 1, {0x53, 0x45, 0x54, 0x3A, 0x31, 0x32, 0x3A, 0x30, 0x31, 0x0A}},
};
const int MapCount = sizeof(Map) / sizeof(Map[0]);
uint8_t buffer[16];
uint8_t pin_state[64];
#ifdef DEBUG
void randomEEPROM()
{
for(int i = 0; i < MapCount; i++)
{
randomSeed(analogRead(A0));
EEPROM.write(Map[i].pin, random(0, 2));
}
}
#endif
void setup() {
Serial.begin(BAUDRATE);
#ifdef DEBUG
randomEEPROM();
#endif
Serial.println(A1);
for(int i = 0; i < MapCount; i++)
{
pinMode(Map[i].pin, OUTPUT);
pin_state[Map[i].pin] = EEPROM.read(i);
digitalWrite(Map[i].pin, pin_state[Map[i].pin]);
}
}
void loop() {
}