From 97296db236e83a17a12608afe66667b085a1376f Mon Sep 17 00:00:00 2001 From: Ken <> Date: Wed, 30 Oct 2019 14:33:15 -0400 Subject: [PATCH] Finish implementing digitalWriteFast to save MCU cycles. Moved Serial.begin to be after the call to attachInterrupt for code clarity. --- .../src/Pyr0_Piezo_Sensor_V2.x.x.cpp | 12 ++++++------ .../Pyr0_Piezo_Sensor_v2.x.x/src/pP_function.h | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/firmware/AVR-Source/Pyr0_Piezo_Sensor_v2.x.x/src/Pyr0_Piezo_Sensor_V2.x.x.cpp b/firmware/AVR-Source/Pyr0_Piezo_Sensor_v2.x.x/src/Pyr0_Piezo_Sensor_V2.x.x.cpp index 04bc410..af37f29 100644 --- a/firmware/AVR-Source/Pyr0_Piezo_Sensor_v2.x.x/src/Pyr0_Piezo_Sensor_V2.x.x.cpp +++ b/firmware/AVR-Source/Pyr0_Piezo_Sensor_v2.x.x/src/Pyr0_Piezo_Sensor_V2.x.x.cpp @@ -119,10 +119,10 @@ void setup() { pinMode(GADJ_R1, INPUT); // declare input to set high impedance pinMode(GADJ_R2, INPUT); // declare input to set high impedance pinMode(GADJ_R3, INPUT); // declare input to set high impedance - Serial.begin(9600); attachInterrupt(digitalPinToInterrupt(Z_TRG), pulse, FALLING); + Serial.begin(9600); Serial.println("Initializing Pyr0-Piezo Sensor..."); restoreConfig(); @@ -138,8 +138,8 @@ void loop() { // Blink LED's on init if (BlinkCount > 0) { BlinkState = !BlinkState; - digitalWrite(ERR_LED, BlinkState); - digitalWrite(TRG_OUT, BlinkState); + digitalWriteFast(ERR_LED, BlinkState); + digitalWriteFast(TRG_OUT, BlinkState); --BlinkCount; } @@ -174,8 +174,8 @@ void loop() { // Blink LED's on init if (BlinkCount > 0) { BlinkState = !BlinkState; - digitalWrite(ERR_LED, BlinkState); - digitalWrite(TRG_OUT, BlinkState); + digitalWriteFast(ERR_LED, BlinkState); + digitalWriteFast(TRG_OUT, BlinkState); --BlinkCount; } else { // Check for error state @@ -187,7 +187,7 @@ void loop() { serialPrintState(); } // Sets trigger output state to false after completing loop - //digitalWrite(TRG_OUT, HIGH); + //digitalWriteFast(TRG_OUT, HIGH); sensorHReading = 0; } } diff --git a/firmware/AVR-Source/Pyr0_Piezo_Sensor_v2.x.x/src/pP_function.h b/firmware/AVR-Source/Pyr0_Piezo_Sensor_v2.x.x/src/pP_function.h index f10701e..fdf588f 100644 --- a/firmware/AVR-Source/Pyr0_Piezo_Sensor_v2.x.x/src/pP_function.h +++ b/firmware/AVR-Source/Pyr0_Piezo_Sensor_v2.x.x/src/pP_function.h @@ -120,25 +120,25 @@ void adjustGain() { } else if (GAIN_FACTOR > 0) { pinMode(GADJ_R3, OUTPUT); - digitalWrite(GADJ_R3, LOW); + digitalWriteFast(GADJ_R3, LOW); pinMode(GADJ_R2, INPUT); pinMode(GADJ_R1, INPUT); pinMode(GADJ_R0, INPUT); } else if (GAIN_FACTOR > 1) { pinMode(GADJ_R2, OUTPUT); - digitalWrite(GADJ_R2, LOW); + digitalWriteFast(GADJ_R2, LOW); pinMode(GADJ_R1, INPUT); pinMode(GADJ_R0, INPUT); } else if (GAIN_FACTOR > 2) { pinMode(GADJ_R1, OUTPUT); - digitalWrite(GADJ_R1, LOW); + digitalWriteFast(GADJ_R1, LOW); pinMode(GADJ_R0, INPUT); } else if (GAIN_FACTOR > 3) { pinMode(GADJ_R0, OUTPUT); - digitalWrite(GADJ_R0, LOW); + digitalWriteFast(GADJ_R0, LOW); } } @@ -146,11 +146,11 @@ void adjustGain() { void checkError () { if (ERR_STATE == 1) { - digitalWrite(ERR_LED, BlinkState); + digitalWriteFast(ERR_LED, BlinkState); BlinkState = !BlinkState; } else if (ERR_STATE == 0) { BlinkState = LOW; - digitalWrite(ERR_LED, BlinkState); + digitalWriteFast(ERR_LED, BlinkState); } }