From 21699f23f9639d0ac0f2f77a532ebbf05020609d Mon Sep 17 00:00:00 2001 From: Alexander Richter Date: Sat, 16 Sep 2023 16:50:36 +0200 Subject: [PATCH] more changes to multiplex LEDs --- LinuxCNC_ArduinoConnector.ino | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/LinuxCNC_ArduinoConnector.ino b/LinuxCNC_ArduinoConnector.ino index 96c1ad8..f51a8d8 100644 --- a/LinuxCNC_ArduinoConnector.ino +++ b/LinuxCNC_ArduinoConnector.ino @@ -924,23 +924,26 @@ void multiplexLeds() { pinMode(LedGndPins[i], OUTPUT); digitalWrite(LedGndPins[i], HIGH); // Set to HIGH to disable all GND Pins } - if(ledStates[currentLED]==1){ - digitalWrite(LedVccPins[currentLED%numVccPins],ledStates[currentLED]); + if(ledStates[currentLED]==1){//turn active LEDs on. + digitalWrite(LedVccPins[currentLED%numVccPins],HIGH); digitalWrite(LedGndPins[currentLED/numVccPins],LOW); + delayMicroseconds(interval); #ifdef DEBUG Serial.print(currentLED%numVccPins); //row - Serial.print("/ "); + Serial.print(" % row ;/ col"); Serial.print(currentLED/numVccPins); //column - Serial.print(" wrt "); - Serial.print(ledStates[currentLED]); //row + Serial.print(" write "); + Serial.print(ledStates[currentLED]); //LED State Serial.println(" /"); #endif } - + currentLED++; + /* if (currentMillis - previousMillis >= interval) { // Check if it's time to update the LED matrix previousMillis = currentMillis; // Save the last update time currentLED++; } + */ if(currentLED >= numVccPins*numGndPins){ currentLED= 0; }