---vl6180dr

This commit is contained in:
Mysteo91
2023-07-31 11:48:34 +03:00
parent 0b2cdbc8ba
commit cef4988b6d
13 changed files with 82 additions and 878 deletions

View File

@@ -60,10 +60,13 @@ void Error_Handler(void);
/* Private defines -----------------------------------------------------------*/
#define GPIO_RESET_Pin GPIO_PIN_1
#define GPIO_RESET_GPIO_Port GPIOA
#define GPIO_RESET_EXTI_IRQn EXTI0_1_IRQn
#define LIGHTING_EN_Pin GPIO_PIN_4
#define LIGHTING_EN_GPIO_Port GPIOA
#define READER_EN_Pin GPIO_PIN_5
#define READER_EN_GPIO_Port GPIOA
#define CS_PROXIMITY_Pin GPIO_PIN_8
#define CS_PROXIMITY_GPIO_Port GPIOA
#define CONTROL_PIN_Pin GPIO_PIN_4
#define CONTROL_PIN_GPIO_Port GPIOB

View File

@@ -52,6 +52,7 @@ void HardFault_Handler(void);
void SVC_Handler(void);
void PendSV_Handler(void);
void SysTick_Handler(void);
void EXTI0_1_IRQHandler(void);
void USART1_IRQHandler(void);
void USART2_IRQHandler(void);
/* USER CODE BEGIN EFP */

View File

@@ -50,16 +50,22 @@ void MX_GPIO_Init(void)
__HAL_RCC_GPIOB_CLK_ENABLE();
/*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(GPIOA, LIGHTING_EN_Pin|READER_EN_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(GPIOA, LIGHTING_EN_Pin|READER_EN_Pin|CS_PROXIMITY_Pin, GPIO_PIN_RESET);
/*Configure GPIO pins : PA0 PAPin */
GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_RESET_Pin;
/*Configure GPIO pin : PA0 */
GPIO_InitStruct.Pin = GPIO_PIN_0;
GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
/*Configure GPIO pins : PAPin PAPin */
GPIO_InitStruct.Pin = LIGHTING_EN_Pin|READER_EN_Pin;
/*Configure GPIO pin : PtPin */
GPIO_InitStruct.Pin = GPIO_RESET_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING_FALLING;
GPIO_InitStruct.Pull = GPIO_PULLUP;
HAL_GPIO_Init(GPIO_RESET_GPIO_Port, &GPIO_InitStruct);
/*Configure GPIO pins : PAPin PAPin PAPin */
GPIO_InitStruct.Pin = LIGHTING_EN_Pin|READER_EN_Pin|CS_PROXIMITY_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
@@ -68,9 +74,13 @@ void MX_GPIO_Init(void)
/*Configure GPIO pin : PtPin */
GPIO_InitStruct.Pin = CONTROL_PIN_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_PULLDOWN;
GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(CONTROL_PIN_GPIO_Port, &GPIO_InitStruct);
/* EXTI interrupt init*/
HAL_NVIC_SetPriority(EXTI0_1_IRQn, 0, 0);
HAL_NVIC_EnableIRQ(EXTI0_1_IRQn);
}
/* USER CODE BEGIN 2 */

View File

@@ -112,7 +112,6 @@ int main(void) {
MX_I2C2_Init();
MX_TIM3_Init();
/* USER CODE BEGIN 2 */
HAL_GPIO_TogglePin(LIGHTING_EN_GPIO_Port, LIGHTING_EN_Pin);
/* Initialize the user program application. */
AppInit();
/* USER CODE END 2 */

View File

@@ -139,6 +139,21 @@ void SysTick_Handler(void)
/* please refer to the startup file (startup_stm32g0xx.s). */
/******************************************************************************/
/**
* @brief This function handles EXTI line 0 and line 1 interrupts.
*/
void EXTI0_1_IRQHandler(void)
{
/* USER CODE BEGIN EXTI0_1_IRQn 0 */
/* USER CODE END EXTI0_1_IRQn 0 */
HAL_GPIO_EXTI_IRQHandler(GPIO_PIN_0);
HAL_GPIO_EXTI_IRQHandler(GPIO_RESET_Pin);
/* USER CODE BEGIN EXTI0_1_IRQn 1 */
/* USER CODE END EXTI0_1_IRQn 1 */
}
/**
* @brief This function handles USART1 global interrupt / USART1 wake-up interrupt through EXTI line 25.
*/

View File

@@ -68,7 +68,7 @@ void MX_TIM3_Init(void)
}
sConfigOC.OCMode = TIM_OCMODE_PWM1;
sConfigOC.Pulse = 10616;
sConfigOC.OCPolarity = TIM_OCPOLARITY_LOW;
sConfigOC.OCPolarity = TIM_OCPOLARITY_HIGH;
sConfigOC.OCFastMode = TIM_OCFAST_DISABLE;
if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_2) != HAL_OK)
{