changes to main , timer 6 activated ( old pdu prescaler settings )
This commit is contained in:
		@ -13,12 +13,12 @@
 | 
			
		||||
typedef union {
 | 
			
		||||
  struct {
 | 
			
		||||
    uint8_t NC : 1;
 | 
			
		||||
    uint8_t en13 : 1; // name it according to power stage
 | 
			
		||||
    uint8_t en2 : 1;
 | 
			
		||||
    uint8_t en1 : 1;
 | 
			
		||||
    uint8_t en4 : 1;
 | 
			
		||||
    uint8_t en11 : 1;
 | 
			
		||||
    uint8_t en8 : 1;
 | 
			
		||||
    uint8_t en13 : 1;     // inverters
 | 
			
		||||
    uint8_t en2 : 1;      //servos regler
 | 
			
		||||
    uint8_t en1 : 1;      //acu
 | 
			
		||||
    uint8_t en4 : 1;      // reserved
 | 
			
		||||
    uint8_t en11 : 1;      //lidar
 | 
			
		||||
    uint8_t en8 : 1;      // sdc
 | 
			
		||||
    uint8_t alwayson : 1; // en7 ist always on 
 | 
			
		||||
  };
 | 
			
		||||
  uint8_t porta;
 | 
			
		||||
@ -26,14 +26,14 @@ typedef union {
 | 
			
		||||
 | 
			
		||||
typedef union {
 | 
			
		||||
  struct {
 | 
			
		||||
    uint8_t en15: 1;
 | 
			
		||||
    uint8_t en12 : 1;
 | 
			
		||||
    uint8_t NC : 1;
 | 
			
		||||
    uint8_t en3 : 1;
 | 
			
		||||
    uint8_t en6 : 1;
 | 
			
		||||
    uint8_t en5 : 1;
 | 
			
		||||
    uint8_t en14 : 1;
 | 
			
		||||
    uint8_t en16 : 1;
 | 
			
		||||
    uint8_t en15: 1;      // epsc
 | 
			
		||||
    uint8_t en12 : 1;     // hyd aggregat 
 | 
			
		||||
    uint8_t NC : 1;       
 | 
			
		||||
    uint8_t en3 : 1;      // ebs cs valve
 | 
			
		||||
    uint8_t en6 : 1;      // ebs valve b
 | 
			
		||||
    uint8_t en5 : 1;     //ebs valve a
 | 
			
		||||
    uint8_t en14 : 1;    //servos
 | 
			
		||||
    uint8_t en16 : 1;     //misc
 | 
			
		||||
  };
 | 
			
		||||
  uint8_t portb;
 | 
			
		||||
} gpio_port_b;
 | 
			
		||||
 | 
			
		||||
@ -59,8 +59,32 @@ void Error_Handler(void);
 | 
			
		||||
/* USER CODE END EFP */
 | 
			
		||||
 | 
			
		||||
/* Private defines -----------------------------------------------------------*/
 | 
			
		||||
#define isense12_Pin GPIO_PIN_0
 | 
			
		||||
#define isense12_GPIO_Port GPIOC
 | 
			
		||||
#define isense11_Pin GPIO_PIN_1
 | 
			
		||||
#define isense11_GPIO_Port GPIOC
 | 
			
		||||
#define isense6_Pin GPIO_PIN_2
 | 
			
		||||
#define isense6_GPIO_Port GPIOC
 | 
			
		||||
#define isense13_Pin GPIO_PIN_3
 | 
			
		||||
#define isense13_GPIO_Port GPIOC
 | 
			
		||||
#define DSEL_8_Pin GPIO_PIN_0
 | 
			
		||||
#define DSEL_8_GPIO_Port GPIOA
 | 
			
		||||
#define isense5_Pin GPIO_PIN_1
 | 
			
		||||
#define isense5_GPIO_Port GPIOA
 | 
			
		||||
#define isense3_Pin GPIO_PIN_2
 | 
			
		||||
#define isense3_GPIO_Port GPIOA
 | 
			
		||||
#define isense7_Pin GPIO_PIN_3
 | 
			
		||||
#define isense7_GPIO_Port GPIOA
 | 
			
		||||
#define isense2_Pin GPIO_PIN_4
 | 
			
		||||
#define isense2_GPIO_Port GPIOA
 | 
			
		||||
#define isense1_Pin GPIO_PIN_5
 | 
			
		||||
#define isense1_GPIO_Port GPIOA
 | 
			
		||||
#define isense10_Pin GPIO_PIN_6
 | 
			
		||||
#define isense10_GPIO_Port GPIOA
 | 
			
		||||
#define isense4_Pin GPIO_PIN_7
 | 
			
		||||
#define isense4_GPIO_Port GPIOA
 | 
			
		||||
#define GSS_GPIO_Pin GPIO_PIN_0
 | 
			
		||||
#define GSS_GPIO_GPIO_Port GPIOB
 | 
			
		||||
#define DSEL_3_Pin GPIO_PIN_12
 | 
			
		||||
#define DSEL_3_GPIO_Port GPIOB
 | 
			
		||||
#define DSEL_4_Pin GPIO_PIN_13
 | 
			
		||||
 | 
			
		||||
@ -36,8 +36,8 @@ void ChannelControl_init(I2C_HandleTypeDef* hi2c, TIM_HandleTypeDef* timer3,
 | 
			
		||||
void ChannelControl_UpdateGPIOs(PortExtenderGPIO UpdatePorts) { // ctrl + left click auf portextender 
 | 
			
		||||
  EN_Ports = UpdatePorts;
 | 
			
		||||
  UpdatePorts.porta.alwayson = 1; // Always on stays always on
 | 
			
		||||
 // PCA9535_setGPIOPortOutput(PC9535_PORTA, UpdatePorts.porta.porta);
 | 
			
		||||
  // PCA9535_setGPIOPortOutput(PC9535_PORTB, UpdatePorts.portb.portb);
 | 
			
		||||
 PCA9535_setGPIOPortOutput(PC9535_PORTA, UpdatePorts.porta.porta);
 | 
			
		||||
 PCA9535_setGPIOPortOutput(PC9535_PORTB, UpdatePorts.portb.portb);
 | 
			
		||||
 gpio_port_b testb={};
 | 
			
		||||
 testb.en14=1;
 | 
			
		||||
  PCA9535_setGPIOPortOutput(PC9535_PORTB, testb.portb);
 | 
			
		||||
 | 
			
		||||
@ -114,10 +114,10 @@ void HAL_ADC_ConvCpltCallback(ADC_HandleTypeDef* hadc) {
 | 
			
		||||
    current_measurements_adc_val.radiator_fans=
 | 
			
		||||
          adc_channels1.adcbank1.isense6 * CURR_SENSE_FACTOR_21A; 
 | 
			
		||||
 | 
			
		||||
    HAL_GPIO_WritePin(DSEL_5_GPIO_Port, DSEL_5_Pin,
 | 
			
		||||
                      adcbank1);
 | 
			
		||||
    HAL_GPIO_WritePin(DSEL_4_GPIO_Port, DSEL_4_Pin,
 | 
			
		||||
                      adcbank1);                   
 | 
			
		||||
                      adcbank1); 
 | 
			
		||||
    HAL_GPIO_WritePin(DSEL_5_GPIO_Port, DSEL_5_Pin,
 | 
			
		||||
                      adcbank1);                 
 | 
			
		||||
    HAL_GPIO_WritePin(DSEL_7_GPIO_Port, DSEL_7_Pin,
 | 
			
		||||
                      adcbank1); 
 | 
			
		||||
   }
 | 
			
		||||
 | 
			
		||||
@ -51,7 +51,7 @@ I2C_HandleTypeDef hi2c1;
 | 
			
		||||
 | 
			
		||||
TIM_HandleTypeDef htim2;
 | 
			
		||||
TIM_HandleTypeDef htim3;
 | 
			
		||||
 | 
			
		||||
TIM_HandleTypeDef htim6;
 | 
			
		||||
UART_HandleTypeDef huart1;
 | 
			
		||||
 | 
			
		||||
/* USER CODE BEGIN PV */
 | 
			
		||||
@ -119,13 +119,13 @@ int main(void)
 | 
			
		||||
  /* USER CODE BEGIN 2 */
 | 
			
		||||
  // HAL_GPIO_WritePin(Status_LED_GPIO_Port, Status_LED_Pin, GPIO_PIN_SET); // status led wird an gemacht , das leuchtet 
 | 
			
		||||
 | 
			
		||||
 // currentMonitor_init(&hadc1, &hadc2, &htim7); // handler struktur ( handler adc1 .... usw )
 | 
			
		||||
  currentMonitor_init(&hadc1, &hadc2, &htim6); // handler struktur ( handler adc1 .... usw )
 | 
			
		||||
  ChannelControl_init(&hi2c1, &htim3, &htim2);
 | 
			
		||||
  can_init(&hcan); // can bus initilisiert , kommunikation zum hauptsteuergeraet ( autobox )
 | 
			
		||||
  
 | 
			
		||||
  uint32_t lasttick = HAL_GetTick(); // gibt dir zuruck die milisekunden seit start. ( es fangt an und dann milisekunden + 1 usw....)
 | 
			
		||||
  // HAL_TIM_Base_Start(&htim2);
 | 
			
		||||
  // HAL_TIM_Base_Start(&htim3);
 | 
			
		||||
    HAL_TIM_Base_Start(&htim2);
 | 
			
		||||
    HAL_TIM_Base_Start(&htim3);
 | 
			
		||||
     HAL_GPIO_WritePin(STATUS_LED1_GPIO_Port , STATUS_LED1_Pin , GPIO_PIN_SET);
 | 
			
		||||
 | 
			
		||||
  // Turn everything on manually (debug)
 | 
			
		||||
 | 
			
		||||
@ -113,12 +113,12 @@ void HAL_ADC_MspInit(ADC_HandleTypeDef* hadc)
 | 
			
		||||
    PA2     ------> ADC1_IN3
 | 
			
		||||
    PA3     ------> ADC1_IN4
 | 
			
		||||
    */
 | 
			
		||||
    GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3;
 | 
			
		||||
    GPIO_InitStruct.Pin = isense12_Pin|isense11_Pin|isense6_Pin|isense13_Pin;
 | 
			
		||||
    GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
 | 
			
		||||
    GPIO_InitStruct.Pull = GPIO_NOPULL;
 | 
			
		||||
    HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
 | 
			
		||||
 | 
			
		||||
    GPIO_InitStruct.Pin = DSEL_8_Pin|GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3;
 | 
			
		||||
    GPIO_InitStruct.Pin = DSEL_8_Pin|isense5_Pin|isense3_Pin|isense7_Pin;
 | 
			
		||||
    GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
 | 
			
		||||
    GPIO_InitStruct.Pull = GPIO_NOPULL;
 | 
			
		||||
    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
 | 
			
		||||
@ -147,7 +147,7 @@ void HAL_ADC_MspInit(ADC_HandleTypeDef* hadc)
 | 
			
		||||
    PA7     ------> ADC2_IN4
 | 
			
		||||
    PC4     ------> ADC2_IN5
 | 
			
		||||
    */
 | 
			
		||||
    GPIO_InitStruct.Pin = GPIO_PIN_4|GPIO_PIN_5|GPIO_PIN_6|GPIO_PIN_7;
 | 
			
		||||
    GPIO_InitStruct.Pin = isense2_Pin|isense1_Pin|isense10_Pin|isense4_Pin;
 | 
			
		||||
    GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
 | 
			
		||||
    GPIO_InitStruct.Pull = GPIO_NOPULL;
 | 
			
		||||
    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
 | 
			
		||||
@ -193,9 +193,9 @@ void HAL_ADC_MspDeInit(ADC_HandleTypeDef* hadc)
 | 
			
		||||
    PA2     ------> ADC1_IN3
 | 
			
		||||
    PA3     ------> ADC1_IN4
 | 
			
		||||
    */
 | 
			
		||||
    HAL_GPIO_DeInit(GPIOC, GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3);
 | 
			
		||||
    HAL_GPIO_DeInit(GPIOC, isense12_Pin|isense11_Pin|isense6_Pin|isense13_Pin);
 | 
			
		||||
 | 
			
		||||
    HAL_GPIO_DeInit(GPIOA, DSEL_8_Pin|GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3);
 | 
			
		||||
    HAL_GPIO_DeInit(GPIOA, DSEL_8_Pin|isense5_Pin|isense3_Pin|isense7_Pin);
 | 
			
		||||
 | 
			
		||||
  /* USER CODE BEGIN ADC1_MspDeInit 1 */
 | 
			
		||||
 | 
			
		||||
@ -219,7 +219,7 @@ void HAL_ADC_MspDeInit(ADC_HandleTypeDef* hadc)
 | 
			
		||||
    PA7     ------> ADC2_IN4
 | 
			
		||||
    PC4     ------> ADC2_IN5
 | 
			
		||||
    */
 | 
			
		||||
    HAL_GPIO_DeInit(GPIOA, GPIO_PIN_4|GPIO_PIN_5|GPIO_PIN_6|GPIO_PIN_7);
 | 
			
		||||
    HAL_GPIO_DeInit(GPIOA, isense2_Pin|isense1_Pin|isense10_Pin|isense4_Pin);
 | 
			
		||||
 | 
			
		||||
    HAL_GPIO_DeInit(GPIOC, GPIO_PIN_4);
 | 
			
		||||
 | 
			
		||||
@ -421,6 +421,28 @@ void HAL_TIM_PWM_MspInit(TIM_HandleTypeDef* htim_pwm)
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
* @brief TIM_Base MSP Initialization
 | 
			
		||||
* This function configures the hardware resources used in this example
 | 
			
		||||
* @param htim_base: TIM_Base handle pointer
 | 
			
		||||
* @retval None
 | 
			
		||||
*/
 | 
			
		||||
void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base)
 | 
			
		||||
{
 | 
			
		||||
  if(htim_base->Instance==TIM6)
 | 
			
		||||
  {
 | 
			
		||||
  /* USER CODE BEGIN TIM6_MspInit 0 */
 | 
			
		||||
 | 
			
		||||
  /* USER CODE END TIM6_MspInit 0 */
 | 
			
		||||
    /* Peripheral clock enable */
 | 
			
		||||
    __HAL_RCC_TIM6_CLK_ENABLE();
 | 
			
		||||
  /* USER CODE BEGIN TIM6_MspInit 1 */
 | 
			
		||||
 | 
			
		||||
  /* USER CODE END TIM6_MspInit 1 */
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim)
 | 
			
		||||
{
 | 
			
		||||
  GPIO_InitTypeDef GPIO_InitStruct = {0};
 | 
			
		||||
@ -501,6 +523,28 @@ void HAL_TIM_PWM_MspDeInit(TIM_HandleTypeDef* htim_pwm)
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
* @brief TIM_Base MSP De-Initialization
 | 
			
		||||
* This function freeze the hardware resources used in this example
 | 
			
		||||
* @param htim_base: TIM_Base handle pointer
 | 
			
		||||
* @retval None
 | 
			
		||||
*/
 | 
			
		||||
void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* htim_base)
 | 
			
		||||
{
 | 
			
		||||
  if(htim_base->Instance==TIM6)
 | 
			
		||||
  {
 | 
			
		||||
  /* USER CODE BEGIN TIM6_MspDeInit 0 */
 | 
			
		||||
 | 
			
		||||
  /* USER CODE END TIM6_MspDeInit 0 */
 | 
			
		||||
    /* Peripheral clock disable */
 | 
			
		||||
    __HAL_RCC_TIM6_CLK_DISABLE();
 | 
			
		||||
  /* USER CODE BEGIN TIM6_MspDeInit 1 */
 | 
			
		||||
 | 
			
		||||
  /* USER CODE END TIM6_MspDeInit 1 */
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
* @brief UART MSP Initialization
 | 
			
		||||
* This function configures the hardware resources used in this example
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user