aboutsummaryrefslogtreecommitdiff
path: root/recipes-demo/de10-nano-fftsw-apps/files/create_real_short_square32.c
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-demo/de10-nano-fftsw-apps/files/create_real_short_square32.c')
-rw-r--r--recipes-demo/de10-nano-fftsw-apps/files/create_real_short_square32.c35
1 files changed, 35 insertions, 0 deletions
diff --git a/recipes-demo/de10-nano-fftsw-apps/files/create_real_short_square32.c b/recipes-demo/de10-nano-fftsw-apps/files/create_real_short_square32.c
new file mode 100644
index 0000000..7cbd578
--- /dev/null
+++ b/recipes-demo/de10-nano-fftsw-apps/files/create_real_short_square32.c
@@ -0,0 +1,35 @@
+#include <stdio.h>
+#include <unistd.h>
+#include <limits.h>
+#include <error.h>
+#include <errno.h>
+
+#define SAMPLES_PER_PERIOD (32)
+static short waveform_array[SAMPLES_PER_PERIOD];
+
+int main(void) {
+
+ int i;
+ int result;
+ short wave_temp;
+
+ wave_temp = SHRT_MAX;
+ for(i = 0 ; i < (SAMPLES_PER_PERIOD) ; i++) {
+ if (i == (SAMPLES_PER_PERIOD / 2))
+ wave_temp = SHRT_MIN;
+
+ waveform_array[i] = wave_temp;
+ }
+
+ result = write(STDOUT_FILENO, &waveform_array, sizeof(waveform_array));
+ if (result < 0) {
+ error(1, errno, "writing to stdout");
+ }
+
+ if (result != sizeof(waveform_array)) {
+ error(1, 0, "failed to write %d bytes to stdout, only wrote %d bytes", sizeof(waveform_array), result);
+ }
+
+ return 0;
+}
+