aboutsummaryrefslogtreecommitdiff
path: root/spaghetti-monster/fsm-adc.c
diff options
context:
space:
mode:
authorSelene ToyKeeper2020-10-18 15:19:29 -0600
committerSelene ToyKeeper2020-10-18 15:19:29 -0600
commit6ae4e78bc385b78ac810e35fd9381a15f5f698c5 (patch)
treeec85e844bf75e6df8534805b0babbd98764734d2 /spaghetti-monster/fsm-adc.c
parentminor update to anduril-ui.png (added clarification of what "3H" means) (diff)
parentcleaned up cfg-fw3x-lume1.h a little: (diff)
downloadanduril-6ae4e78bc385b78ac810e35fd9381a15f5f698c5.tar.gz
anduril-6ae4e78bc385b78ac810e35fd9381a15f5f698c5.tar.bz2
anduril-6ae4e78bc385b78ac810e35fd9381a15f5f698c5.zip
merged lume1 branch for LoneOceans' FW3A-Lume1 driver support
Diffstat (limited to 'spaghetti-monster/fsm-adc.c')
-rw-r--r--spaghetti-monster/fsm-adc.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/spaghetti-monster/fsm-adc.c b/spaghetti-monster/fsm-adc.c
index 4fc777b..91562a2 100644
--- a/spaghetti-monster/fsm-adc.c
+++ b/spaghetti-monster/fsm-adc.c
@@ -20,6 +20,14 @@
#ifndef FSM_ADC_C
#define FSM_ADC_C
+// override onboard temperature sensor definition, if relevant
+#ifdef USE_EXTERNAL_TEMP_SENSOR
+#ifdef ADMUX_THERM
+#undef ADMUX_THERM
+#endif
+#define ADMUX_THERM ADMUX_THERM_EXTERNAL_SENSOR
+#endif
+
static inline void set_admux_therm() {
#if (ATTINY == 1634)
@@ -335,7 +343,13 @@ static inline void ADC_temperature_handler() {
// let the UI see the current temperature in C
// Convert ADC units to Celsius (ish)
+ #ifndef USE_EXTERNAL_TEMP_SENSOR
+ // onboard sensor for attiny25/45/85/1634
temperature = (measurement>>1) + THERM_CAL_OFFSET + (int16_t)therm_cal_offset - 275;
+ #else
+ // external sensor
+ temperature = EXTERN_TEMP_FORMULA(measurement>>1) + THERM_CAL_OFFSET + (int16_t)therm_cal_offset;
+ #endif
// how much has the temperature changed between now and a few seconds ago?
int16_t diff;