81 lines
2.6 KiB
C
81 lines
2.6 KiB
C
/**
|
||
******************************************************************************
|
||
* File Name : gpio.c
|
||
* Description : This file provides code for the configuration
|
||
* of all used GPIO pins.
|
||
******************************************************************************
|
||
* @attention
|
||
*
|
||
* <h2><center>© Copyright (c) 2020 STMicroelectronics.
|
||
* All rights reserved.</center></h2>
|
||
*
|
||
* This software component is licensed by ST under BSD 3-Clause license,
|
||
* the "License"; You may not use this file except in compliance with the
|
||
* License. You may obtain a copy of the License at:
|
||
* opensource.org/licenses/BSD-3-Clause
|
||
*
|
||
******************************************************************************
|
||
*/
|
||
|
||
/* Includes ------------------------------------------------------------------*/
|
||
#include "gpio.h"
|
||
/* USER CODE BEGIN 0 */
|
||
|
||
/* USER CODE END 0 */
|
||
|
||
/*----------------------------------------------------------------------------*/
|
||
/* Configure GPIO */
|
||
/*----------------------------------------------------------------------------*/
|
||
/* USER CODE BEGIN 1 */
|
||
|
||
/* USER CODE END 1 */
|
||
|
||
/** Configure pins as
|
||
* Analog
|
||
* Input
|
||
* Output
|
||
* EVENT_OUT
|
||
* EXTI
|
||
*/
|
||
void MX_GPIO_Init(void)
|
||
{
|
||
|
||
LL_EXTI_InitTypeDef EXTI_InitStruct = {0};
|
||
|
||
/* GPIO Ports Clock Enable */
|
||
LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_GPIOA);
|
||
LL_APB2_GRP1_EnableClock(LL_APB2_GRP1_PERIPH_GPIOB);
|
||
|
||
/**/
|
||
LL_GPIO_AF_SetEXTISource(LL_GPIO_AF_EXTI_PORTA, LL_GPIO_AF_EXTI_LINE4);
|
||
|
||
/**/
|
||
EXTI_InitStruct.Line_0_31 = LL_EXTI_LINE_4;
|
||
EXTI_InitStruct.LineCommand = ENABLE;
|
||
EXTI_InitStruct.Mode = LL_EXTI_MODE_IT;
|
||
EXTI_InitStruct.Trigger = LL_EXTI_TRIGGER_RISING_FALLING;
|
||
LL_EXTI_Init(&EXTI_InitStruct);
|
||
|
||
/**/
|
||
// LL_GPIO_SetPinPull(Reed_Switch_GPIO_Port, Reed_Switch_Pin, LL_GPIO_PULL_UP); //ÉèÖÃpinÉÏÀ
|
||
LL_GPIO_SetPinPull(Reed_Switch_GPIO_Port, Reed_Switch_Pin, LL_GPIO_PULL_UP);
|
||
|
||
// LL_GPIO_IsInputPinSet(Reed_Switch_GPIO_Port, Reed_Switch_Pin); //LL_GPIO_IsInputPinSet--¶ÁÈ¡pin״̬
|
||
|
||
/**/
|
||
LL_GPIO_SetPinMode(Reed_Switch_GPIO_Port, Reed_Switch_Pin, LL_GPIO_MODE_INPUT);
|
||
|
||
// LL_GPIO_SetPinMode(Reed_Switch_GPIO_Port, Reed_Switch_Pin, LL_GPIO_MODE_OUTPUT);
|
||
|
||
/* EXTI interrupt init*/
|
||
NVIC_SetPriority(EXTI4_IRQn, NVIC_EncodePriority(NVIC_GetPriorityGrouping(),0, 0));
|
||
NVIC_EnableIRQ(EXTI4_IRQn);
|
||
|
||
}
|
||
|
||
/* USER CODE BEGIN 2 */
|
||
|
||
/* USER CODE END 2 */
|
||
|
||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
|