Pins moved to config

This commit is contained in:
CarlWachter 2024-03-11 14:55:33 +01:00
parent c688f08966
commit b0346ec032
3 changed files with 52 additions and 16 deletions

View File

@ -42,4 +42,40 @@
#define SYSTEM_CAN_V_IN 0x126
#define SYSTEM_CAN_ERROR 0x013
// Pin Definitions:
// Thermocouples:
#define STA_THERMO_SPI &hspi2
#define THERMO1_CS_GROUP GPIOE
#define THERMO1_CS_PIN GPIO_PIN_12
#define THERMO2_CS_GROUP GPIOB
#define THERMO2_CS_PIN GPIO_PIN_10
#define THERMO3_CS_GROUP GPIOE
#define THERMO3_CS_PIN GPIO_PIN_15
#define THERMO4_CS_GROUP GPIOE
#define THERMO4_CS_PIN GPIO_PIN_14
#define THERMO5_CS_GROUP GPIOE
#define THERMO5_CS_PIN GPIO_PIN_13
// Relays:
#define RELAY1_GROUP GPIOA
#define RELAY1_PIN GPIO_PIN_2
#define RELAY2_GROUP GPIOA
#define RELAY2_PIN GPIO_PIN_1
#define RELAY3_GROUP GPIOA
#define RELAY3_PIN GPIO_PIN_0
#define RELAY4_GROUP GPIOA
#define RELAY4_PIN GPIO_PIN_3
#define RELAY5_GROUP GPIOA
#define RELAY5_PIN GPIO_PIN_6
#endif /* INC_STA_CONFIG_HPP_ */

View File

@ -26,41 +26,41 @@ void RelayTask::func() {
switch (dev) {
case 1:
if (value == 1) {
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_2, GPIO_PIN_SET);
HAL_GPIO_WritePin(RELAY1_GROUP, RELAY1_GROUP_PIN, GPIO_PIN_SET);
} else if (value == 0) {
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_2, GPIO_PIN_RESET);
HAL_GPIO_WritePin(RELAY1_GROUP, RELAY1_GROUP_PIN, GPIO_PIN_RESET);
}
break;
case 2:
if (value == 1) {
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_1, GPIO_PIN_SET);
HAL_GPIO_WritePin(RELAY2_GROUP, RELAY2_GROUP_PIN, GPIO_PIN_SET);
} else if (value == 0) {
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_1, GPIO_PIN_RESET);
HAL_GPIO_WritePin(RELAY2_GROUP, RELAY2_GROUP_PIN, GPIO_PIN_RESET);
}
break;
case 3:
if (value == 1) {
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_0, GPIO_PIN_SET);
HAL_GPIO_WritePin(RELAY3_GROUP, RELAY3_GROUP_PIN, GPIO_PIN_SET);
} else if (value == 0) {
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_0, GPIO_PIN_RESET);
HAL_GPIO_WritePin(RELAY3_GROUP, RELAY3_GROUP_PIN, GPIO_PIN_RESET);
}
break;
case 4:
if (value == 1) {
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_3, GPIO_PIN_SET);
HAL_GPIO_WritePin(RELAY4_GROUP, RELAY4_GROUP_PIN, GPIO_PIN_SET);
} else if (value == 0) {
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_3, GPIO_PIN_RESET);
HAL_GPIO_WritePin(RELAY4_GROUP, RELAY4_GROUP_PIN, GPIO_PIN_RESET);
}
break;
case 5:
if (value == 1) {
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_6, GPIO_PIN_SET);
HAL_GPIO_WritePin(RELAY5_GROUP, RELAY5_GROUP_PIN, GPIO_PIN_SET);
} else if (value == 0) {
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_6, GPIO_PIN_RESET);
HAL_GPIO_WritePin(RELAY5_GROUP, RELAY5_GROUP_PIN, GPIO_PIN_RESET);
}
break;
}

View File

@ -28,14 +28,14 @@ namespace tasks
void ThermoTask::init()
{
mutex = new sta::RtosMutex("spi2");
spi2 = new sta::STM32SPI(&hspi2, 16000000, mutex);
spi2 = new sta::STM32SPI(STA_THERMO_SPI, 16000000, mutex);
// Init cs pins
cs_pin[0] = new sta::STM32GpioPin(GPIOE, GPIO_PIN_12);
cs_pin[1] = new sta::STM32GpioPin(GPIOB, GPIO_PIN_10);
cs_pin[2] = new sta::STM32GpioPin(GPIOE, GPIO_PIN_15);
cs_pin[3] = new sta::STM32GpioPin(GPIOE, GPIO_PIN_14);
cs_pin[4] = new sta::STM32GpioPin(GPIOE, GPIO_PIN_13);
cs_pin[0] = new sta::STM32GpioPin(THERMO1_CS_GROUP, THERMO1_CS_PIN);
cs_pin[1] = new sta::STM32GpioPin(THERMO2_CS_GROUP, THERMO2_CS_PIN);
cs_pin[2] = new sta::STM32GpioPin(THERMO3_CS_GROUP, THERMO3_CS_PIN);
cs_pin[3] = new sta::STM32GpioPin(THERMO4_CS_GROUP, THERMO4_CS_PIN);
cs_pin[4] = new sta::STM32GpioPin(THERMO5_CS_GROUP, THERMO5_CS_PIN);
// init devices
for (uint8_t i = 0; i < 5; i++){