/* USER CODE BEGIN Header */
/**
  ******************************************************************************
  * @file           : delay.h
  * @brief          : Delay driver module header file
  ******************************************************************************
  */
/* USER CODE END Header */

#ifndef DELAY_H
#define DELAY_H

#include <stdint.h>
#include "hal_delay.h"

/**
 * @brief Initialize delay module
 */
void delay_init(void);

/**
 * @brief Delay in milliseconds
 * @param ms: Delay time in milliseconds
 */
void delay_ms(uint32_t ms);

/**
 * @brief Delay in microseconds
 * @param us: Delay time in microseconds
 */
void delay_us(uint32_t us);

/**
 * @brief Get current system tick count in milliseconds
 * @return Current tick count in milliseconds
 */
uint32_t delay_get_tick(void);

#endif /* DELAY_H */
