|
@@ -90,7 +90,6 @@ static volatile uint8_t dispWDT = 0;
|
|
|
/* USER CODE END PV */
|
|
|
|
|
|
/* Private function prototypes -----------------------------------------------*/
|
|
|
-static void MX_I2C1_Init(void);
|
|
|
static void MX_SPI1_Init(void);
|
|
|
/* USER CODE BEGIN PFP */
|
|
|
static void showDigits(uint8_t * dig);
|
|
@@ -116,7 +115,6 @@ int main(void)
|
|
|
Board_Init();
|
|
|
|
|
|
/* Initialize all configured peripherals */
|
|
|
- MX_I2C1_Init();
|
|
|
MX_SPI1_Init();
|
|
|
/* USER CODE BEGIN 2 */
|
|
|
/* Initialize Scheduler */
|
|
@@ -243,109 +241,6 @@ static void sensorGetData(void) {
|
|
|
Pressure.s16.u8L = (uint8_t)(tmp % 100);
|
|
|
}
|
|
|
|
|
|
-/**
|
|
|
- * @brief I2C1 Initialization Function
|
|
|
- * @param None
|
|
|
- * @retval None
|
|
|
- */
|
|
|
-static void MX_I2C1_Init(void)
|
|
|
-{
|
|
|
-
|
|
|
- /* USER CODE BEGIN I2C1_Init 0 */
|
|
|
-
|
|
|
- /* USER CODE END I2C1_Init 0 */
|
|
|
-
|
|
|
- LL_I2C_InitTypeDef I2C_InitStruct = {0};
|
|
|
-
|
|
|
- LL_GPIO_InitTypeDef GPIO_InitStruct = {0};
|
|
|
-
|
|
|
- LL_IOP_GRP1_EnableClock(LL_IOP_GRP1_PERIPH_GPIOB);
|
|
|
- /**I2C1 GPIO Configuration
|
|
|
- PB8 ------> I2C1_SCL
|
|
|
- PB9 ------> I2C1_SDA
|
|
|
- */
|
|
|
- GPIO_InitStruct.Pin = LL_GPIO_PIN_8;
|
|
|
- GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE;
|
|
|
- GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_HIGH;
|
|
|
- GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_OPENDRAIN;
|
|
|
- GPIO_InitStruct.Pull = LL_GPIO_PULL_UP;
|
|
|
- GPIO_InitStruct.Alternate = LL_GPIO_AF_6;
|
|
|
- LL_GPIO_Init(GPIOB, &GPIO_InitStruct);
|
|
|
-
|
|
|
- GPIO_InitStruct.Pin = LL_GPIO_PIN_9;
|
|
|
- GPIO_InitStruct.Mode = LL_GPIO_MODE_ALTERNATE;
|
|
|
- GPIO_InitStruct.Speed = LL_GPIO_SPEED_FREQ_HIGH;
|
|
|
- GPIO_InitStruct.OutputType = LL_GPIO_OUTPUT_OPENDRAIN;
|
|
|
- GPIO_InitStruct.Pull = LL_GPIO_PULL_UP;
|
|
|
- GPIO_InitStruct.Alternate = LL_GPIO_AF_6;
|
|
|
- LL_GPIO_Init(GPIOB, &GPIO_InitStruct);
|
|
|
-
|
|
|
- /* Peripheral clock enable */
|
|
|
- LL_APB1_GRP1_EnableClock(LL_APB1_GRP1_PERIPH_I2C1);
|
|
|
-
|
|
|
- /* I2C1 DMA Init */
|
|
|
-
|
|
|
- /* I2C1_RX Init */
|
|
|
- LL_DMA_SetPeriphRequest(DMA1, LL_DMA_CHANNEL_2, LL_DMAMUX_REQ_I2C1_RX);
|
|
|
-
|
|
|
- LL_DMA_SetDataTransferDirection(DMA1, LL_DMA_CHANNEL_2, LL_DMA_DIRECTION_PERIPH_TO_MEMORY);
|
|
|
-
|
|
|
- LL_DMA_SetChannelPriorityLevel(DMA1, LL_DMA_CHANNEL_2, LL_DMA_PRIORITY_MEDIUM);
|
|
|
-
|
|
|
- LL_DMA_SetPeriphIncMode(DMA1, LL_DMA_CHANNEL_2, LL_DMA_PERIPH_NOINCREMENT);
|
|
|
-
|
|
|
- LL_DMA_SetMemoryIncMode(DMA1, LL_DMA_CHANNEL_2, LL_DMA_MEMORY_INCREMENT);
|
|
|
-
|
|
|
- LL_DMA_SetPeriphSize(DMA1, LL_DMA_CHANNEL_2, LL_DMA_PDATAALIGN_BYTE);
|
|
|
-
|
|
|
- LL_DMA_SetMemorySize(DMA1, LL_DMA_CHANNEL_2, LL_DMA_MDATAALIGN_BYTE);
|
|
|
-
|
|
|
- /* I2C1_TX Init */
|
|
|
- LL_DMA_SetPeriphRequest(DMA1, LL_DMA_CHANNEL_3, LL_DMAMUX_REQ_I2C1_TX);
|
|
|
-
|
|
|
- LL_DMA_SetDataTransferDirection(DMA1, LL_DMA_CHANNEL_3, LL_DMA_DIRECTION_MEMORY_TO_PERIPH);
|
|
|
-
|
|
|
- LL_DMA_SetChannelPriorityLevel(DMA1, LL_DMA_CHANNEL_3, LL_DMA_PRIORITY_MEDIUM);
|
|
|
-
|
|
|
- LL_DMA_SetPeriphIncMode(DMA1, LL_DMA_CHANNEL_3, LL_DMA_PERIPH_NOINCREMENT);
|
|
|
-
|
|
|
- LL_DMA_SetMemoryIncMode(DMA1, LL_DMA_CHANNEL_3, LL_DMA_MEMORY_INCREMENT);
|
|
|
-
|
|
|
- LL_DMA_SetPeriphSize(DMA1, LL_DMA_CHANNEL_3, LL_DMA_PDATAALIGN_BYTE);
|
|
|
-
|
|
|
- LL_DMA_SetMemorySize(DMA1, LL_DMA_CHANNEL_3, LL_DMA_MDATAALIGN_BYTE);
|
|
|
-
|
|
|
- /* I2C1 interrupt Init */
|
|
|
-
|
|
|
- /* USER CODE BEGIN I2C1_Init 1 */
|
|
|
- /* Enable DMA transfer complete/error interrupts */
|
|
|
- LL_DMA_EnableIT_TC(DMA1, LL_DMA_CHANNEL_2);
|
|
|
- LL_DMA_EnableIT_TE(DMA1, LL_DMA_CHANNEL_2);
|
|
|
- LL_DMA_EnableIT_TC(DMA1, LL_DMA_CHANNEL_3);
|
|
|
- LL_DMA_EnableIT_TE(DMA1, LL_DMA_CHANNEL_3);
|
|
|
-
|
|
|
- /* USER CODE END I2C1_Init 1 */
|
|
|
- /** I2C Initialization
|
|
|
- */
|
|
|
- I2C_InitStruct.PeripheralMode = LL_I2C_MODE_I2C;
|
|
|
- I2C_InitStruct.Timing = 0x0010061A;
|
|
|
- I2C_InitStruct.AnalogFilter = LL_I2C_ANALOGFILTER_ENABLE;
|
|
|
- I2C_InitStruct.DigitalFilter = 0;
|
|
|
- I2C_InitStruct.OwnAddress1 = 0;
|
|
|
- I2C_InitStruct.TypeAcknowledge = LL_I2C_ACK;
|
|
|
- I2C_InitStruct.OwnAddrSize = LL_I2C_OWNADDRESS1_7BIT;
|
|
|
- LL_I2C_EnableAutoEndMode(I2C1);
|
|
|
- LL_I2C_SetOwnAddress2(I2C1, 0, LL_I2C_OWNADDRESS2_NOMASK);
|
|
|
- LL_I2C_DisableOwnAddress2(I2C1);
|
|
|
- LL_I2C_DisableGeneralCall(I2C1);
|
|
|
- LL_I2C_DisableClockStretching(I2C1);
|
|
|
- LL_I2C_Init(I2C1, &I2C_InitStruct);
|
|
|
- /* USER CODE BEGIN I2C1_Init 2 */
|
|
|
-
|
|
|
- /* USER CODE END I2C1_Init 2 */
|
|
|
-
|
|
|
-}
|
|
|
-
|
|
|
/**
|
|
|
* @brief SPI1 Initialization Function
|
|
|
* @param None
|