Ignore:
Timestamp:
Mar 5, 2025, 10:27:57 AM (2 months ago)
Author:
Zed
Message:

Everything works good. Fixing project.

Location:
ctrl/firmware/Main/CubeMX/Core
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • ctrl/firmware/Main/CubeMX/Core/Inc/dac.h

    r97 r107  
    3939#define DAC_RESOLUTION_BIT        (12U)
    4040
    41 #define DAC_U_LIMIT_CHANNEL       DAC_CHANNEL_2
     41#define DAC_LOAD_I_LIMIT_CHANNEL          DAC_CHANNEL_1
     42#define DAC_U_LIMIT_CHANNEL                       DAC_CHANNEL_2
    4243
    4344/* USER CODE END Private defines */
  • ctrl/firmware/Main/CubeMX/Core/Inc/main.h

    r106 r107  
    7070#define U_BAT_Pin GPIO_PIN_0
    7171#define U_BAT_GPIO_Port GPIOC
     72#define DAC_LOAD_I_LIMIT_Pin GPIO_PIN_4
     73#define DAC_LOAD_I_LIMIT_GPIO_Port GPIOA
    7274#define DAC_U_LIMIT_Pin GPIO_PIN_5
    7375#define DAC_U_LIMIT_GPIO_Port GPIOA
  • ctrl/firmware/Main/CubeMX/Core/Src/dac.c

    r98 r107  
    5151  }
    5252
    53   /** DAC channel OUT2 config
     53  /** DAC channel OUT1 config
    5454  */
    5555  sConfig.DAC_SampleAndHold = DAC_SAMPLEANDHOLD_DISABLE;
     
    5858  sConfig.DAC_ConnectOnChipPeripheral = DAC_CHIPCONNECT_DISABLE;
    5959  sConfig.DAC_UserTrimming = DAC_TRIMMING_FACTORY;
     60  if (HAL_DAC_ConfigChannel(&hdac1, &sConfig, DAC_CHANNEL_1) != HAL_OK)
     61  {
     62    Error_Handler();
     63  }
     64
     65  /** DAC channel OUT2 config
     66  */
    6067  if (HAL_DAC_ConfigChannel(&hdac1, &sConfig, DAC_CHANNEL_2) != HAL_OK)
    6168  {
     
    7380  }
    7481  else Error_Handler();
     82
     83  r = HAL_DAC_SetValue(&hdac1, DAC_LOAD_I_LIMIT_CHANNEL, DAC_ALIGN_12B_R, 0U);
     84  if (r == HAL_OK)
     85  {
     86          r = HAL_DAC_Start(&hdac1, DAC_LOAD_I_LIMIT_CHANNEL);
     87          if (r != HAL_OK) Error_Handler();
     88  }
     89  else Error_Handler();
     90
     91
    7592
    7693  /* USER CODE END DAC1_Init 2 */
     
    92109    __HAL_RCC_GPIOA_CLK_ENABLE();
    93110    /**DAC1 GPIO Configuration
     111    PA4     ------> DAC1_OUT1
    94112    PA5     ------> DAC1_OUT2
    95113    */
    96     GPIO_InitStruct.Pin = DAC_U_LIMIT_Pin;
     114    GPIO_InitStruct.Pin = DAC_LOAD_I_LIMIT_Pin|DAC_U_LIMIT_Pin;
    97115    GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
    98116    GPIO_InitStruct.Pull = GPIO_NOPULL;
    99     HAL_GPIO_Init(DAC_U_LIMIT_GPIO_Port, &GPIO_InitStruct);
     117    HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
    100118
    101119  /* USER CODE BEGIN DAC1_MspInit 1 */
     
    117135
    118136    /**DAC1 GPIO Configuration
     137    PA4     ------> DAC1_OUT1
    119138    PA5     ------> DAC1_OUT2
    120139    */
    121     HAL_GPIO_DeInit(DAC_U_LIMIT_GPIO_Port, DAC_U_LIMIT_Pin);
     140    HAL_GPIO_DeInit(GPIOA, DAC_LOAD_I_LIMIT_Pin|DAC_U_LIMIT_Pin);
    122141
    123142  /* USER CODE BEGIN DAC1_MspDeInit 1 */
  • ctrl/firmware/Main/CubeMX/Core/Src/gpio.c

    r106 r107  
    118118
    119119  /*Configure GPIO pins : PA0 PA1 PA2 PA3
    120                            PA4 PA6 PA7 PA9
    121                            PA10 PA11 PA12 */
     120                           PA6 PA7 PA9 PA10
     121                           PA11 PA12 */
    122122  GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3
    123                           |GPIO_PIN_4|GPIO_PIN_6|GPIO_PIN_7|GPIO_PIN_9
    124                           |GPIO_PIN_10|GPIO_PIN_11|GPIO_PIN_12;
     123                          |GPIO_PIN_6|GPIO_PIN_7|GPIO_PIN_9|GPIO_PIN_10
     124                          |GPIO_PIN_11|GPIO_PIN_12;
    125125  GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
    126126  GPIO_InitStruct.Pull = GPIO_NOPULL;
  • ctrl/firmware/Main/CubeMX/Core/Src/tim.c

    r106 r107  
    7878  }
    7979  sConfigOC.OCMode = TIM_OCMODE_PWM1;
    80   sConfigOC.Pulse = 50U;
     80  sConfigOC.Pulse = 50;
    8181  sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;
    8282  sConfigOC.OCNPolarity = TIM_OCNPOLARITY_HIGH;
     
    8888    Error_Handler();
    8989  }
     90  sConfigOC.Pulse = 0;
     91  sConfigOC.OCIdleState = TIM_OCIDLESTATE_RESET;
     92  if (HAL_TIM_PWM_ConfigChannel(&htim1, &sConfigOC, TIM_CHANNEL_3) != HAL_OK)
     93  {
     94    Error_Handler();
     95  }
    9096  sBreakDeadTimeConfig.OffStateRunMode = TIM_OSSR_ENABLE;
    9197  sBreakDeadTimeConfig.OffStateIDLEMode = TIM_OSSI_ENABLE;
    9298  sBreakDeadTimeConfig.LockLevel = TIM_LOCKLEVEL_1;
    9399  sBreakDeadTimeConfig.DeadTime = 20;
    94   sBreakDeadTimeConfig.BreakState = TIM_BREAK_ENABLE;
     100  sBreakDeadTimeConfig.BreakState = TIM_BREAK_DISABLE;
    95101  sBreakDeadTimeConfig.BreakPolarity = TIM_BREAKPOLARITY_HIGH;
    96102  sBreakDeadTimeConfig.BreakFilter = 0;
     
    354360    PE8     ------> TIM1_CH1N
    355361    PE9     ------> TIM1_CH1
     362    PE13     ------> TIM1_CH3
    356363    */
    357     GPIO_InitStruct.Pin = CHARGE_PWM_L_Pin|CHARGE_PWM_H_Pin;
     364    GPIO_InitStruct.Pin = CHARGE_PWM_L_Pin|CHARGE_PWM_H_Pin|DISPLAY_BACKLIGHT_PWM_Pin;
    358365    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
    359366    GPIO_InitStruct.Pull = GPIO_NOPULL;
Note: See TracChangeset for help on using the changeset viewer.