Browse Source

Sends byte every time

master
Dejvino 1 year ago
parent
commit
d9e9df964e
1 changed files with 18 additions and 21 deletions
  1. +18
    -21
      terminal_keyboard_emulator.ino

+ 18
- 21
terminal_keyboard_emulator.ino View File

@@ -34,10 +34,10 @@ void statusCycle() {
if (changeDiff >= 10) {
lastStart = timeNow;

dataWord = (' ' + x);
dataState = 8;
dataDelay = 0;
x = (x + 1) % 100;
dataWord = ('1' + x);
dataState = 10;
dataDelay = 1;
x = (x + 1) % 3;
clkState = HIGH;
Timer1.start();
}
@@ -49,28 +49,25 @@ void statusCycle() {

void clockCycle(void)
{
int dataBit = HIGH;
if (clkState == LOW) {
clkState = HIGH;
//digitalWrite(pinData, (dataState > 0) ? LOW : HIGH);
} else {
clkState = LOW;
if (dataDelay > 0) {
dataDelay--;
} else if (dataState > 0) {
int bitToSend = (dataWord >> (dataState - 1)) & 1;
//digitalWrite(pinData, bitToSend ? LOW : HIGH);
dataState--;
if (dataState <= 0) {
Timer1.stop();
}
} else {
//digitalWrite(pinData, HIGH);
}
}
if (dataDelay <= 0 && dataState > 0)
digitalWrite(pinData, clkState);
else
digitalWrite(pinData, HIGH);
if (dataDelay > 0) {
dataDelay--;
} else if (dataState > 0) {
int bitToSend = (dataWord >> (dataState - 1)) & 1;
//int bitToSend = dataWord & 1;
//dataWord = dataWord >> 1;
dataBit = !bitToSend ? LOW : HIGH;
dataState--;
} else {
//digitalWrite(pinData, HIGH);
Timer1.stop();
}
digitalWrite(pinData, dataBit);
}

void loop(void)


Loading…
Cancel
Save