basic wire up of old slave code to master code

This commit is contained in:
Kilian Bracher 2025-01-31 00:58:55 +01:00
parent f3cae7b757
commit 3ee15518d2
Signed by: k.bracher
SSH Key Fingerprint: SHA256:mXpyZkK7RDiJ7qeHCKJX108woM0cl5TrCvNBJASu6lM
3 changed files with 11 additions and 3 deletions

View File

@ -2,6 +2,7 @@
#define INC_SLAVE_MONITORING_H #define INC_SLAVE_MONITORING_H
#include <stdint.h> #include <stdint.h>
#include "stm32h7xx_hal.h"
#define N_SLAVES 7 #define N_SLAVES 7
#define N_CELLS_SERIES 15 #define N_CELLS_SERIES 15
@ -57,7 +58,7 @@ extern SlaveHandle slaves[N_SLAVES];
extern uint16_t min_voltage; extern uint16_t min_voltage;
extern int16_t max_temp; extern int16_t max_temp;
void slaves_init(); void slaves_init(SPI_HandleTypeDef *hspi);
void slaves_check(); void slaves_check();
void slaves_handle_panic(const uint8_t *data); void slaves_handle_panic(const uint8_t *data);

View File

@ -163,7 +163,7 @@ int main(void)
MX_ADC2_Init(); MX_ADC2_Init();
/* USER CODE BEGIN 2 */ /* USER CODE BEGIN 2 */
can_init(&hfdcan1); can_init(&hfdcan1);
slaves_init(); slaves_init(&hspi1);
shunt_init(); shunt_init();
ts_sm_init(); ts_sm_init();
soc_init(); soc_init();

View File

@ -1,5 +1,6 @@
#include "slave_monitoring.h" #include "slave_monitoring.h"
#include "AMS_HighLevel.h"
#include "can.h" #include "can.h"
#include "main.h" #include "main.h"
#include "ts_state_machine.h" #include "ts_state_machine.h"
@ -34,7 +35,7 @@ static size_t get_slave_index(uint8_t slave_id) {
return slave_id_to_index[slave_id]; return slave_id_to_index[slave_id];
} }
void slaves_init() { void slaves_init(SPI_HandleTypeDef *hspi) {
memset(slave_id_to_index, 0xFF, sizeof(slave_id_to_index)); memset(slave_id_to_index, 0xFF, sizeof(slave_id_to_index));
for (int i = 0; i < N_SLAVES; i++) { for (int i = 0; i < N_SLAVES; i++) {
slaves[i].id = 0xFF; slaves[i].id = 0xFF;
@ -45,6 +46,8 @@ void slaves_init() {
slaves[i].max_temp = 0; slaves[i].max_temp = 0;
} }
AMS_Init(hspi);
//HAL_GPIO_WritePin(SLAVE_POWER_0_GPIO_Port, SLAVE_POWER_0_Pin, GPIO_PIN_SET); //HAL_GPIO_WritePin(SLAVE_POWER_0_GPIO_Port, SLAVE_POWER_0_Pin, GPIO_PIN_SET);
//HAL_GPIO_WritePin(SLAVE_POWER_1_GPIO_Port, SLAVE_POWER_1_Pin, GPIO_PIN_SET); //HAL_GPIO_WritePin(SLAVE_POWER_1_GPIO_Port, SLAVE_POWER_1_Pin, GPIO_PIN_SET);
//HAL_GPIO_WritePin(SLAVE_POWER_DSEL_GPIO_Port, SLAVE_POWER_DSEL_Pin, //HAL_GPIO_WritePin(SLAVE_POWER_DSEL_GPIO_Port, SLAVE_POWER_DSEL_Pin,
@ -58,6 +61,10 @@ void slaves_check() {
int any_slave_error = 0; int any_slave_error = 0;
TSErrorKind slave_error = TS_ERRORKIND_NONE; TSErrorKind slave_error = TS_ERRORKIND_NONE;
AMS_Idle_Loop();
//TODO: rewrite to use data from BMS driver
uint32_t now = HAL_GetTick(); uint32_t now = HAL_GetTick();
uint16_t min_voltage_new = 0xFFFF; uint16_t min_voltage_new = 0xFFFF;
int16_t max_temp_new = 0xFFFF; int16_t max_temp_new = 0xFFFF;