mirror of https://github.com/rusefi/bldc.git
Added lispbm gpio-support for adc1 and adc2
This commit is contained in:
parent
2f9faf8ac9
commit
9ec5fec4cf
|
@ -58,6 +58,13 @@ void app_adc_configure(adc_config *conf) {
|
|||
}
|
||||
|
||||
void app_adc_start(bool use_rx_tx) {
|
||||
#ifdef HW_ADC_EXT_GPIO
|
||||
palSetPadMode(HW_ADC_EXT_GPIO, HW_ADC_EXT_PIN, PAL_MODE_INPUT_ANALOG);
|
||||
#endif
|
||||
#ifdef HW_ADC_EXT2_GPIO
|
||||
palSetPadMode(HW_ADC_EXT2_GPIO, HW_ADC_EXT2_PIN, PAL_MODE_INPUT_ANALOG);
|
||||
#endif
|
||||
|
||||
use_rx_tx_as_buttons = use_rx_tx;
|
||||
stop_now = false;
|
||||
chThdCreateStatic(adc_thread_wa, sizeof(adc_thread_wa), NORMALPRIO, adc_thread, NULL);
|
||||
|
|
|
@ -944,6 +944,8 @@ Configure GPIO pin to mode. Example:
|
|||
'pin-hall1 ; Sensor port hall1
|
||||
'pin-hall2 ; Sensor port hall2
|
||||
'pin-hall3 ; Sensor port hall3
|
||||
'pin-adc1 ; ADC1-pin on COMM-port
|
||||
'pin-adc2 ; ADC2-pin on COMM-port
|
||||
|
||||
; Available modes
|
||||
'pin-mode-out ; Output
|
||||
|
|
|
@ -84,6 +84,8 @@ typedef struct {
|
|||
lbm_uint pin_hall1;
|
||||
lbm_uint pin_hall2;
|
||||
lbm_uint pin_hall3;
|
||||
lbm_uint pin_adc1;
|
||||
lbm_uint pin_adc2;
|
||||
|
||||
// Settings
|
||||
lbm_uint l_current_min;
|
||||
|
@ -215,6 +217,10 @@ static bool compare_symbol(lbm_uint sym, lbm_uint *comp) {
|
|||
get_add_symbol("pin-hall2", comp);
|
||||
} else if (comp == &syms_vesc.pin_hall3) {
|
||||
get_add_symbol("pin-hall3", comp);
|
||||
} else if (comp == &syms_vesc.pin_adc1) {
|
||||
get_add_symbol("pin-adc1", comp);
|
||||
} else if (comp == &syms_vesc.pin_adc2) {
|
||||
get_add_symbol("pin-adc2", comp);
|
||||
}
|
||||
|
||||
else if (comp == &syms_vesc.l_current_min) {
|
||||
|
@ -338,6 +344,16 @@ static bool gpio_get_pin(lbm_uint sym, stm32_gpio_t **port, int *pin) {
|
|||
} else if (compare_symbol(sym, &syms_vesc.pin_hall3)) {
|
||||
*port = HW_HALL_ENC_GPIO3; *pin = HW_HALL_ENC_PIN3;
|
||||
return true;
|
||||
} else if (compare_symbol(sym, &syms_vesc.pin_adc1)) {
|
||||
#ifdef HW_ADC_EXT_GPIO
|
||||
*port = HW_ADC_EXT_GPIO; *pin = HW_ADC_EXT_PIN;
|
||||
return true;
|
||||
#endif
|
||||
} else if (compare_symbol(sym, &syms_vesc.pin_adc2)) {
|
||||
#ifdef HW_ADC_EXT2_GPIO
|
||||
*port = HW_ADC_EXT2_GPIO; *pin = HW_ADC_EXT2_PIN;
|
||||
return true;
|
||||
#endif
|
||||
}
|
||||
|
||||
return false;
|
||||
|
@ -2760,6 +2776,13 @@ static lbm_value ext_bufset_bit(lbm_value *args, lbm_uint argn) {
|
|||
}
|
||||
|
||||
void lispif_load_vesc_extensions(void) {
|
||||
#ifdef HW_ADC_EXT_GPIO
|
||||
palSetPadMode(HW_ADC_EXT_GPIO, HW_ADC_EXT_PIN, PAL_MODE_INPUT_ANALOG);
|
||||
#endif
|
||||
#ifdef HW_ADC_EXT2_GPIO
|
||||
palSetPadMode(HW_ADC_EXT2_GPIO, HW_ADC_EXT2_PIN, PAL_MODE_INPUT_ANALOG);
|
||||
#endif
|
||||
|
||||
lbm_add_symbol_const("event-can-sid", &sym_event_can_sid);
|
||||
lbm_add_symbol_const("event-can-eid", &sym_event_can_eid);
|
||||
lbm_add_symbol_const("event-data-rx", &sym_event_data_rx);
|
||||
|
|
Loading…
Reference in New Issue