| | |
| | | DMA_HandleTypeDef hdma_usart1_tx; |
| | | |
| | | SPI_HandleTypeDef hspi1; |
| | | SPI_HandleTypeDef hspi2; |
| | | |
| | | TIM_HandleTypeDef htim6; |
| | | |
| | |
| | | static void MX_LPUART1_UART_Init(void); |
| | | static void MX_USART5_UART_Init(void); |
| | | static void MX_TIM6_Init(void); |
| | | static void MX_SPI2_Init(void); |
| | | /* USER CODE BEGIN PFP */ |
| | | |
| | | /* USER CODE END PFP */ |
| | |
| | | { |
| | | |
| | | // SystemClock_Config(); |
| | | // irq_num++; |
| | | irq_num++; |
| | | lora_irq_flag = 1; |
| | | // RadioIrqProcess(); |
| | | } |
| | |
| | | HAL_GPIO_WritePin(GPIOA, GPIO_PIN_12, GPIO_PIN_RESET); //GuanGPS and lora 电源 |
| | | HAL_GPIO_WritePin(GPIOA, GPIO_PIN_15, GPIO_PIN_RESET); //guan uwb 电源 |
| | | HAL_SPI_DeInit(&hspi1); |
| | | HAL_SPI_DeInit(&hspi2); |
| | | HAL_GPIO_WritePin( RADIO_NSS_GPIO_Port, RADIO_NSS_Pin,GPIO_PIN_RESET);//lora cs |
| | | HAL_GPIO_WritePin( GPIOA, GPIO_PIN_4,GPIO_PIN_RESET);//uwb cs |
| | | HAL_GPIO_WritePin( GPIOC, GPIO_PIN_3,GPIO_PIN_RESET);//LORA REST |
| | |
| | | MX_GPIO_Init(); |
| | | MX_DMA_Init(); |
| | | MX_ADC_Init(); |
| | | // MX_IWDG_Init(); |
| | | // MX_IWDG_Init(); |
| | | MX_LPTIM1_Init(); |
| | | MX_USART1_UART_Init(); |
| | | MX_SPI1_Init(); |
| | | MX_LPUART1_UART_Init(); |
| | | MX_USART5_UART_Init(); |
| | | MX_TIM6_Init(); |
| | | MX_SPI2_Init(); |
| | | /* USER CODE BEGIN 2 */ |
| | | GPIO_InitTypeDef GPIO_InitStruct = {0}; |
| | | HAL_GPIO_WritePin(GPIOA, GPIO_PIN_12, GPIO_PIN_SET); //开GPS电源 |
| | | delay_ms(10); |
| | | delay_ms(100); |
| | | HAL_GPIO_WritePin(GPIOA, GPIO_PIN_15, GPIO_PIN_SET); //开uwb电源 |
| | | Program_Init(); |
| | | MX_IWDG_Init(); //看门狗务必放到开GPS电源开uwb电源后面,否则GPS工作不正常。 |
| | | // MX_IWDG_Init(); //看门狗务必放到开GPS电源开uwb电源后面,否则GPS工作不正常。 |
| | | HAL_GPIO_WritePin(GPIOC, GPIO_PIN_1, GPIO_PIN_SET); |
| | | GPIO_InitStruct.Pin = GPIO_PIN_1; |
| | | GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; |
| | | GPIO_InitStruct.Pull = GPIO_NOPULL; |
| | | GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; |
| | | HAL_GPIO_Init(GPIOC, &GPIO_InitStruct); |
| | | #ifdef _USE_BAR |
| | | //BarInit(); |
| | | #endif |
| | |
| | | } |
| | | |
| | | /** |
| | | * @brief SPI2 Initialization Function |
| | | * @param None |
| | | * @retval None |
| | | */ |
| | | static void MX_SPI2_Init(void) |
| | | { |
| | | |
| | | /* USER CODE BEGIN SPI2_Init 0 */ |
| | | |
| | | /* USER CODE END SPI2_Init 0 */ |
| | | |
| | | /* USER CODE BEGIN SPI2_Init 1 */ |
| | | |
| | | /* USER CODE END SPI2_Init 1 */ |
| | | /* SPI2 parameter configuration*/ |
| | | hspi2.Instance = SPI2; |
| | | hspi2.Init.Mode = SPI_MODE_MASTER; |
| | | hspi2.Init.Direction = SPI_DIRECTION_2LINES; |
| | | hspi2.Init.DataSize = SPI_DATASIZE_8BIT; |
| | | hspi2.Init.CLKPolarity = SPI_POLARITY_LOW; |
| | | hspi2.Init.CLKPhase = SPI_PHASE_1EDGE; |
| | | hspi2.Init.NSS = SPI_NSS_SOFT; |
| | | hspi2.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_2; |
| | | hspi2.Init.FirstBit = SPI_FIRSTBIT_MSB; |
| | | hspi2.Init.TIMode = SPI_TIMODE_DISABLE; |
| | | hspi2.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE; |
| | | hspi2.Init.CRCPolynomial = 7; |
| | | if (HAL_SPI_Init(&hspi2) != HAL_OK) |
| | | { |
| | | Error_Handler(); |
| | | } |
| | | /* USER CODE BEGIN SPI2_Init 2 */ |
| | | __HAL_SPI_ENABLE(&hspi2); |
| | | /* USER CODE END SPI2_Init 2 */ |
| | | |
| | | } |
| | | |
| | | /** |
| | | * @brief TIM6 Initialization Function |
| | | * @param None |
| | | * @retval None |
| | |
| | | HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13|GPIO_PIN_7|GPIO_PIN_8, GPIO_PIN_RESET); |
| | | |
| | | /*Configure GPIO pin Output Level */ |
| | | HAL_GPIO_WritePin(GPIOC, RADIO_NSS_Pin|RADIO_nRESET_Pin|GPIO_PIN_4, GPIO_PIN_SET); |
| | | |
| | | /*Configure GPIO pin Output Level */ |
| | | HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4|GPIO_PIN_8, GPIO_PIN_SET); |
| | | |
| | | /*Configure GPIO pin Output Level */ |
| | | HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0|GPIO_PIN_2|GPIO_PIN_4|GPIO_PIN_5 |
| | | |GPIO_PIN_7, GPIO_PIN_RESET); |
| | | HAL_GPIO_WritePin(GPIOC, GPIO_PIN_4, GPIO_PIN_SET); |
| | | |
| | | /*Configure GPIO pin Output Level */ |
| | | HAL_GPIO_WritePin(GPIOB, GPIO_PIN_10|SCL_Pin|SDA_Pin|GPIO_PIN_6, GPIO_PIN_SET); |
| | | HAL_GPIO_WritePin(GPIOB, RADIO_NSS_Pin|RADIO_nRESET_Pin|SCL_Pin|SDA_Pin |
| | | |GPIO_PIN_6, GPIO_PIN_SET); |
| | | |
| | | /*Configure GPIO pin Output Level */ |
| | | HAL_GPIO_WritePin(GPIOB, GPIO_PIN_2|GPIO_PIN_4|GPIO_PIN_5|GPIO_PIN_7, GPIO_PIN_RESET); |
| | | |
| | | /*Configure GPIO pin Output Level */ |
| | | HAL_GPIO_WritePin(GPIOA, GPIO_PIN_12|GPIO_PIN_15, GPIO_PIN_RESET); |
| | | |
| | | /*Configure GPIO pins : PC13 RADIO_NSS_Pin RADIO_nRESET_Pin PC4 |
| | | PC7 PC8 */ |
| | | GPIO_InitStruct.Pin = GPIO_PIN_13|RADIO_NSS_Pin|RADIO_nRESET_Pin|GPIO_PIN_4 |
| | | |GPIO_PIN_7|GPIO_PIN_8; |
| | | /*Configure GPIO pins : PC13 PC4 PC7 PC8 */ |
| | | GPIO_InitStruct.Pin = GPIO_PIN_13|GPIO_PIN_4|GPIO_PIN_7|GPIO_PIN_8; |
| | | GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; |
| | | GPIO_InitStruct.Pull = GPIO_NOPULL; |
| | | GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; |
| | |
| | | GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; |
| | | HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); |
| | | |
| | | /*Configure GPIO pins : PB0 PB2 PB10 PB4 |
| | | /*Configure GPIO pins : RADIO_NSS_Pin PB2 RADIO_nRESET_Pin PB4 |
| | | PB5 PB6 PB7 */ |
| | | GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_2|GPIO_PIN_10|GPIO_PIN_4 |
| | | GPIO_InitStruct.Pin = RADIO_NSS_Pin|GPIO_PIN_2|RADIO_nRESET_Pin|GPIO_PIN_4 |
| | | |GPIO_PIN_5|GPIO_PIN_6|GPIO_PIN_7; |
| | | GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; |
| | | GPIO_InitStruct.Pull = GPIO_NOPULL; |