EN11 is actually EC11, some sample work.

This commit is contained in:
Pete Johanson
2020-07-20 20:54:58 -04:00
parent 331bfa7052
commit 109c69cbab
11 changed files with 237 additions and 247 deletions

View File

@@ -1,6 +0,0 @@
# SPDX-License-Identifier: Apache-2.0
zephyr_library()
zephyr_library_sources_ifdef(CONFIG_EN11 en11.c)
zephyr_library_sources_ifdef(CONFIG_EN11_TRIGGER en11_trigger.c)

View File

@@ -1,52 +0,0 @@
# EN11 incremental encoder sensor configuration options
# Copyright (c) 2020 Peter Johanson
# SPDX-License-Identifier: MIT
menuconfig EN11
bool "EN11 Incremental Encoder Sensor"
depends on GPIO
help
Enable driver for EN11 incremental encoder sensors.
if EN11
choice
prompt "Trigger mode"
default EN11_TRIGGER_NONE
help
Specify the type of triggering to be used by the driver.
config EN11_TRIGGER_NONE
bool "No trigger"
config EN11_TRIGGER_GLOBAL_THREAD
bool "Use global thread"
depends on GPIO
select EN11_TRIGGER
config EN11_TRIGGER_OWN_THREAD
bool "Use own thread"
depends on GPIO
select EN11_TRIGGER
endchoice
config EN11_TRIGGER
bool
config EN11_THREAD_PRIORITY
int "Thread priority"
depends on EN11_TRIGGER_OWN_THREAD
default 10
help
Priority of thread used by the driver to handle interrupts.
config EN11_THREAD_STACK_SIZE
int "Thread stack size"
depends on EN11_TRIGGER_OWN_THREAD
default 1024
help
Stack size of thread used by the driver to handle interrupts.
endif # EN11

View File

@@ -23,7 +23,22 @@ static struct sensor_trigger trigger;
void encoder_change(struct device *dev, struct sensor_trigger *trigger)
{
int err;
struct sensor_value value;
LOG_DBG("");
err = sensor_sample_fetch(dev);
if (err) {
LOG_ERR("Failed to fetch new EC11 sample");
return;
}
err = sensor_channel_get(dev, SENSOR_CHAN_ROTATION, &value);
if (err) {
LOG_DBG("Failed to get the sample for EC11 %d", err);
return;
}
}
void init_sensor()