mirror of
https://gitlab.com/hyperglitch/jellyfish.git
synced 2025-12-27 15:16:46 +00:00
44 lines
1.2 KiB
C
44 lines
1.2 KiB
C
/*
|
|
* SPDX-FileCopyrightText: 2025 Igor Brkic <igor@hyperglitch.com>
|
|
*
|
|
* SPDX-License-Identifier: GPL-3.0-or-later
|
|
*/
|
|
|
|
#include "jf_routing.h"
|
|
#include "main.h"
|
|
|
|
|
|
|
|
void jf_routing_output_en(bool en) {
|
|
HAL_GPIO_WritePin(ENABLE_OUTPUT_GPIO_Port, ENABLE_OUTPUT_Pin, en ? GPIO_PIN_SET : GPIO_PIN_RESET);
|
|
}
|
|
bool jf_routing_output_status(void) {
|
|
return HAL_GPIO_ReadPin(ENABLE_OUTPUT_GPIO_Port, ENABLE_OUTPUT_Pin);
|
|
}
|
|
|
|
void jf_routing_iso_en(bool en) {
|
|
HAL_GPIO_WritePin(ENABLE_ISO_GPIO_Port, ENABLE_ISO_Pin, en ? GPIO_PIN_SET : GPIO_PIN_RESET);
|
|
}
|
|
bool jf_routing_iso_status(void) {
|
|
return HAL_GPIO_ReadPin(ENABLE_ISO_GPIO_Port, ENABLE_ISO_Pin);
|
|
}
|
|
|
|
void jf_routing_extin_en(bool en) {
|
|
HAL_GPIO_WritePin(ENABLE_EXT_IN_GPIO_Port, ENABLE_EXT_IN_Pin, en ? GPIO_PIN_SET : GPIO_PIN_RESET);
|
|
}
|
|
bool jf_routing_extin_status(void) {
|
|
return HAL_GPIO_ReadPin(ENABLE_EXT_IN_GPIO_Port, ENABLE_EXT_IN_Pin);
|
|
}
|
|
|
|
void jf_routing_init() {
|
|
// enable ideal diode controllers
|
|
HAL_GPIO_WritePin(ENABLE_USB1_GPIO_Port, ENABLE_USB1_Pin, 1);
|
|
HAL_GPIO_WritePin(ENABLE_DC_GPIO_Port, ENABLE_DC_Pin, 1);
|
|
|
|
// disable the isolation
|
|
jf_routing_iso_en(false);
|
|
|
|
// disable the external input
|
|
jf_routing_extin_en(false);
|
|
}
|