| /** | |
| ****************************************************************************** | |
| * File Name : I2C.c | |
| * Description : This file provides code for the configuration | |
| * of the I2C instances. | |
| ****************************************************************************** | |
| * @attention | |
| * | |
| * <h2><center>© Copyright (c) 2020 STMicroelectronics. | |
| * All rights reserved.</center></h2> | |
| * | |
| * This software component is licensed by ST under Ultimate Liberty license | |
| * SLA0044, the "License"; You may not use this file except in compliance with | |
| * the License. You may obtain a copy of the License at: | |
| * www.st.com/SLA0044 | |
| * | |
| ****************************************************************************** | |
| */ | |
| /* Includes ------------------------------------------------------------------*/ | |
| #include "i2c.h" | |
| /* USER CODE BEGIN 0 */ | |
| /* USER CODE END 0 */ | |
| I2C_HandleTypeDef hi2c4; | |
| /* I2C4 init function */ | |
| void MX_I2C4_Init(void) | |
| { | |
| hi2c4.Instance = I2C4; | |
| hi2c4.Init.Timing = 0x20401943; | |
| hi2c4.Init.OwnAddress1 = 0; | |
| hi2c4.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT; | |
| hi2c4.Init.DualAddressMode = I2C_DUALADDRESS_DISABLE; | |
| hi2c4.Init.OwnAddress2 = 0; | |
| hi2c4.Init.OwnAddress2Masks = I2C_OA2_NOMASK; | |
| hi2c4.Init.GeneralCallMode = I2C_GENERALCALL_DISABLE; | |
| hi2c4.Init.NoStretchMode = I2C_NOSTRETCH_DISABLE; | |
| if (HAL_I2C_Init(&hi2c4) != HAL_OK) | |
| { | |
| Error_Handler(); | |
| } | |
| /** Configure Analogue filter | |
| */ | |
| if (HAL_I2CEx_ConfigAnalogFilter(&hi2c4, I2C_ANALOGFILTER_ENABLE) != HAL_OK) | |
| { | |
| Error_Handler(); | |
| } | |
| /** Configure Digital filter | |
| */ | |
| if (HAL_I2CEx_ConfigDigitalFilter(&hi2c4, 0) != HAL_OK) | |
| { | |
| Error_Handler(); | |
| } | |
| } | |
| void HAL_I2C_MspInit(I2C_HandleTypeDef* i2cHandle) | |
| { | |
| if(i2cHandle->Instance==I2C4) | |
| { | |
| /* USER CODE BEGIN I2C4_MspInit 0 */ | |
| /* USER CODE END I2C4_MspInit 0 */ | |
| /* I2C4 clock enable */ | |
| __HAL_RCC_I2C4_CLK_ENABLE(); | |
| /* I2C4 interrupt Init */ | |
| HAL_NVIC_SetPriority(I2C4_EV_IRQn, 0, 0); | |
| HAL_NVIC_EnableIRQ(I2C4_EV_IRQn); | |
| HAL_NVIC_SetPriority(I2C4_ER_IRQn, 0, 0); | |
| HAL_NVIC_EnableIRQ(I2C4_ER_IRQn); | |
| /* USER CODE BEGIN I2C4_MspInit 1 */ | |
| /* USER CODE END I2C4_MspInit 1 */ | |
| } | |
| } | |
| void HAL_I2C_MspDeInit(I2C_HandleTypeDef* i2cHandle) | |
| { | |
| if(i2cHandle->Instance==I2C4) | |
| { | |
| /* USER CODE BEGIN I2C4_MspDeInit 0 */ | |
| /* USER CODE END I2C4_MspDeInit 0 */ | |
| /* Peripheral clock disable */ | |
| __HAL_RCC_I2C4_CLK_DISABLE(); | |
| /* I2C4 interrupt Deinit */ | |
| HAL_NVIC_DisableIRQ(I2C4_EV_IRQn); | |
| HAL_NVIC_DisableIRQ(I2C4_ER_IRQn); | |
| /* USER CODE BEGIN I2C4_MspDeInit 1 */ | |
| /* USER CODE END I2C4_MspDeInit 1 */ | |
| } | |
| } | |
| /* USER CODE BEGIN 1 */ | |
| /* USER CODE END 1 */ | |
| /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |