|
#include <stdbool.h>
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include "acc_config.h"
#include "acc_definitions_a121.h"
#include "acc_definitions_common.h"
#include "acc_hal_definitions_a121.h"
#include "acc_hal_integration_a121.h"
#include "acc_integration.h"
#include "acc_processing.h"
#include "acc_rss_a121.h"
#include "acc_sensor.h"
#include "acc_version.h"
Go to the source code of this file.
Macros | |
#define | SENSOR_ID (1U) |
#define | SENSOR_TIMEOUT_MS (1000U) |
#define | MAX_DATA_ENTRY_LEN (15U) |
#define | MAX_CAL_TEMP_DIFF (16) |
#define | MAX_TEMP_VARIATION (125) |
#define | MAX_CACHE_COUNT ((MAX_TEMP_VARIATION / MAX_CAL_TEMP_DIFF) + 1) |
Functions | |
static void | set_config (acc_config_t *config) |
static bool | find_cache_index (int16_t temp, uint16_t *cache_index) |
static bool | get_next_empty_cache_index (uint16_t *cache_index) |
static bool | add_cache (uint16_t cache_index, int16_t temp) |
static bool | calibration_caching_and_prepare (acc_sensor_t *sensor, acc_config_t *config, void *buffer, uint32_t buffer_size, bool temp_known, int16_t temp) |
static void | cleanup (acc_config_t *config, acc_processing_t *processing, acc_sensor_t *sensor, void *buffer) |
int | app_main (int argc, char *argv[]) |
Assembly test example. More... | |
Variables | |
static acc_cal_result_t | cal_results [(((125)/(16))+1)] |
static int16_t | cal_temps [(((125)/(16))+1)] |
static uint16_t | curr_cache_count = 0 |
#define MAX_CACHE_COUNT ((MAX_TEMP_VARIATION / MAX_CAL_TEMP_DIFF) + 1) |
Definition at line 68 of file example_service_calibration_caching.c.
#define MAX_CAL_TEMP_DIFF (16) |
A sensor calibration is valid at the temperature it was done +- 15 degrees
If the temperature isn't controlled during caching, which is the case in this example, the maximum amount of caches needs to be calculated from a temperature difference of 16.
For example
However, if the temperature is controlled, for example in a factory, the maximum amount of caches can be calculated from a temperature difference of 30.
For example
The maximum temperature variation that the application will operate in is assumed to be -40 to 85 degrees in this example.
Definition at line 66 of file example_service_calibration_caching.c.
#define MAX_DATA_ENTRY_LEN (15U) |
Definition at line 41 of file example_service_calibration_caching.c.
#define MAX_TEMP_VARIATION (125) |
Definition at line 67 of file example_service_calibration_caching.c.
#define SENSOR_ID (1U) |
Definition at line 39 of file example_service_calibration_caching.c.
#define SENSOR_TIMEOUT_MS (1000U) |
Definition at line 40 of file example_service_calibration_caching.c.
|
static |
Definition at line 271 of file example_service_calibration_caching.c.
int app_main | ( | int | argc, |
char * | argv[] | ||
) |
Assembly test example.
Service subsweeps example.
Low power service example.
Service multple configurations example.
Service sensor calibration caching example.
Service example.
Processing subtract adaptive background example.
Processing static presence example.
Processing peak interpolation example.
Processing noncoherent mean example.
Processing coherent mean example.
Processing amplitude example.
Detector presence example with multiple configurations.
Detector presence example.
Detector distance example with iq data print.
Detector distance with calibration caching example.
Detector distance example.
Control helper example.
Detector filters and states are reset on prepare (reconfiguration) to avoid risk of false detections when switching back to a zone.
Detector filters and states are reset on prepare (reconfiguration) to avoid risk of false detections when switching back to a zone.
Detector filters and states are reset on prepare (reconfiguration) to avoid risk of false detections when switching back to a zone.
Detector filters and states are reset on prepare (reconfiguration) to avoid risk of false detections when switching back to a zone.
Definition at line 99 of file example_service_calibration_caching.c.
|
static |
Definition at line 286 of file example_service_calibration_caching.c.
|
static |
Definition at line 362 of file example_service_calibration_caching.c.
|
static |
Definition at line 240 of file example_service_calibration_caching.c.
|
static |
Definition at line 263 of file example_service_calibration_caching.c.
|
static |
Definition at line 231 of file example_service_calibration_caching.c.
|
static |
Definition at line 71 of file example_service_calibration_caching.c.
|
static |
Definition at line 72 of file example_service_calibration_caching.c.
|
static |
Definition at line 73 of file example_service_calibration_caching.c.