test sending sensor results over lora radio. Accelerometer and temp/pressure.

Dependencies:   SX127x

Serial terminal operates at 115200.

This project provides a text-based menu over serial port.
Operating the program only requires using the arrow keys, enter key to activate a control, or entering numbers.

Two sensors provided:


LIS12DH12 accelerometer operates in a continuous sampling mode. Enable control for accelerometer enables this continuous sampling, approx every 3 seconds.
LPS22HH temperature / pressure sensor operates as single shot, where pressing the control button on terminal causes single sample to be performed.

poll rate control will enable repeated reading of pressure/temperature-sensor or photo-sensor when poll rate is greater than zero.

target must be: DISCO_L072CZ_LRWAN1

Revision:
0:e1e70da93044
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/c_demo/demo.h	Wed Apr 24 10:11:06 2019 -0700
@@ -0,0 +1,46 @@
+#include "x_nucleo_iks01a2.h"
+#include "x_nucleo_iks01a2_accelero.h"
+#include "x_nucleo_iks01a2_pressure.h"
+#include "x_nucleo_iks01a2_temperature.h"
+
+#define SAMPLE_LIST_MAX  10      /*!< Max. number of acceleration values (X,Y,Z) to be printed to UART */
+#define FIFO_INDICATION_DELAY  100 /*!< When FIFO event ocurs, LED is ON for at least this period [ms] */
+
+#define LIS2DH_MAIN_NONE        0
+#define LIS2DH_BSP_FAIL         1
+#define LIS2DH_FAIL             2
+#define LIS2DH_FAIL_STATE       3
+#define LIS2DH_MAIN_SLEEP       4
+#define LIS2DH_MAIN_READ_FIFO       5
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef struct displayFloatToInt_s
+{
+  int8_t sign; /* 0 means positive, 1 means negative */
+  uint32_t out_int;
+  uint32_t out_dec;
+} displayFloatToInt_t;
+
+int demo_start(void);
+
+int lis2dh_mainloop(void);
+
+uint8_t accel_get_num_samples(void);
+int lis2dh_set_fifo_bypass(void);
+DrvStatusTypeDef lis2dh12_get_axes(SensorAxes_t *);
+
+void lis2dh_int1(void); // irq callback
+
+void c_log_printf(const char* format, ...);   // from main.cpp
+void demo_sample_temp(displayFloatToInt_t*);
+void demo_sample_pressure(displayFloatToInt_t*);
+int lis2dh_set_fifo_mode(void);
+int accel_enable(uint8_t);
+int accel_is_enabled(uint8_t* status);
+
+#ifdef __cplusplus
+}
+#endif