TMC32_QJB/HAL/inc/TMC_SYSTICK.h
2026-04-30 16:23:12 +08:00

115 lines
2.8 KiB
C

/**
******************************************************************************
* @file TMC_SYSTICK.h
* @author TMC Terminal Team
* @version V1.0.0
* @date 06/21/2018
* @brief Header file of SYSTICK TMC module.
*
******************************************************************************
* @attention
*
* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE
* TIME. AS A RESULT, TMC SHALL NOT BE HELD LIABLE FOR ANY
* DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING
* FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE
* CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*
* <h2><center>&copy; COPYRIGHT 2016 TMC</center></h2>
******************************************************************************
*/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef _TMC_SYSTICK_H
#define _TMC_SYSTICK_H
#ifdef __cplusplus
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
#include <stdint.h>
#include "core_sc300.h"
/** @addtogroup THM36x2_TMC_Driver
* @{
*/
/** @addtogroup TMC_SYSTICK
* @{
*/
/* Exported constants --------------------------------------------------------*/
/** @defgroup TMC_SYSTICK_Exported_Constants TMC SYSTICK Exported Constants
* @{
*/
/** @defgroup HAL_TICK_FREQ Tick Frequency
* @{
*/
typedef enum
{
TMC_TICK_FREQ_10HZ = 100U,
TMC_TICK_FREQ_100HZ = 10U,
TMC_TICK_FREQ_1KHZ = 1U,
TMC_TICK_FREQ_DEFAULT = TMC_TICK_FREQ_1KHZ
} TMC_TickFreqTypeDef;
/**
* @}
*/
/**
* @}
*/
/* Exported functions --------------------------------------------------------*/
/** @addtogroup TMC_SYSTICK_Exported_Functions
* @{
*/
TMC_StatusTypeDef TMC_InitTick(uint32_t TickPriority);
uint32_t TMC_SYSTICK_Config(uint32_t TicksNumb);
void TMC_IncTick(void);
void TMC_Delay(uint32_t Delay);
uint32_t TMC_GetTick(void);
uint32_t TMC_GetTickPrio(void);
TMC_StatusTypeDef TMC_SetTickFreq(TMC_TickFreqTypeDef Freq);
TMC_TickFreqTypeDef TMC_GetTickFreq(void);
void TMC_SuspendTick(void);
void TMC_ResumeTick(void);
void TMC_SYSTICK_IRQHandler(void);
void TMC_SYSTICK_Callback(void);
/**
* @}
*/
/* Private macros ------------------------------------------------------------*/
/** @defgroup TMC_SYSTICK_Private_Macros TMC SYSTICK Private Macros
* @{
*/
//#define IS_TICKFREQ(FREQ) (((FREQ) == HAL_TICK_FREQ_10HZ) || \
// ((FREQ) == HAL_TICK_FREQ_100HZ) || \
// ((FREQ) == HAL_TICK_FREQ_1KHZ))
/**
* @}
*/
/**
* @}
*/
/**
* @}
*/
#ifdef __cplusplus
}
#endif
#endif
/************************ (C) COPYRIGHT TMC *****END OF FILE****/