Merge pull request #85 from tipsmiller/master

Add new control type to ADC application
This commit is contained in:
Benjamin Vedder 2019-04-14 07:22:56 +02:00 committed by GitHub
commit 025334c141
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 1 deletions

View File

@ -147,6 +147,7 @@ static THD_FUNCTION(adc_thread, arg) {
// Map the read voltage // Map the read voltage
switch (config.ctrl_type) { switch (config.ctrl_type) {
case ADC_CTRL_TYPE_CURRENT_REV_CENTER: case ADC_CTRL_TYPE_CURRENT_REV_CENTER:
case ADC_CTRL_TYPE_CURRENT_REV_BUTTON_BRAKE_CENTER:
case ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_CENTER: case ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_CENTER:
case ADC_CTRL_TYPE_DUTY_REV_CENTER: case ADC_CTRL_TYPE_DUTY_REV_CENTER:
case ADC_CTRL_TYPE_PID_REV_CENTER: case ADC_CTRL_TYPE_PID_REV_CENTER:
@ -230,6 +231,7 @@ static THD_FUNCTION(adc_thread, arg) {
} else { } else {
// When only one button input is available, use it differently depending on the control mode // When only one button input is available, use it differently depending on the control mode
if (config.ctrl_type == ADC_CTRL_TYPE_CURRENT_REV_BUTTON || if (config.ctrl_type == ADC_CTRL_TYPE_CURRENT_REV_BUTTON ||
config.ctrl_type == ADC_CTRL_TYPE_CURRENT_REV_BUTTON_BRAKE_CENTER ||
config.ctrl_type == ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_BUTTON || config.ctrl_type == ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_BUTTON ||
config.ctrl_type == ADC_CTRL_TYPE_DUTY_REV_BUTTON) { config.ctrl_type == ADC_CTRL_TYPE_DUTY_REV_BUTTON) {
rev_button = !palReadPad(HW_ICU_GPIO, HW_ICU_PIN); rev_button = !palReadPad(HW_ICU_GPIO, HW_ICU_PIN);
@ -252,6 +254,7 @@ static THD_FUNCTION(adc_thread, arg) {
switch (config.ctrl_type) { switch (config.ctrl_type) {
case ADC_CTRL_TYPE_CURRENT_REV_CENTER: case ADC_CTRL_TYPE_CURRENT_REV_CENTER:
case ADC_CTRL_TYPE_CURRENT_REV_BUTTON_BRAKE_CENTER:
case ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_CENTER: case ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_CENTER:
case ADC_CTRL_TYPE_DUTY_REV_CENTER: case ADC_CTRL_TYPE_DUTY_REV_CENTER:
case ADC_CTRL_TYPE_PID_REV_CENTER: case ADC_CTRL_TYPE_PID_REV_CENTER:
@ -325,6 +328,7 @@ static THD_FUNCTION(adc_thread, arg) {
} }
break; break;
case ADC_CTRL_TYPE_CURRENT_REV_BUTTON_BRAKE_CENTER:
case ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_CENTER: case ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_CENTER:
case ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_BUTTON: case ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_BUTTON:
case ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_ADC: case ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_ADC:
@ -341,7 +345,8 @@ static THD_FUNCTION(adc_thread, arg) {
ms_without_power += (1000.0 * (float)sleep_time) / (float)CH_CFG_ST_FREQUENCY; ms_without_power += (1000.0 * (float)sleep_time) / (float)CH_CFG_ST_FREQUENCY;
} }
if (config.ctrl_type == ADC_CTRL_TYPE_CURRENT_REV_BUTTON_BRAKE_ADC && rev_button) { if ((config.ctrl_type == ADC_CTRL_TYPE_CURRENT_REV_BUTTON_BRAKE_ADC ||
config.ctrl_type == ADC_CTRL_TYPE_CURRENT_REV_BUTTON_BRAKE_CENTER) && rev_button) {
current_rel = -current_rel; current_rel = -current_rel;
} }
break; break;

View File

@ -360,6 +360,7 @@ typedef enum {
ADC_CTRL_TYPE_CURRENT_REV_CENTER, ADC_CTRL_TYPE_CURRENT_REV_CENTER,
ADC_CTRL_TYPE_CURRENT_REV_BUTTON, ADC_CTRL_TYPE_CURRENT_REV_BUTTON,
ADC_CTRL_TYPE_CURRENT_REV_BUTTON_BRAKE_ADC, ADC_CTRL_TYPE_CURRENT_REV_BUTTON_BRAKE_ADC,
ADC_CTRL_TYPE_CURRENT_REV_BUTTON_BRAKE_CENTER,
ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_CENTER, ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_CENTER,
ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_BUTTON, ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_BUTTON,
ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_ADC, ADC_CTRL_TYPE_CURRENT_NOREV_BRAKE_ADC,