Peter Scholtens
/
BitstreamGenerator
Generates a fixed pattern with constant output. Needed for debugging the SimpleDecimationFilter.
main.cpp
- Committer:
- pscholtens
- Date:
- 2015-05-27
- Revision:
- 0:f9195b124694
File content as of revision 0:f9195b124694:
#include "mbed.h" #include "FastIO.h" //DigitalOut bitstream(p8); FastOut<p8> bitstream; DigitalOut myled(LED1); Serial pc(USBTX, USBRX); // tx, rx Timer timer; #define LOOP 1000000 int main() { int data[42]; data[ 0] = 0; data[ 1] = 1; data[ 2] = 0; data[ 3] = 0; data[ 4] = 1; data[ 5] = 1; data[ 6] = 0; data[ 7] = 0; data[ 8] = 0; data[ 9] = 1; data[10] = 1; data[11] = 1; data[12] = 0; data[13] = 0; data[14] = 0; data[15] = 0; data[16] = 1; data[17] = 1; data[18] = 1; data[19] = 1; data[20] = 0; data[21] = 0; data[22] = 0; data[23] = 0; data[24] = 0; data[25] = 1; data[26] = 1; data[27] = 1; data[28] = 1; data[29] = 1; data[30] = 0; data[31] = 0; data[32] = 0; data[33] = 0; data[34] = 0; data[35] = 0; data[36] = 1; data[37] = 1; data[38] = 1; data[39] = 1; data[40] = 1; data[41] = 1; int index = 0; int dummy; int iter_incr = 1; float duration; pc.baud(115200); pc.printf("Start\n"); timer.reset(); timer.start(); loop: for (int i = 0; i < LOOP; i+=iter_incr) { bitstream = data[index]; index = (index+1)%42; /* Begin of useless calculation to force 1 MHz runtime */ dummy = 3; for (int j = 0; j <51; j++) { dummy+=dummy; } /* End of useless calculation to force 1 MHz runtime */ } timer.stop(); duration = timer.read(); pc.printf("Loop took %f seconds, %g per iteration\n",duration,duration/LOOP); /* After testing the speed of the loop during 1 second, now continu to run it forever. */ iter_incr = 0; goto loop; }