Changeset 89 for ctrl/firmware/Main/CubeMX/Core
- Timestamp:
- Feb 11, 2025, 4:29:20 PM (3 months ago)
- Location:
- ctrl/firmware/Main/CubeMX/Core
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
ctrl/firmware/Main/CubeMX/Core/Inc/i2c.h
r88 r89 35 35 extern I2C_HandleTypeDef hi2c1; 36 36 37 extern I2C_HandleTypeDef hi2c2; 38 37 39 /* USER CODE BEGIN Private defines */ 38 40 … … 40 42 41 43 void MX_I2C1_Init(void); 44 void MX_I2C2_Init(void); 42 45 43 46 /* USER CODE BEGIN Prototypes */ -
ctrl/firmware/Main/CubeMX/Core/Inc/main.h
r88 r89 64 64 #define TX1_LED_Pin GPIO_PIN_6 65 65 #define TX1_LED_GPIO_Port GPIOE 66 #define EEPROM_I2C_SDA_Pin GPIO_PIN_0 67 #define EEPROM_I2C_SDA_GPIO_Port GPIOF 68 #define EEPROM_I2C_SCL_Pin GPIO_PIN_1 69 #define EEPROM_I2C_SCL_GPIO_Port GPIOF 66 70 #define POWER_4V_EN_Pin GPIO_PIN_15 67 71 #define POWER_4V_EN_GPIO_Port GPIOF -
ctrl/firmware/Main/CubeMX/Core/Src/gpio.c
r88 r89 105 105 HAL_GPIO_Init(GPIOC, &GPIO_InitStruct); 106 106 107 /*Configure GPIO pins : PF 0 PF1 PF2 PF3108 PF 4 PF5 PF6 PF7109 PF 8 PF9 PF10 PF11110 PF1 2 PF13 PF14 */111 GPIO_InitStruct.Pin = GPIO_PIN_ 0|GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3112 |GPIO_PIN_ 4|GPIO_PIN_5|GPIO_PIN_6|GPIO_PIN_7113 |GPIO_PIN_ 8|GPIO_PIN_9|GPIO_PIN_10|GPIO_PIN_11114 |GPIO_PIN_1 2|GPIO_PIN_13|GPIO_PIN_14;107 /*Configure GPIO pins : PF2 PF3 PF4 PF5 108 PF6 PF7 PF8 PF9 109 PF10 PF11 PF12 PF13 110 PF14 */ 111 GPIO_InitStruct.Pin = GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5 112 |GPIO_PIN_6|GPIO_PIN_7|GPIO_PIN_8|GPIO_PIN_9 113 |GPIO_PIN_10|GPIO_PIN_11|GPIO_PIN_12|GPIO_PIN_13 114 |GPIO_PIN_14; 115 115 GPIO_InitStruct.Mode = GPIO_MODE_ANALOG; 116 116 GPIO_InitStruct.Pull = GPIO_NOPULL; -
ctrl/firmware/Main/CubeMX/Core/Src/i2c.c
r88 r89 26 26 27 27 I2C_HandleTypeDef hi2c1; 28 I2C_HandleTypeDef hi2c2; 28 29 29 30 /* I2C1 init function */ … … 70 71 71 72 } 73 /* I2C2 init function */ 74 void MX_I2C2_Init(void) 75 { 76 77 /* USER CODE BEGIN I2C2_Init 0 */ 78 79 /* USER CODE END I2C2_Init 0 */ 80 81 /* USER CODE BEGIN I2C2_Init 1 */ 82 83 /* USER CODE END I2C2_Init 1 */ 84 hi2c2.Instance = I2C2; 85 hi2c2.Init.Timing = 0x00300B29; 86 hi2c2.Init.OwnAddress1 = 0; 87 hi2c2.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT; 88 hi2c2.Init.DualAddressMode = I2C_DUALADDRESS_DISABLE; 89 hi2c2.Init.OwnAddress2 = 0; 90 hi2c2.Init.OwnAddress2Masks = I2C_OA2_NOMASK; 91 hi2c2.Init.GeneralCallMode = I2C_GENERALCALL_DISABLE; 92 hi2c2.Init.NoStretchMode = I2C_NOSTRETCH_DISABLE; 93 if (HAL_I2C_Init(&hi2c2) != HAL_OK) 94 { 95 Error_Handler(); 96 } 97 98 /** Configure Analogue filter 99 */ 100 if (HAL_I2CEx_ConfigAnalogFilter(&hi2c2, I2C_ANALOGFILTER_ENABLE) != HAL_OK) 101 { 102 Error_Handler(); 103 } 104 105 /** Configure Digital filter 106 */ 107 if (HAL_I2CEx_ConfigDigitalFilter(&hi2c2, 0) != HAL_OK) 108 { 109 Error_Handler(); 110 } 111 112 /** I2C Enable Fast Mode Plus 113 */ 114 HAL_I2CEx_EnableFastModePlus(I2C_FASTMODEPLUS_I2C2); 115 /* USER CODE BEGIN I2C2_Init 2 */ 116 117 /* USER CODE END I2C2_Init 2 */ 118 119 } 72 120 73 121 void HAL_I2C_MspInit(I2C_HandleTypeDef* i2cHandle) … … 109 157 /* USER CODE END I2C1_MspInit 1 */ 110 158 } 159 else if(i2cHandle->Instance==I2C2) 160 { 161 /* USER CODE BEGIN I2C2_MspInit 0 */ 162 163 /* USER CODE END I2C2_MspInit 0 */ 164 165 /** Initializes the peripherals clock 166 */ 167 PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_I2C2; 168 PeriphClkInitStruct.I2c123ClockSelection = RCC_I2C1235CLKSOURCE_HSI; 169 if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK) 170 { 171 Error_Handler(); 172 } 173 174 __HAL_RCC_GPIOF_CLK_ENABLE(); 175 /**I2C2 GPIO Configuration 176 PF0 ------> I2C2_SDA 177 PF1 ------> I2C2_SCL 178 */ 179 GPIO_InitStruct.Pin = EEPROM_I2C_SDA_Pin|EEPROM_I2C_SCL_Pin; 180 GPIO_InitStruct.Mode = GPIO_MODE_AF_OD; 181 GPIO_InitStruct.Pull = GPIO_NOPULL; 182 GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; 183 GPIO_InitStruct.Alternate = GPIO_AF4_I2C2; 184 HAL_GPIO_Init(GPIOF, &GPIO_InitStruct); 185 186 /* I2C2 clock enable */ 187 __HAL_RCC_I2C2_CLK_ENABLE(); 188 /* USER CODE BEGIN I2C2_MspInit 1 */ 189 190 /* USER CODE END I2C2_MspInit 1 */ 191 } 111 192 } 112 193 … … 134 215 /* USER CODE END I2C1_MspDeInit 1 */ 135 216 } 217 else if(i2cHandle->Instance==I2C2) 218 { 219 /* USER CODE BEGIN I2C2_MspDeInit 0 */ 220 221 /* USER CODE END I2C2_MspDeInit 0 */ 222 /* Peripheral clock disable */ 223 __HAL_RCC_I2C2_CLK_DISABLE(); 224 225 /**I2C2 GPIO Configuration 226 PF0 ------> I2C2_SDA 227 PF1 ------> I2C2_SCL 228 */ 229 HAL_GPIO_DeInit(EEPROM_I2C_SDA_GPIO_Port, EEPROM_I2C_SDA_Pin); 230 231 HAL_GPIO_DeInit(EEPROM_I2C_SCL_GPIO_Port, EEPROM_I2C_SCL_Pin); 232 233 /* USER CODE BEGIN I2C2_MspDeInit 1 */ 234 235 /* USER CODE END I2C2_MspDeInit 1 */ 236 } 136 237 } 137 238 -
ctrl/firmware/Main/CubeMX/Core/Src/main.c
r88 r89 142 142 MX_TIM6_Init(); 143 143 MX_I2C1_Init(); 144 MX_I2C2_Init(); 144 145 /* USER CODE BEGIN 2 */ 145 146
Note: See TracChangeset
for help on using the changeset viewer.