aboutsummaryrefslogtreecommitdiff
path: root/example-fs-bb48/sample.c
diff options
context:
space:
mode:
Diffstat (limited to 'example-fs-bb48/sample.c')
-rw-r--r--example-fs-bb48/sample.c32
1 files changed, 25 insertions, 7 deletions
diff --git a/example-fs-bb48/sample.c b/example-fs-bb48/sample.c
index fd71f21..b224003 100644
--- a/example-fs-bb48/sample.c
+++ b/example-fs-bb48/sample.c
@@ -8,6 +8,7 @@
#include "board.h"
#include "crc32.h"
+#include "adc.h"
struct GPIO {
volatile uint32_t PDOR; /* Port Data Output Register */
@@ -175,6 +176,9 @@ main (int argc, const char *argv[])
(void)argc;
(void)argv;
+ adc_init ();
+ adc_start ();
+
chopstx_mutex_init (&mtx);
chopstx_cond_init (&cnd0);
chopstx_cond_init (&cnd1);
@@ -247,16 +251,30 @@ main (int argc, const char *argv[])
if (size >= 0)
{
- int i;
unsigned int value;
- crc32_init ();
- s[0] = hexchar (size >> 4);
- s[1] = hexchar (size & 0x0f);
+ if (s[4] == 't')
+ {
+ s[0] = 'T';
+ s[1] = 'M';
+
+ adc_start_conversion (0, 1);
+ adc_wait_completion (NULL);
+ value = adc_buf[0];
+ }
+ else
+ {
+ int i;
+
+ crc32_init ();
+ s[0] = hexchar (size >> 4);
+ s[1] = hexchar (size & 0x0f);
+
+ for (i = 0; i < size; i++)
+ crc32_u8 (s[4 + i]);
+ value = crc32_value () ^ 0xffffffff;
+ }
- for (i = 0; i < size; i++)
- crc32_u8 (s[4 + i]);
- value = crc32_value () ^ 0xffffffff;
s[4] = hexchar (value >> 28);
s[5] = hexchar (value >> 24);
s[6] = hexchar (value >> 20);