Changeset 81


Ignore:
Timestamp:
Feb 5, 2025, 9:37:56 AM (3 months ago)
Author:
Zed
Message:

Modbus Master and Slave interfaces were added.

Location:
ctrl/firmware/Main/CubeMX
Files:
8 edited

Legend:

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

    r77 r81  
    5858
    5959/* Private defines -----------------------------------------------------------*/
     60#define USART_MODBUS_MASTER_RX_Pin GPIO_PIN_2
     61#define USART_MODBUS_MASTER_RX_GPIO_Port GPIOE
     62#define USART_MODBUS_MASTER_TX_Pin GPIO_PIN_3
     63#define USART_MODBUS_MASTER_TX_GPIO_Port GPIOE
    6064#define TX1_LED_Pin GPIO_PIN_6
    6165#define TX1_LED_GPIO_Port GPIOE
     
    96100#define ETH_SPI_PWR_Pin GPIO_PIN_3
    97101#define ETH_SPI_PWR_GPIO_Port GPIOD
     102#define USART_MODBUS_SLAVE_DE_Pin GPIO_PIN_4
     103#define USART_MODBUS_SLAVE_DE_GPIO_Port GPIOD
     104#define USART_MODBUS_SLAVE_TX_Pin GPIO_PIN_5
     105#define USART_MODBUS_SLAVE_TX_GPIO_Port GPIOD
     106#define USART_MODBUS_SLAVE_RX_Pin GPIO_PIN_6
     107#define USART_MODBUS_SLAVE_RX_GPIO_Port GPIOD
    98108#define OUTPUT_ON_LED_Pin GPIO_PIN_7
    99109#define OUTPUT_ON_LED_GPIO_Port GPIOD
     
    108118#define TX2_LED_Pin GPIO_PIN_13
    109119#define TX2_LED_GPIO_Port GPIOG
     120#define USART_MODBUS_MASTER_DE_Pin GPIO_PIN_14
     121#define USART_MODBUS_MASTER_DE_GPIO_Port GPIOG
    110122#define BUZZER_Pin GPIO_PIN_15
    111123#define BUZZER_GPIO_Port GPIOG
  • ctrl/firmware/Main/CubeMX/Core/Inc/stm32h7xx_it.h

    r79 r81  
    6161void TIM3_IRQHandler(void);
    6262void SPI2_IRQHandler(void);
     63void USART2_IRQHandler(void);
    6364void USART3_IRQHandler(void);
    6465void TIM8_CC_IRQHandler(void);
     
    6667void TIM7_IRQHandler(void);
    6768void SPI4_IRQHandler(void);
     69void USART10_IRQHandler(void);
    6870/* USER CODE BEGIN EFP */
    6971
  • ctrl/firmware/Main/CubeMX/Core/Inc/usart.h

    r61 r81  
    3333/* USER CODE END Includes */
    3434
     35extern UART_HandleTypeDef huart2;
     36
    3537extern UART_HandleTypeDef huart3;
     38
     39extern UART_HandleTypeDef huart10;
    3640
    3741/* USER CODE BEGIN Private defines */
     
    3943/* USER CODE END Private defines */
    4044
     45void MX_USART2_UART_Init(void);
    4146void MX_USART3_UART_Init(void);
     47void MX_USART10_UART_Init(void);
    4248
    4349/* USER CODE BEGIN Prototypes */
  • ctrl/firmware/Main/CubeMX/Core/Src/gpio.c

    r77 r81  
    7979  HAL_GPIO_WritePin(ETH_SPI_RST_GPIO_Port, ETH_SPI_RST_Pin, GPIO_PIN_RESET);
    8080
    81   /*Configure GPIO pins : PE2 PE3 PE4 PE5
    82                            PE8 PE9 PE10 PE0
    83                            PE1 */
    84   GPIO_InitStruct.Pin = GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5
    85                           |GPIO_PIN_8|GPIO_PIN_9|GPIO_PIN_10|GPIO_PIN_0
    86                           |GPIO_PIN_1;
     81  /*Configure GPIO pins : PE4 PE5 PE8 PE9
     82                           PE10 PE0 PE1 */
     83  GPIO_InitStruct.Pin = GPIO_PIN_4|GPIO_PIN_5|GPIO_PIN_8|GPIO_PIN_9
     84                          |GPIO_PIN_10|GPIO_PIN_0|GPIO_PIN_1;
    8785  GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
    8886  GPIO_InitStruct.Pull = GPIO_NOPULL;
     
    167165  HAL_GPIO_Init(GSM_STATUS_GPIO_Port, &GPIO_InitStruct);
    168166
    169   /*Configure GPIO pins : PD14 PD15 PD0 PD1
    170                            PD4 PD5 PD6 */
    171   GPIO_InitStruct.Pin = GPIO_PIN_14|GPIO_PIN_15|GPIO_PIN_0|GPIO_PIN_1
    172                           |GPIO_PIN_4|GPIO_PIN_5|GPIO_PIN_6;
     167  /*Configure GPIO pins : PD14 PD15 PD0 PD1 */
     168  GPIO_InitStruct.Pin = GPIO_PIN_14|GPIO_PIN_15|GPIO_PIN_0|GPIO_PIN_1;
    173169  GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
    174170  GPIO_InitStruct.Pull = GPIO_NOPULL;
     
    176172
    177173  /*Configure GPIO pins : PG2 PG3 PG4 PG5
    178                            PG6 PG7 PG8 PG14 */
     174                           PG6 PG7 PG8 */
    179175  GPIO_InitStruct.Pin = GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5
    180                           |GPIO_PIN_6|GPIO_PIN_7|GPIO_PIN_8|GPIO_PIN_14;
     176                          |GPIO_PIN_6|GPIO_PIN_7|GPIO_PIN_8;
    181177  GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
    182178  GPIO_InitStruct.Pull = GPIO_NOPULL;
  • ctrl/firmware/Main/CubeMX/Core/Src/main.c

    r78 r81  
    6262/* Private function prototypes -----------------------------------------------*/
    6363void SystemClock_Config(void);
     64void PeriphCommonClock_Config(void);
    6465static void MPU_Config(void);
    6566void MX_FREERTOS_Init(void);
     
    110111  /* Configure the system clock */
    111112  SystemClock_Config();
     113
     114  /* Configure the peripherals common clocks */
     115  PeriphCommonClock_Config();
    112116
    113117  /* USER CODE BEGIN SysInit */
     
    128132  MX_TIM8_Init();
    129133  MX_SPI2_Init();
     134  MX_USART2_UART_Init();
     135  MX_USART10_UART_Init();
    130136  /* USER CODE BEGIN 2 */
    131137
     
    218224}
    219225
     226/**
     227  * @brief Peripherals Common Clock Configuration
     228  * @retval None
     229  */
     230void PeriphCommonClock_Config(void)
     231{
     232  RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0};
     233
     234  /** Initializes the peripherals clock
     235  */
     236  PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_USART10|RCC_PERIPHCLK_USART2
     237                              |RCC_PERIPHCLK_USART3;
     238  PeriphClkInitStruct.PLL3.PLL3M = 25;
     239  PeriphClkInitStruct.PLL3.PLL3N = 200;
     240  PeriphClkInitStruct.PLL3.PLL3P = 2;
     241  PeriphClkInitStruct.PLL3.PLL3Q = 8;
     242  PeriphClkInitStruct.PLL3.PLL3R = 2;
     243  PeriphClkInitStruct.PLL3.PLL3RGE = RCC_PLL3VCIRANGE_0;
     244  PeriphClkInitStruct.PLL3.PLL3VCOSEL = RCC_PLL3VCOMEDIUM;
     245  PeriphClkInitStruct.PLL3.PLL3FRACN = 0;
     246  PeriphClkInitStruct.Usart234578ClockSelection = RCC_USART234578CLKSOURCE_PLL3;
     247  PeriphClkInitStruct.Usart16ClockSelection = RCC_USART16910CLKSOURCE_PLL3;
     248  if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK)
     249  {
     250    Error_Handler();
     251  }
     252}
     253
    220254/* USER CODE BEGIN 4 */
    221255
  • ctrl/firmware/Main/CubeMX/Core/Src/stm32h7xx_it.c

    r79 r81  
    7070extern DMA_HandleTypeDef hdma_usart3_rx;
    7171extern DMA_HandleTypeDef hdma_usart3_tx;
     72extern UART_HandleTypeDef huart2;
    7273extern UART_HandleTypeDef huart3;
     74extern UART_HandleTypeDef huart10;
    7375extern TIM_HandleTypeDef htim7;
    7476
     
    288290
    289291/**
     292  * @brief This function handles USART2 global interrupt.
     293  */
     294void USART2_IRQHandler(void)
     295{
     296  /* USER CODE BEGIN USART2_IRQn 0 */
     297
     298  /* USER CODE END USART2_IRQn 0 */
     299  HAL_UART_IRQHandler(&huart2);
     300  /* USER CODE BEGIN USART2_IRQn 1 */
     301
     302  /* USER CODE END USART2_IRQn 1 */
     303}
     304
     305/**
    290306  * @brief This function handles USART3 global interrupt.
    291307  */
     
    355371
    356372  /* USER CODE END SPI4_IRQn 1 */
     373}
     374
     375/**
     376  * @brief This function handles USART10 global interrupt.
     377  */
     378void USART10_IRQHandler(void)
     379{
     380  /* USER CODE BEGIN USART10_IRQn 0 */
     381
     382  /* USER CODE END USART10_IRQn 0 */
     383  HAL_UART_IRQHandler(&huart10);
     384  /* USER CODE BEGIN USART10_IRQn 1 */
     385
     386  /* USER CODE END USART10_IRQn 1 */
    357387}
    358388
  • ctrl/firmware/Main/CubeMX/Core/Src/usart.c

    r72 r81  
    2525/* USER CODE END 0 */
    2626
     27UART_HandleTypeDef huart2;
    2728UART_HandleTypeDef huart3;
     29UART_HandleTypeDef huart10;
    2830DMA_HandleTypeDef hdma_usart3_rx;
    2931DMA_HandleTypeDef hdma_usart3_tx;
    3032
     33/* USART2 init function */
     34
     35void MX_USART2_UART_Init(void)
     36{
     37
     38  /* USER CODE BEGIN USART2_Init 0 */
     39
     40  /* USER CODE END USART2_Init 0 */
     41
     42  /* USER CODE BEGIN USART2_Init 1 */
     43
     44  /* USER CODE END USART2_Init 1 */
     45  huart2.Instance = USART2;
     46  huart2.Init.BaudRate = 115200;
     47  huart2.Init.WordLength = UART_WORDLENGTH_8B;
     48  huart2.Init.StopBits = UART_STOPBITS_1;
     49  huart2.Init.Parity = UART_PARITY_NONE;
     50  huart2.Init.Mode = UART_MODE_TX_RX;
     51  huart2.Init.HwFlowCtl = UART_HWCONTROL_NONE;
     52  huart2.Init.OverSampling = UART_OVERSAMPLING_16;
     53  huart2.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE;
     54  huart2.Init.ClockPrescaler = UART_PRESCALER_DIV1;
     55  huart2.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT;
     56  if (HAL_RS485Ex_Init(&huart2, UART_DE_POLARITY_HIGH, 0, 0) != HAL_OK)
     57  {
     58    Error_Handler();
     59  }
     60  if (HAL_UARTEx_SetTxFifoThreshold(&huart2, UART_TXFIFO_THRESHOLD_1_8) != HAL_OK)
     61  {
     62    Error_Handler();
     63  }
     64  if (HAL_UARTEx_SetRxFifoThreshold(&huart2, UART_RXFIFO_THRESHOLD_1_8) != HAL_OK)
     65  {
     66    Error_Handler();
     67  }
     68  if (HAL_UARTEx_DisableFifoMode(&huart2) != HAL_OK)
     69  {
     70    Error_Handler();
     71  }
     72  /* USER CODE BEGIN USART2_Init 2 */
     73
     74  /* USER CODE END USART2_Init 2 */
     75
     76}
    3177/* USART3 init function */
    3278
     
    75121
    76122}
     123/* USART10 init function */
     124
     125void MX_USART10_UART_Init(void)
     126{
     127
     128  /* USER CODE BEGIN USART10_Init 0 */
     129
     130  /* USER CODE END USART10_Init 0 */
     131
     132  /* USER CODE BEGIN USART10_Init 1 */
     133
     134  /* USER CODE END USART10_Init 1 */
     135  huart10.Instance = USART10;
     136  huart10.Init.BaudRate = 115200;
     137  huart10.Init.WordLength = UART_WORDLENGTH_8B;
     138  huart10.Init.StopBits = UART_STOPBITS_1;
     139  huart10.Init.Parity = UART_PARITY_NONE;
     140  huart10.Init.Mode = UART_MODE_TX_RX;
     141  huart10.Init.HwFlowCtl = UART_HWCONTROL_NONE;
     142  huart10.Init.OverSampling = UART_OVERSAMPLING_16;
     143  huart10.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE;
     144  huart10.Init.ClockPrescaler = UART_PRESCALER_DIV1;
     145  huart10.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT;
     146  if (HAL_RS485Ex_Init(&huart10, UART_DE_POLARITY_HIGH, 0, 0) != HAL_OK)
     147  {
     148    Error_Handler();
     149  }
     150  if (HAL_UARTEx_SetTxFifoThreshold(&huart10, UART_TXFIFO_THRESHOLD_1_8) != HAL_OK)
     151  {
     152    Error_Handler();
     153  }
     154  if (HAL_UARTEx_SetRxFifoThreshold(&huart10, UART_RXFIFO_THRESHOLD_1_8) != HAL_OK)
     155  {
     156    Error_Handler();
     157  }
     158  if (HAL_UARTEx_DisableFifoMode(&huart10) != HAL_OK)
     159  {
     160    Error_Handler();
     161  }
     162  /* USER CODE BEGIN USART10_Init 2 */
     163
     164  /* USER CODE END USART10_Init 2 */
     165
     166}
    77167
    78168void HAL_UART_MspInit(UART_HandleTypeDef* uartHandle)
     
    80170
    81171  GPIO_InitTypeDef GPIO_InitStruct = {0};
    82   RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0};
    83   if(uartHandle->Instance==USART3)
     172  if(uartHandle->Instance==USART2)
     173  {
     174  /* USER CODE BEGIN USART2_MspInit 0 */
     175
     176  /* USER CODE END USART2_MspInit 0 */
     177    /* USART2 clock enable */
     178    __HAL_RCC_USART2_CLK_ENABLE();
     179
     180    __HAL_RCC_GPIOD_CLK_ENABLE();
     181    /**USART2 GPIO Configuration
     182    PD4     ------> USART2_DE
     183    PD5     ------> USART2_TX
     184    PD6     ------> USART2_RX
     185    */
     186    GPIO_InitStruct.Pin = USART_MODBUS_SLAVE_DE_Pin|USART_MODBUS_SLAVE_TX_Pin|USART_MODBUS_SLAVE_RX_Pin;
     187    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
     188    GPIO_InitStruct.Pull = GPIO_NOPULL;
     189    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
     190    GPIO_InitStruct.Alternate = GPIO_AF7_USART2;
     191    HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);
     192
     193    /* USART2 interrupt Init */
     194    HAL_NVIC_SetPriority(USART2_IRQn, 5, 0);
     195    HAL_NVIC_EnableIRQ(USART2_IRQn);
     196  /* USER CODE BEGIN USART2_MspInit 1 */
     197
     198  /* USER CODE END USART2_MspInit 1 */
     199  }
     200  else if(uartHandle->Instance==USART3)
    84201  {
    85202  /* USER CODE BEGIN USART3_MspInit 0 */
    86203
    87204  /* USER CODE END USART3_MspInit 0 */
    88 
    89   /** Initializes the peripherals clock
    90   */
    91     PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_USART3;
    92     PeriphClkInitStruct.PLL3.PLL3M = 25;
    93     PeriphClkInitStruct.PLL3.PLL3N = 200;
    94     PeriphClkInitStruct.PLL3.PLL3P = 2;
    95     PeriphClkInitStruct.PLL3.PLL3Q = 8;
    96     PeriphClkInitStruct.PLL3.PLL3R = 2;
    97     PeriphClkInitStruct.PLL3.PLL3RGE = RCC_PLL3VCIRANGE_0;
    98     PeriphClkInitStruct.PLL3.PLL3VCOSEL = RCC_PLL3VCOMEDIUM;
    99     PeriphClkInitStruct.PLL3.PLL3FRACN = 0;
    100     PeriphClkInitStruct.Usart234578ClockSelection = RCC_USART234578CLKSOURCE_PLL3;
    101     if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK)
    102     {
    103       Error_Handler();
    104     }
    105 
    106205    /* USART3 clock enable */
    107206    __HAL_RCC_USART3_CLK_ENABLE();
     
    165264  /* USER CODE END USART3_MspInit 1 */
    166265  }
     266  else if(uartHandle->Instance==USART10)
     267  {
     268  /* USER CODE BEGIN USART10_MspInit 0 */
     269
     270  /* USER CODE END USART10_MspInit 0 */
     271    /* USART10 clock enable */
     272    __HAL_RCC_USART10_CLK_ENABLE();
     273
     274    __HAL_RCC_GPIOE_CLK_ENABLE();
     275    __HAL_RCC_GPIOG_CLK_ENABLE();
     276    /**USART10 GPIO Configuration
     277    PE2     ------> USART10_RX
     278    PE3     ------> USART10_TX
     279    PG14     ------> USART10_DE
     280    */
     281    GPIO_InitStruct.Pin = USART_MODBUS_MASTER_RX_Pin;
     282    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
     283    GPIO_InitStruct.Pull = GPIO_NOPULL;
     284    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
     285    GPIO_InitStruct.Alternate = GPIO_AF4_USART10;
     286    HAL_GPIO_Init(USART_MODBUS_MASTER_RX_GPIO_Port, &GPIO_InitStruct);
     287
     288    GPIO_InitStruct.Pin = USART_MODBUS_MASTER_TX_Pin;
     289    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
     290    GPIO_InitStruct.Pull = GPIO_NOPULL;
     291    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
     292    GPIO_InitStruct.Alternate = GPIO_AF11_USART10;
     293    HAL_GPIO_Init(USART_MODBUS_MASTER_TX_GPIO_Port, &GPIO_InitStruct);
     294
     295    GPIO_InitStruct.Pin = USART_MODBUS_MASTER_DE_Pin;
     296    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
     297    GPIO_InitStruct.Pull = GPIO_NOPULL;
     298    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
     299    GPIO_InitStruct.Alternate = GPIO_AF4_USART10;
     300    HAL_GPIO_Init(USART_MODBUS_MASTER_DE_GPIO_Port, &GPIO_InitStruct);
     301
     302    /* USART10 interrupt Init */
     303    HAL_NVIC_SetPriority(USART10_IRQn, 5, 0);
     304    HAL_NVIC_EnableIRQ(USART10_IRQn);
     305  /* USER CODE BEGIN USART10_MspInit 1 */
     306
     307  /* USER CODE END USART10_MspInit 1 */
     308  }
    167309}
    168310
     
    170312{
    171313
    172   if(uartHandle->Instance==USART3)
     314  if(uartHandle->Instance==USART2)
     315  {
     316  /* USER CODE BEGIN USART2_MspDeInit 0 */
     317
     318  /* USER CODE END USART2_MspDeInit 0 */
     319    /* Peripheral clock disable */
     320    __HAL_RCC_USART2_CLK_DISABLE();
     321
     322    /**USART2 GPIO Configuration
     323    PD4     ------> USART2_DE
     324    PD5     ------> USART2_TX
     325    PD6     ------> USART2_RX
     326    */
     327    HAL_GPIO_DeInit(GPIOD, USART_MODBUS_SLAVE_DE_Pin|USART_MODBUS_SLAVE_TX_Pin|USART_MODBUS_SLAVE_RX_Pin);
     328
     329    /* USART2 interrupt Deinit */
     330    HAL_NVIC_DisableIRQ(USART2_IRQn);
     331  /* USER CODE BEGIN USART2_MspDeInit 1 */
     332
     333  /* USER CODE END USART2_MspDeInit 1 */
     334  }
     335  else if(uartHandle->Instance==USART3)
    173336  {
    174337  /* USER CODE BEGIN USART3_MspDeInit 0 */
     
    196359  /* USER CODE END USART3_MspDeInit 1 */
    197360  }
     361  else if(uartHandle->Instance==USART10)
     362  {
     363  /* USER CODE BEGIN USART10_MspDeInit 0 */
     364
     365  /* USER CODE END USART10_MspDeInit 0 */
     366    /* Peripheral clock disable */
     367    __HAL_RCC_USART10_CLK_DISABLE();
     368
     369    /**USART10 GPIO Configuration
     370    PE2     ------> USART10_RX
     371    PE3     ------> USART10_TX
     372    PG14     ------> USART10_DE
     373    */
     374    HAL_GPIO_DeInit(GPIOE, USART_MODBUS_MASTER_RX_Pin|USART_MODBUS_MASTER_TX_Pin);
     375
     376    HAL_GPIO_DeInit(USART_MODBUS_MASTER_DE_GPIO_Port, USART_MODBUS_MASTER_DE_Pin);
     377
     378    /* USART10 interrupt Deinit */
     379    HAL_NVIC_DisableIRQ(USART10_IRQn);
     380  /* USER CODE BEGIN USART10_MspDeInit 1 */
     381
     382  /* USER CODE END USART10_MspDeInit 1 */
     383  }
    198384}
    199385
  • ctrl/firmware/Main/CubeMX/charger.ioc

    r79 r81  
    209209Mcu.IP13=TIM3
    210210Mcu.IP14=TIM8
    211 Mcu.IP15=USART3
     211Mcu.IP15=USART2
     212Mcu.IP16=USART3
     213Mcu.IP17=USART10
    212214Mcu.IP2=DMA
    213215Mcu.IP3=FATFS
     
    218220Mcu.IP8=RTC
    219221Mcu.IP9=SDMMC1
    220 Mcu.IPNb=16
     222Mcu.IPNb=18
    221223Mcu.Name=STM32H723ZETx
    222224Mcu.Package=LQFP144
    223 Mcu.Pin0=PE6
    224 Mcu.Pin1=PC14-OSC32_IN
    225 Mcu.Pin10=PE12
    226 Mcu.Pin11=PE13
    227 Mcu.Pin12=PE14
    228 Mcu.Pin13=PE15
    229 Mcu.Pin14=PB10
    230 Mcu.Pin15=PB14
    231 Mcu.Pin16=PB15
    232 Mcu.Pin17=PD8
    233 Mcu.Pin18=PD9
    234 Mcu.Pin19=PD10
    235 Mcu.Pin2=PC15-OSC32_OUT
    236 Mcu.Pin20=PD11
    237 Mcu.Pin21=PD12
    238 Mcu.Pin22=PD13
    239 Mcu.Pin23=PC6
    240 Mcu.Pin24=PC7
    241 Mcu.Pin25=PC8
    242 Mcu.Pin26=PC9
    243 Mcu.Pin27=PA8
    244 Mcu.Pin28=PA13(JTMS/SWDIO)
    245 Mcu.Pin29=PA14(JTCK/SWCLK)
    246 Mcu.Pin3=PH0-OSC_IN
    247 Mcu.Pin30=PC10
    248 Mcu.Pin31=PC11
    249 Mcu.Pin32=PC12
    250 Mcu.Pin33=PD2
    251 Mcu.Pin34=PD3
    252 Mcu.Pin35=PD7
    253 Mcu.Pin36=PG9
    254 Mcu.Pin37=PG10
    255 Mcu.Pin38=PG11
    256 Mcu.Pin39=PG12
    257 Mcu.Pin4=PH1-OSC_OUT
    258 Mcu.Pin40=PG13
    259 Mcu.Pin41=PG15
    260 Mcu.Pin42=PB4(NJTRST)
    261 Mcu.Pin43=PB8
    262 Mcu.Pin44=PB9
    263 Mcu.Pin45=VP_FATFS_VS_SDIO
    264 Mcu.Pin46=VP_FREERTOS_VS_CMSIS_V2
    265 Mcu.Pin47=VP_RTC_VS_RTC_Activate
    266 Mcu.Pin48=VP_RTC_VS_RTC_Calendar
    267 Mcu.Pin49=VP_SYS_VS_tim7
    268 Mcu.Pin5=PF15
    269 Mcu.Pin50=VP_TIM3_VS_ClockSourceINT
    270 Mcu.Pin51=VP_TIM8_VS_ControllerModeReset
    271 Mcu.Pin52=VP_TIM8_VS_ClockSourceINT
    272 Mcu.Pin53=VP_MEMORYMAP_VS_MEMORYMAP
    273 Mcu.Pin6=PG0
    274 Mcu.Pin7=PG1
    275 Mcu.Pin8=PE7
    276 Mcu.Pin9=PE11
    277 Mcu.PinsNb=54
     225Mcu.Pin0=PE2
     226Mcu.Pin1=PE3
     227Mcu.Pin10=PE7
     228Mcu.Pin11=PE11
     229Mcu.Pin12=PE12
     230Mcu.Pin13=PE13
     231Mcu.Pin14=PE14
     232Mcu.Pin15=PE15
     233Mcu.Pin16=PB10
     234Mcu.Pin17=PB14
     235Mcu.Pin18=PB15
     236Mcu.Pin19=PD8
     237Mcu.Pin2=PE6
     238Mcu.Pin20=PD9
     239Mcu.Pin21=PD10
     240Mcu.Pin22=PD11
     241Mcu.Pin23=PD12
     242Mcu.Pin24=PD13
     243Mcu.Pin25=PC6
     244Mcu.Pin26=PC7
     245Mcu.Pin27=PC8
     246Mcu.Pin28=PC9
     247Mcu.Pin29=PA8
     248Mcu.Pin3=PC14-OSC32_IN
     249Mcu.Pin30=PA13(JTMS/SWDIO)
     250Mcu.Pin31=PA14(JTCK/SWCLK)
     251Mcu.Pin32=PC10
     252Mcu.Pin33=PC11
     253Mcu.Pin34=PC12
     254Mcu.Pin35=PD2
     255Mcu.Pin36=PD3
     256Mcu.Pin37=PD4
     257Mcu.Pin38=PD5
     258Mcu.Pin39=PD6
     259Mcu.Pin4=PC15-OSC32_OUT
     260Mcu.Pin40=PD7
     261Mcu.Pin41=PG9
     262Mcu.Pin42=PG10
     263Mcu.Pin43=PG11
     264Mcu.Pin44=PG12
     265Mcu.Pin45=PG13
     266Mcu.Pin46=PG14
     267Mcu.Pin47=PG15
     268Mcu.Pin48=PB4(NJTRST)
     269Mcu.Pin49=PB8
     270Mcu.Pin5=PH0-OSC_IN
     271Mcu.Pin50=PB9
     272Mcu.Pin51=VP_FATFS_VS_SDIO
     273Mcu.Pin52=VP_FREERTOS_VS_CMSIS_V2
     274Mcu.Pin53=VP_RTC_VS_RTC_Activate
     275Mcu.Pin54=VP_RTC_VS_RTC_Calendar
     276Mcu.Pin55=VP_SYS_VS_tim7
     277Mcu.Pin56=VP_TIM3_VS_ClockSourceINT
     278Mcu.Pin57=VP_TIM8_VS_ControllerModeReset
     279Mcu.Pin58=VP_TIM8_VS_ClockSourceINT
     280Mcu.Pin59=VP_MEMORYMAP_VS_MEMORYMAP
     281Mcu.Pin6=PH1-OSC_OUT
     282Mcu.Pin7=PF15
     283Mcu.Pin8=PG0
     284Mcu.Pin9=PG1
     285Mcu.PinsNb=60
    278286Mcu.ThirdParty0=STMicroelectronics.X-CUBE-AZRTOS-H7.3.3.0
    279287Mcu.ThirdPartyNb=1
     
    309317NVIC.TimeBase=TIM7_IRQn
    310318NVIC.TimeBaseIP=TIM7
     319NVIC.USART10_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true\:true
     320NVIC.USART2_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true\:true
    311321NVIC.USART3_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true\:true
    312322NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false\:false
     
    394404PD3.PinState=GPIO_PIN_SET
    395405PD3.Signal=GPIO_Output
     406PD4.GPIOParameters=GPIO_Label
     407PD4.GPIO_Label=USART_MODBUS_SLAVE_DE
     408PD4.Locked=true
     409PD4.Mode=Hardware Flow Control (RS485)
     410PD4.Signal=USART2_DE
     411PD5.GPIOParameters=GPIO_Label
     412PD5.GPIO_Label=USART_MODBUS_SLAVE_TX
     413PD5.Locked=true
     414PD5.Mode=Asynchronous
     415PD5.Signal=USART2_TX
     416PD6.GPIOParameters=GPIO_Label
     417PD6.GPIO_Label=USART_MODBUS_SLAVE_RX
     418PD6.Locked=true
     419PD6.Mode=Asynchronous
     420PD6.Signal=USART2_RX
    396421PD7.GPIOParameters=GPIO_Label
    397422PD7.GPIO_Label=OUTPUT_ON_LED
     
    428453PE15.PinState=GPIO_PIN_RESET
    429454PE15.Signal=GPIO_Output
     455PE2.GPIOParameters=GPIO_Label
     456PE2.GPIO_Label=USART_MODBUS_MASTER_RX
     457PE2.Mode=Asynchronous
     458PE2.Signal=USART10_RX
     459PE3.GPIOParameters=GPIO_Label
     460PE3.GPIO_Label=USART_MODBUS_MASTER_TX
     461PE3.Mode=Asynchronous
     462PE3.Signal=USART10_TX
    430463PE6.GPIOParameters=GPIO_Label
    431464PE6.GPIO_Label=TX1_LED
     
    464497PG13.Locked=true
    465498PG13.Signal=GPIO_Output
     499PG14.GPIOParameters=GPIO_Label
     500PG14.GPIO_Label=USART_MODBUS_MASTER_DE
     501PG14.Mode=Hardware Flow Control (RS485)
     502PG14.Signal=USART10_DE
    466503PG15.GPIOParameters=GPIO_Label
    467504PG15.GPIO_Label=BUZZER
     
    507544ProjectManager.UAScriptBeforePath=
    508545ProjectManager.UnderRoot=true
    509 ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-MX_DMA_Init-DMA-false-HAL-true,3-MX_RTC_Init-RTC-false-HAL-true,4-MX_SPI4_Init-SPI4-false-HAL-true,5-MX_SDMMC1_SD_Init-SDMMC1-false-HAL-true,6-MX_USART3_UART_Init-USART3-false-HAL-true,7-MX_TIM3_Init-TIM3-false-HAL-true,8-SystemClock_Config-RCC-false-HAL-false,9-MX_FATFS_Init-FATFS-false-HAL-false,10-MX_TIM8_Init-TIM8-false-HAL-true,11-MX_SPI2_Init-SPI2-false-HAL-true,0-MX_CORTEX_M7_Init-CORTEX_M7-false-HAL-true
     546ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-MX_DMA_Init-DMA-false-HAL-true,3-MX_RTC_Init-RTC-false-HAL-true,4-MX_SPI4_Init-SPI4-false-HAL-true,5-MX_SDMMC1_SD_Init-SDMMC1-false-HAL-true,6-MX_USART3_UART_Init-USART3-false-HAL-true,7-MX_TIM3_Init-TIM3-false-HAL-true,8-SystemClock_Config-RCC-false-HAL-false,9-MX_FATFS_Init-FATFS-false-HAL-false,10-MX_TIM8_Init-TIM8-false-HAL-true,11-MX_SPI2_Init-SPI2-false-HAL-true,12-MX_USART2_UART_Init-USART2-false-HAL-true,13-MX_USART10_UART_Init-USART10-false-HAL-true,0-MX_CORTEX_M7_Init-CORTEX_M7-false-HAL-true
    510547RCC.ADCFreq_Value=125000000
    511548RCC.AHB12Freq_Value=100000000
     
    548585RCC.I2C123Freq_Value=100000000
    549586RCC.I2C4Freq_Value=100000000
    550 RCC.IPParameters=ADCFreq_Value,AHB12Freq_Value,AHB4Freq_Value,APB1Freq_Value,APB2Freq_Value,APB3Freq_Value,APB4Freq_Value,AXIClockFreq_Value,CECFreq_Value,CKPERFreq_Value,CortexFreq_Value,CpuClockFreq_Value,D1CPREFreq_Value,DFSDMACLkFreq_Value,DFSDMFreq_Value,DIVM1,DIVM2,DIVM3,DIVN1,DIVN2,DIVN3,DIVP1Freq_Value,DIVP2Freq_Value,DIVP3Freq_Value,DIVQ1Freq_Value,DIVQ2,DIVQ2Freq_Value,DIVQ3,DIVQ3Freq_Value,DIVR1Freq_Value,DIVR2,DIVR2Freq_Value,DIVR3Freq_Value,FDCANFreq_Value,FMCFreq_Value,FamilyName,HCLK3ClockFreq_Value,HCLKFreq_Value,I2C123Freq_Value,I2C4Freq_Value,LPTIM1Freq_Value,LPTIM2Freq_Value,LPTIM345Freq_Value,LPUART1Freq_Value,LTDCFreq_Value,MCO1PinFreq_Value,MCO2PinFreq_Value,PLL2FRACN,PLLFRACN,PLLSourceVirtual,QSPIFreq_Value,RNGFreq_Value,RTCClockSelection,RTCFreq_Value,SAI1Freq_Value,SAI4AFreq_Value,SAI4BFreq_Value,SDMMCFreq_Value,SPDIFRXFreq_Value,SPI123CLockSelection,SPI123Freq_Value,SPI45Freq_Value,SPI6Freq_Value,SWPMI1Freq_Value,SYSCLKFreq_VALUE,SYSCLKSource,Spi45ClockSelection,Tim1OutputFreq_Value,Tim2OutputFreq_Value,TraceFreq_Value,USART16Freq_Value,USART234578CLockSelection,USART234578Freq_Value,USBFreq_Value,VCO1OutputFreq_Value,VCO2OutputFreq_Value,VCO3OutputFreq_Value,VCOInput1Freq_Value,VCOInput2Freq_Value,VCOInput3Freq_Value
     587RCC.IPParameters=ADCFreq_Value,AHB12Freq_Value,AHB4Freq_Value,APB1Freq_Value,APB2Freq_Value,APB3Freq_Value,APB4Freq_Value,AXIClockFreq_Value,CECFreq_Value,CKPERFreq_Value,CortexFreq_Value,CpuClockFreq_Value,D1CPREFreq_Value,DFSDMACLkFreq_Value,DFSDMFreq_Value,DIVM1,DIVM2,DIVM3,DIVN1,DIVN2,DIVN3,DIVP1Freq_Value,DIVP2Freq_Value,DIVP3Freq_Value,DIVQ1Freq_Value,DIVQ2,DIVQ2Freq_Value,DIVQ3,DIVQ3Freq_Value,DIVR1Freq_Value,DIVR2,DIVR2Freq_Value,DIVR3Freq_Value,FDCANFreq_Value,FMCFreq_Value,FamilyName,HCLK3ClockFreq_Value,HCLKFreq_Value,I2C123Freq_Value,I2C4Freq_Value,LPTIM1Freq_Value,LPTIM2Freq_Value,LPTIM345Freq_Value,LPUART1Freq_Value,LTDCFreq_Value,MCO1PinFreq_Value,MCO2PinFreq_Value,PLL2FRACN,PLLFRACN,PLLSourceVirtual,QSPIFreq_Value,RNGFreq_Value,RTCClockSelection,RTCFreq_Value,SAI1Freq_Value,SAI4AFreq_Value,SAI4BFreq_Value,SDMMCFreq_Value,SPDIFRXFreq_Value,SPI123CLockSelection,SPI123Freq_Value,SPI45Freq_Value,SPI6Freq_Value,SWPMI1Freq_Value,SYSCLKFreq_VALUE,SYSCLKSource,Spi45ClockSelection,Tim1OutputFreq_Value,Tim2OutputFreq_Value,TraceFreq_Value,USART16CLockSelection,USART16Freq_Value,USART234578CLockSelection,USART234578Freq_Value,USBFreq_Value,VCO1OutputFreq_Value,VCO2OutputFreq_Value,VCO3OutputFreq_Value,VCOInput1Freq_Value,VCOInput2Freq_Value,VCOInput3Freq_Value
    551588RCC.LPTIM1Freq_Value=100000000
    552589RCC.LPTIM2Freq_Value=100000000
     
    579616RCC.Tim2OutputFreq_Value=100000000
    580617RCC.TraceFreq_Value=100000000
    581 RCC.USART16Freq_Value=100000000
     618RCC.USART16CLockSelection=RCC_USART16910CLKSOURCE_PLL3
     619RCC.USART16Freq_Value=25000000
    582620RCC.USART234578CLockSelection=RCC_USART234578CLKSOURCE_PLL3
    583621RCC.USART234578Freq_Value=25000000
     
    600638SH.S_TIM8_CH1.1=TIM8_CH1,TriggerSource_TI1FP1
    601639SH.S_TIM8_CH1.ConfNb=2
    602 SPI2.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_2
    603 SPI2.CalculateBaudRate=62.5 MBits/s
     640SPI2.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_256
     641SPI2.CalculateBaudRate=488.281 KBits/s
    604642SPI2.DataSize=SPI_DATASIZE_8BIT
    605643SPI2.Direction=SPI_DIRECTION_2LINES
    606644SPI2.IPParameters=VirtualType,Mode,Direction,CalculateBaudRate,DataSize,MasterInterDataIdleness,MasterSSIdleness,MasterKeepIOState,BaudRatePrescaler
    607645SPI2.MasterInterDataIdleness=SPI_MASTER_INTERDATA_IDLENESS_01CYCLE
    608 SPI2.MasterKeepIOState=SPI_MASTER_KEEP_IO_STATE_DISABLE
     646SPI2.MasterKeepIOState=SPI_MASTER_KEEP_IO_STATE_ENABLE
    609647SPI2.MasterSSIdleness=SPI_MASTER_SS_IDLENESS_00CYCLE
    610648SPI2.Mode=SPI_MODE_MASTER
     
    653691TIM8.Period=65536 - 1
    654692TIM8.Prescaler=32 - 1
     693USART10.IPParameters=VirtualMode-Asynchronous,VirtualMode-Hardware Flow Control (RS485)
     694USART10.VirtualMode-Asynchronous=VM_ASYNC
     695USART10.VirtualMode-Hardware\ Flow\ Control\ (RS485)=VM_ASYNC
     696USART2.IPParameters=VirtualMode-Asynchronous,VirtualMode-Hardware Flow Control (RS485)
     697USART2.VirtualMode-Asynchronous=VM_ASYNC
     698USART2.VirtualMode-Hardware\ Flow\ Control\ (RS485)=VM_ASYNC
    655699USART3.DMADisableonRxErrorParam=ADVFEATURE_DMA_DISABLEONRXERROR
    656700USART3.IPParameters=VirtualMode-Asynchronous,SwapParam,DMADisableonRxErrorParam
Note: See TracChangeset for help on using the changeset viewer.