From e99d829f06a26a44334ba52d9b085fc103989eac Mon Sep 17 00:00:00 2001 From: Rahix <rahix@rahix.de> Date: Sun, 25 Aug 2019 12:08:36 +0200 Subject: [PATCH] fix(light-sensor): Lock ADC during measurement Signed-off-by: Rahix <rahix@rahix.de> --- epicardium/modules/light_sensor.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/epicardium/modules/light_sensor.c b/epicardium/modules/light_sensor.c index 3f3573f1..de20b6e2 100644 --- a/epicardium/modules/light_sensor.c +++ b/epicardium/modules/light_sensor.c @@ -29,8 +29,14 @@ static int light_sensor_init() uint16_t epic_light_sensor_read() { + if (hwlock_acquire(HWLOCK_ADC, pdMS_TO_TICKS(1000)) != 0) { + return 0; + } + ADC_StartConvert(ADC_CH_7, 0, 0); ADC_GetData(&last_value); + + hwlock_release(HWLOCK_ADC); return last_value; } -- GitLab