Main fall er fyrsta version sem virkar, klasi fyrir ofan er púslun úr því sem mun koma til með að endurskrifa main fall útfrá.

This commit is contained in:
dadij
2026-09-03 18:40:08 +00:00
parent 36aabc56bc
commit b07b0a0169
+50
View File
@@ -0,0 +1,50 @@
#include <avr/io.h>
#include <util/delay.h>
#include <Arduino.h>
#include "digital_in.h"
#include "digital_out.h"
int main() {
uint8_t cycle{0};
int8_t counter{0};
double ratio;
bool last_lo = false;
Digital_in encoderA{4};
Digital_in encoderB{5};
Digital_out led{5};
encoderA.init();
encoderB.init();
led.init();
Serial.begin(9600);
while (true) {
_delay_us(100);
led.set_lo();
bool curr_hi = encoderA.is_hi();
if (last_lo && curr_hi) {
counter += encoderB.is_lo() ? -1 : 1;
led.set_hi();
}
++cycle;
if (cycle == 255) {
ratio = counter / (0.0255 * 700);
counter = 0;
cycle = 0;
Serial.println(ratio);
}
last_lo = !curr_hi;
}
return 0;
}