LoRaWAN demo.

Dependencies:   modem_ref_helper DebouncedInterrupt

Committer:
Jeej
Date:
Tue Aug 20 13:57:57 2019 +0000
Revision:
18:d6806fbd61fc
Parent:
0:06ba20deb797
WizziCom now uses DMA instead of interrupts.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Jeej 0:06ba20deb797 1 #ifndef __SENSOR_H__
Jeej 0:06ba20deb797 2 #define __SENSOR_H__
Jeej 0:06ba20deb797 3
Jeej 0:06ba20deb797 4 #include "hal_types.h"
Jeej 0:06ba20deb797 5
Jeej 0:06ba20deb797 6 typedef uint16_t light_value_t;
Jeej 0:06ba20deb797 7
Jeej 0:06ba20deb797 8 // Types of reporting
Jeej 0:06ba20deb797 9 typedef enum
Jeej 0:06ba20deb797 10 {
Jeej 0:06ba20deb797 11 REPORT_ALWAYS,
Jeej 0:06ba20deb797 12 REPORT_ON_DIFFERENCE,
Jeej 0:06ba20deb797 13 REPORT_ON_THRESHOLD,
Jeej 0:06ba20deb797 14 } report_type_t;
Jeej 0:06ba20deb797 15
Jeej 0:06ba20deb797 16 // Sensor reporting configuration
Jeej 0:06ba20deb797 17 TYPEDEF_STRUCT_PACKED
Jeej 0:06ba20deb797 18 {
Jeej 0:06ba20deb797 19 uint8_t report_type; // Type of report asked
Jeej 0:06ba20deb797 20 uint32_t read_period; // Measure period (ms)
Jeej 0:06ba20deb797 21 uint32_t max_period; // Maximum time between reports (s)
Jeej 0:06ba20deb797 22 uint32_t max_diff; // Maximum difference allowed between two reported values
Jeej 0:06ba20deb797 23 int32_t threshold_high; // High threshold value triggering a report
Jeej 0:06ba20deb797 24 int32_t threshold_low; // Low threshold value triggering a report
Jeej 0:06ba20deb797 25 } sensor_config_t;
Jeej 0:06ba20deb797 26
Jeej 0:06ba20deb797 27 light_value_t sensor_get_light(void);
Jeej 0:06ba20deb797 28
Jeej 0:06ba20deb797 29 #endif