Removed 'loop' avoidance

Cleans up the code slightly. If the compiler is smart, the functions are
inlined regardless.
This commit is contained in:
David Madison 2017-05-05 09:05:47 -04:00
parent 0e16794589
commit e9092c39fe
1 changed files with 20 additions and 29 deletions

View File

@ -117,19 +117,16 @@ void setup(){
#endif #endif
Serial.begin(SerialSpeed); Serial.begin(SerialSpeed);
Serial.print("Ada\n"); // Send ACK string to host
lastByteTime = lastAckTime = millis(); // Set initial counters
}
void loop(){
adalight(); adalight();
} }
void adalight(){ void adalight(){
Serial.print("Ada\n"); // Send ACK string to host
lastByteTime = lastAckTime = millis();
// loop() is avoided as even that small bit of function overhead
// has a measurable impact on this code's overall throughput.
for(;;) {
// Implementation is a simple finite-state machine. // Implementation is a simple finite-state machine.
// Regardless of mode, check for serial input each time: // Regardless of mode, check for serial input each time:
t = millis(); t = millis();
@ -149,7 +146,6 @@ void adalight(){
else { else {
timeouts(); timeouts();
} }
}
} }
void headerMode(){ void headerMode(){
@ -231,8 +227,3 @@ void timeouts(){
} }
} }
} }
void loop(){
// loop() is avoided as even that small bit of function overhead
// has a measurable impact on this code's overall throughput.
}