GY-63_MS5611/libraries/FastShiftOut/Examples/FastShiftOut_test/FastShiftOut_test.ino

179 lines
3.4 KiB
Arduino
Raw Normal View History

2020-11-27 05:16:22 -05:00
//
// FILE: FastShiftOut_test.ino
// AUTHOR: Rob Tillaart
// PURPOSE: test sketch
2021-05-28 07:26:27 -04:00
// URL: https://github.com/RobTillaart/FastShiftOut
2020-11-27 05:16:22 -05:00
2021-05-28 07:26:27 -04:00
2020-11-27 05:16:22 -05:00
#include "FastShiftOut.h"
FastShiftOut FSO(12, 13, LSBFIRST);
uint32_t start, duration1, duration2;
2021-05-28 07:26:27 -04:00
2020-11-27 05:16:22 -05:00
void setup()
{
Serial.begin(115200);
Serial.print("example fastShiftOut: ");
Serial.println(FASTSHIFTOUT_LIB_VERSION);
Serial.println("\nPerformance - time in us");
test1();
test2();
test3();
2022-11-05 07:39:40 -04:00
test4();
test5();
2020-11-27 05:16:22 -05:00
Serial.println("\ndone ...\n");
}
2021-05-28 07:26:27 -04:00
2020-11-27 05:16:22 -05:00
void test1()
{
start = micros();
for (int i = 0; i < 1000; i++)
{
FSO.write(0x55);
}
duration1 = micros() - start;
2022-11-05 07:39:40 -04:00
Serial.print(" write: ");
2020-11-27 05:16:22 -05:00
Serial.println(duration1 * 0.001);
start = micros();
for (int i = 0; i < 1000; i++)
{
FSO.write(0x55);
FSO.write(0x55);
}
duration2 = micros() - start;
2022-11-05 07:39:40 -04:00
Serial.print(" write: ");
2020-11-27 05:16:22 -05:00
Serial.println(duration2 * 0.001);
Serial.print(" Delta: ");
Serial.println((duration2 - duration1) * 0.001);
Serial.println();
delay(100);
}
void test2()
2022-11-05 07:39:40 -04:00
{
start = micros();
for (int i = 0; i < 1000; i++)
{
FSO.writeLSBFIRST(0x55);
}
duration1 = micros() - start;
Serial.print("writeLSBFIRST: ");
Serial.println(duration1 * 0.001);
start = micros();
for (int i = 0; i < 1000; i++)
{
FSO.write(0x55);
FSO.write(0x55);
}
duration2 = micros() - start;
Serial.print("writeLSBFIRST: ");
Serial.println(duration2 * 0.001);
Serial.print(" Delta: ");
Serial.println((duration2 - duration1) * 0.001);
Serial.println();
delay(100);
}
void test3()
{
start = micros();
for (int i = 0; i < 1000; i++)
{
FSO.write(0x55);
}
duration1 = micros() - start;
Serial.print("writeMSBFIRST: ");
Serial.println(duration1 * 0.001);
start = micros();
for (int i = 0; i < 1000; i++)
{
FSO.writeMSBFIRST(0x55);
FSO.writeMSBFIRST(0x55);
}
duration2 = micros() - start;
Serial.print("writeMSBFIRST: ");
Serial.println(duration2 * 0.001);
Serial.print(" Delta: ");
Serial.println((duration2 - duration1) * 0.001);
Serial.println();
delay(100);
}
void test4()
2020-11-27 05:16:22 -05:00
{
start = micros();
for (int i = 0; i < 1000; i++)
{
2021-01-29 06:31:58 -05:00
shiftOut(12, 13, LSBFIRST, 0x55);
2020-11-27 05:16:22 -05:00
}
duration1 = micros() - start;
Serial.print("Standard shiftOut1: ");
Serial.println(duration1 * 0.001);
start = micros();
for (int i = 0; i < 1000; i++)
{
2021-01-29 06:31:58 -05:00
shiftOut(12, 13, LSBFIRST, 0x55);
shiftOut(12, 13, LSBFIRST, 0x55);
2020-11-27 05:16:22 -05:00
}
duration2 = micros() - start;
Serial.print("Standard shiftOut2: ");
Serial.println(duration2 * 0.001);
Serial.print(" Delta: ");
Serial.println((duration2 - duration1) * 0.001);
Serial.println();
delay(100);
}
2021-05-28 07:26:27 -04:00
2022-11-05 07:39:40 -04:00
void test5()
2020-11-27 05:16:22 -05:00
{
Serial.println("\nTest print interface");
start = micros();
for (int i = 0; i < 100; i++)
{
FSO.println("Hello world");
}
duration1 = micros() - start;
Serial.print("println(\"Hello world\"): \t");
Serial.println(duration1 * 0.01);
start = micros();
for (int i = 0; i < 100; i++)
{
FSO.println(1357);
}
duration1 = micros() - start;
Serial.print("println(1357): \t\t\t");
Serial.println(duration1 * 0.01);
start = micros();
for (int i = 0; i < 100; i++)
{
FSO.println(3.14159265, 4);
}
duration1 = micros() - start;
Serial.print("println(3.14159265, 4): \t");
Serial.println(duration1 * 0.01);
delay(100);
}
2021-05-28 07:26:27 -04:00
2020-11-27 05:16:22 -05:00
void loop()
{
}
2021-05-28 07:26:27 -04:00
2022-11-05 07:39:40 -04:00
// -- END OF FILE --