#include "ulozisko.h"
int length = 0;
int height = 0;
int line = 0;
int dot = 0;
float bod = 0;
int count = 0;
byte val = 0;
/*
unsigned long present = 0;
unsigned long present2 = 0;
unsigned long past = 0;
unsigned long past2 = 0;
*/
void setup() {
height = sizeof(img) / sizeof(img[0]);
length = sizeof(img[0]);
pinMode(2, INPUT_PULLUP); // reed switch
pinMode(3, INPUT_PULLUP); // tacho generator
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
attachInterrupt(digitalPinToInterrupt(2), skuska, FALLING);
attachInterrupt(digitalPinToInterrupt(3), skuska2, CHANGE);
//Serial.begin(115200);
}
void skuska() {
line = line + 1;
count = 0;
dot = 0;
}
void skuska2() {
count = count + 1;
}
void loop() {
val = pgm_read_byte(&(img[line][dot]));
/*present = millis();*/
dot = count / 3;
bod = count / 3.00;
if (dot >= length - 1) {
dot = length - 1;
bod = length;
}
if (line >= height) {
line = 0;
}
if(bod - dot < 0.25) {
digitalWrite(5, val);
}
if(bod - dot >= 0.25) {
digitalWrite(5, LOW);
}
/*
if (present - past >= 100) {
// count = count + 1;
Serial.print("Dot: ");
Serial.println(dot);
Serial.print("Line: ");
Serial.println(line);
Serial.print("Val: ");
Serial.println(val);
//Serial.println(bod - dot); // this line is debugging
past = present;
}
*/
}