|
Paparazzi UAS
v5.12_stable-4-g9b43e9b
Paparazzi is a free software Unmanned Aircraft System.
|
Temperature sensor module for LM35 or NTC (10k / 100k) sensor via analog input. More...
#include "std.h"#include "modules/sensors/temp_adc.h"#include "mcu_periph/adc.h"#include "mcu_periph/uart.h"#include "pprzlink/messages.h"#include "subsystems/datalink/downlink.h"#include <BOARD_CONFIG>#include "subsystems/datalink/telemetry.h"
Include dependency graph for temp_adc.c:Go to the source code of this file.
Macros | |
| #define | LM35 0 |
| #define | NTC 1 |
| #define | TEMP_ADC_NB_SAMPLES DEFAULT_AV_NB_SAMPLE |
| #define | TEMP_ADC_SYNC_SEND FALSE |
| Send a TEMP_ADC message with every new measurement. More... | |
Functions | |
| float | get_temp (uint8_t nr) |
| static float | calc_ntc (int16_t raw_adc, uint16_t pull_up_r, float a, float b, float c) |
| Calculate the NTC tempreature in celcius based on the Steinhart equation. More... | |
| static float | calc_lm35 (int16_t raw_temp) |
| static void | temp_adc_downlink (struct transport_tx *trans, struct link_device *dev) |
| void | temp_adc_init (void) |
| Temperature ADC initialize channels. More... | |
| void | temp_adc_periodic (void) |
Variables | |
| bool | temp_adc_sync_send = false |
| static float | temp_c1 |
| static float | temp_c2 |
| static float | temp_c3 |
Temperature sensor module for LM35 or NTC (10k / 100k) sensor via analog input.
Definition in file temp_adc.c.
| #define LM35 0 |
Definition at line 55 of file temp_adc.c.
| #define NTC 1 |
Definition at line 56 of file temp_adc.c.
| #define TEMP_ADC_NB_SAMPLES DEFAULT_AV_NB_SAMPLE |
Definition at line 91 of file temp_adc.c.
Referenced by temp_adc_init().
| #define TEMP_ADC_SYNC_SEND FALSE |
Send a TEMP_ADC message with every new measurement.
Mainly for debug, use with caution, sends message at ~10Hz.
Definition at line 98 of file temp_adc.c.
Referenced by temp_adc_init().
|
inlinestatic |
Definition at line 116 of file temp_adc.c.
Referenced by temp_adc_periodic().
Here is the caller graph for this function:
|
inlinestatic |
Calculate the NTC tempreature in celcius based on the Steinhart equation.
Definition at line 104 of file temp_adc.c.
References ADC_RESOLUTION.
Referenced by temp_adc_periodic().
Here is the caller graph for this function:| float get_temp | ( | uint8_t | nr | ) |
Definition at line 37 of file temp_adc.c.
|
static |
Definition at line 121 of file temp_adc.c.
References temp_c1, temp_c2, and temp_c3.
Referenced by temp_adc_init(), and temp_adc_periodic().
Here is the caller graph for this function:| void temp_adc_init | ( | void | ) |
Temperature ADC initialize channels.
Definition at line 129 of file temp_adc.c.
References adc_buf_channel(), DefaultPeriodic, register_periodic_telemetry(), TEMP_ADC_CHANNEL1, TEMP_ADC_CHANNEL2, temp_adc_downlink(), TEMP_ADC_NB_SAMPLES, temp_adc_sync_send, and TEMP_ADC_SYNC_SEND.
Here is the call graph for this function:| void temp_adc_periodic | ( | void | ) |
Definition at line 151 of file temp_adc.c.
References calc_lm35(), calc_ntc(), DefaultChannel, DefaultDevice, TEMP_ADC_CHANNEL1_A, TEMP_ADC_CHANNEL1_B, TEMP_ADC_CHANNEL1_C, TEMP_ADC_CHANNEL1_PU_R, TEMP_ADC_CHANNEL2_A, TEMP_ADC_CHANNEL2_B, TEMP_ADC_CHANNEL2_C, TEMP_ADC_CHANNEL2_PU_R, temp_adc_downlink(), temp_adc_sync_send, temp_c1, temp_c2, and temp_c3.
Here is the call graph for this function:| bool temp_adc_sync_send = false |
Definition at line 34 of file temp_adc.c.
Referenced by temp_adc_init(), and temp_adc_periodic().
|
static |
Definition at line 35 of file temp_adc.c.
Referenced by get_temp(), temp_adc_downlink(), and temp_adc_periodic().
|
static |
Definition at line 35 of file temp_adc.c.
Referenced by get_temp(), temp_adc_downlink(), and temp_adc_periodic().
|
static |
Definition at line 35 of file temp_adc.c.
Referenced by get_temp(), temp_adc_downlink(), and temp_adc_periodic().