steering-wheel-stm/Core/Src/leds.c

34 lines
1.0 KiB
C
Raw Normal View History

2022-05-29 00:28:23 +02:00
#include "leds.h"
2022-05-29 00:47:46 +02:00
2022-05-29 00:28:23 +02:00
#include "main.h"
2022-05-29 00:47:46 +02:00
2022-05-29 00:28:23 +02:00
#include "stm32g4xx_hal.h"
#include "stm32g4xx_hal_gpio.h"
2022-08-17 08:45:48 +02:00
#include "stm32g4xx_hal_tim.h"
void leds_init(TIM_HandleTypeDef* timer) {
if (HAL_TIM_PWM_Start(timer, TOP_PWM_TIM_CHANNEL) != HAL_OK) {
Error_Handler();
}
2022-05-29 00:28:23 +02:00
HAL_GPIO_WritePin(LED_NOE_GPIO_Port, LED_NOE_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(LED_NCLR_GPIO_Port, LED_NCLR_Pin, GPIO_PIN_SET);
HAL_GPIO_WritePin(LED_OCLK_GPIO_Port, LED_OCLK_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(LED_ICLK_GPIO_Port, LED_ICLK_Pin, GPIO_PIN_RESET);
HAL_Delay(10);
for (int i = 0; i < 12; i++) {
2022-08-17 08:45:48 +02:00
GPIO_PinState state = GPIO_PIN_RESET;
2022-05-29 00:28:23 +02:00
HAL_GPIO_WritePin(LED_SER_GPIO_Port, LED_SER_Pin, state);
HAL_Delay(5);
HAL_GPIO_WritePin(LED_ICLK_GPIO_Port, LED_ICLK_Pin, GPIO_PIN_SET);
HAL_Delay(10);
HAL_GPIO_WritePin(LED_ICLK_GPIO_Port, LED_ICLK_Pin, GPIO_PIN_RESET);
HAL_Delay(10);
}
HAL_GPIO_WritePin(LED_OCLK_GPIO_Port, LED_OCLK_Pin, GPIO_PIN_SET);
HAL_Delay(10);
HAL_GPIO_WritePin(LED_OCLK_GPIO_Port, LED_OCLK_Pin, GPIO_PIN_RESET);
2022-05-29 00:47:46 +02:00
}